diff --git a/tests/test-addremove-similar.out b/tests/test-addremove-similar.out deleted file mode 100644 --- a/tests/test-addremove-similar.out +++ /dev/null @@ -1,32 +0,0 @@ -adding empty-file -adding large-file -adding another-file -removing empty-file -removing large-file -recording removal of large-file as rename to another-file (99% similar) -% comparing two empty files caused ZeroDivisionError in the past -2 files updated, 0 files merged, 1 files removed, 0 files unresolved -adding another-empty-file -removing empty-file -adding large-file -adding tiny-file -removing large-file -adding small-file -removing tiny-file -recording removal of tiny-file as rename to small-file (82% similar) -% should all fail -abort: similarity must be a number -abort: similarity must be between 0 and 100 -abort: similarity must be between 0 and 100 -% issue 1527 -removing d/a -adding d/b -recording removal of d/a as rename to d/b (100% similar) -r 0 0 1970-01-01 00:00:00 d/a -a 0 -1 unset d/b -copy: d/a -> d/b -% no copies found here (since the target isn't in d -removing d/b -% copies here -adding c -recording removal of d/a as rename to c (100% similar) diff --git a/tests/test-addremove-similar b/tests/test-addremove-similar.t old mode 100755 new mode 100644 rename from tests/test-addremove-similar rename to tests/test-addremove-similar.t --- a/tests/test-addremove-similar +++ b/tests/test-addremove-similar.t @@ -1,67 +1,99 @@ -#!/bin/sh + $ hg init rep; cd rep + + $ touch empty-file + $ python -c 'for x in range(10000): print x' > large-file -hg init rep; cd rep + $ hg addremove + adding empty-file + adding large-file -touch empty-file -python -c 'for x in range(10000): print x' > large-file + $ hg commit -m A -hg addremove - -hg commit -m A + $ rm large-file empty-file + $ python -c 'for x in range(10,10000): print x' > another-file -rm large-file empty-file -python -c 'for x in range(10,10000): print x' > another-file + $ hg addremove -s50 + adding another-file + removing empty-file + removing large-file + recording removal of large-file as rename to another-file (99% similar) -hg addremove -s50 + $ hg commit -m B + +comparing two empty files caused ZeroDivisionError in the past -hg commit -m B + $ hg update -C 0 + 2 files updated, 0 files merged, 1 files removed, 0 files unresolved + $ rm empty-file + $ touch another-empty-file + $ hg addremove -s50 + adding another-empty-file + removing empty-file -echo % comparing two empty files caused ZeroDivisionError in the past -hg update -C 0 -rm empty-file -touch another-empty-file -hg addremove -s50 + $ cd .. + + $ hg init rep2; cd rep2 -cd .. - -hg init rep2; cd rep2 + $ python -c 'for x in range(10000): print x' > large-file + $ python -c 'for x in range(50): print x' > tiny-file -python -c 'for x in range(10000): print x' > large-file -python -c 'for x in range(50): print x' > tiny-file + $ hg addremove + adding large-file + adding tiny-file -hg addremove + $ hg commit -m A + + $ python -c 'for x in range(70): print x' > small-file + $ rm tiny-file + $ rm large-file -hg commit -m A + $ hg addremove -s50 + removing large-file + adding small-file + removing tiny-file + recording removal of tiny-file as rename to small-file (82% similar) -python -c 'for x in range(70): print x' > small-file -rm tiny-file -rm large-file + $ hg commit -m B -hg addremove -s50 +should all fail -hg commit -m B + $ hg addremove -s foo + abort: similarity must be a number + $ hg addremove -s -1 + abort: similarity must be between 0 and 100 + $ hg addremove -s 1e6 + abort: similarity must be between 0 and 100 -echo % should all fail -hg addremove -s foo -hg addremove -s -1 -hg addremove -s 1e6 + $ cd .. -cd .. +issue 1527 -echo '% issue 1527' -hg init rep3; cd rep3 -mkdir d -echo a > d/a -hg add d/a -hg commit -m 1 + $ hg init rep3; cd rep3 + $ mkdir d + $ echo a > d/a + $ hg add d/a + $ hg commit -m 1 -mv d/a d/b -hg addremove -s80 -hg debugstate -mv d/b c -echo "% no copies found here (since the target isn't in d" -hg addremove -s80 d -echo "% copies here" -hg addremove -s80 + $ mv d/a d/b + $ hg addremove -s80 + removing d/a + adding d/b + recording removal of d/a as rename to d/b (100% similar) + $ hg debugstate + r 0 0 1970-01-01 00:00:00 d/a + a 0 -1 unset d/b + copy: d/a -> d/b + $ mv d/b c -true +no copies found here (since the target isn't in d + + $ hg addremove -s80 d + removing d/b + +copies here + + $ hg addremove -s80 + adding c + recording removal of d/a as rename to c (100% similar) + + $ true