diff -r 56848e2bb0c5 -r 28e98a8b173d tests/test-casecollision-i18n.t --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-casecollision-i18n.t Thu Jul 28 14:36:07 2011 +0900 @@ -0,0 +1,43 @@ +run only on case-insensitive filesystems, because collision check at +"hg update" is done only on case-insensitive filesystems + + $ "$TESTDIR/hghave" icasefs || exit 80 + +setup repository, and target files + + $ HGENCODING=cp932 + $ export HGENCODING + $ hg init t + $ cd t + $ python << EOF + > names = ["\x83\x41", # cp932(0x83, 0x41='A'), UNICODE(0x30a2) + > "\x83\x5A", # cp932(0x83, 0x5A='Z'), UNICODE(0x30bb) + > "\x83\x61", # cp932(0x83, 0x61='a'), UNICODE(0x30c2) + > "\x83\x7A", # cp932(0x83, 0x7A='z'), UNICODE(0x30db) + > ] + > for num, name in zip(range(len(names)), names): + > # file for getting target filename of "hg add" + > f = file(str(num), 'w'); f.write(name); f.close() + > # target file of "hg add" + > f = file(name, 'w'); f.write(name); f.close() + > EOF + +test filename collison check at "hg add" + + $ hg add --config ui.portablefilenames=abort `cat 0` + $ hg add --config ui.portablefilenames=abort `cat 1` + $ hg add --config ui.portablefilenames=abort `cat 2` + $ hg add --config ui.portablefilenames=abort `cat 3` + $ hg status -a + A \x83A (esc) + A \x83Z (esc) + A \x83a (esc) + A \x83z (esc) + +test filename collision check at "hg update" + + $ hg commit -m 'revision 0' + $ hg update null + 0 files updated, 0 files merged, 4 files removed, 0 files unresolved + $ hg update tip + 4 files updated, 0 files merged, 0 files removed, 0 files unresolved