##// END OF EJS Templates
revisionbranchcache: fall back to slow path if starting readonly (issue4531)...
revisionbranchcache: fall back to slow path if starting readonly (issue4531) Transitioning to Mercurial versions with revision branch cache could be slow as long as all operations were readonly (revset queries) and the cache would be populated but not written back. Instead, fall back to using the consistently slow path when readonly and the cache doesn't exist yet. That avoids the overhead of populating the cache without writing it back. If not readonly, it will still populate all missing entries initially. That avoids repeated writing of the cache file with small updates, and it also makes sure a fully populated cache available for the readonly operations.

File last commit:

r23481:94091ab9 default
r24159:5b4ed033 3.3.1 stable
Show More
test-addremove-similar.t
102 lines | 2.1 KiB | text/troff | Tads3Lexer
/ tests / test-addremove-similar.t
Martin Geisler
tests: unify test-addremove-similar
r11851 $ hg init rep; cd rep
$ touch empty-file
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c 'for x in range(10000): print x' > large-file
Martin Geisler
tests: unify test-addremove-similar
r11851
$ hg addremove
adding empty-file
adding large-file
$ hg commit -m A
$ rm large-file empty-file
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c 'for x in range(10,10000): print x' > another-file
Martin Geisler
tests: unify test-addremove-similar
r11851
$ 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 commit -m B
comparing two empty files caused ZeroDivisionError in the past
$ 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
$ cd ..
$ hg init rep2; cd rep2
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c 'for x in range(10000): print x' > large-file
$ $PYTHON -c 'for x in range(50): print x' > tiny-file
Martin Geisler
tests: unify test-addremove-similar
r11851
$ hg addremove
adding large-file
adding tiny-file
$ hg commit -m A
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c 'for x in range(70): print x' > small-file
Martin Geisler
tests: unify test-addremove-similar
r11851 $ rm tiny-file
$ rm large-file
$ hg addremove -s50
removing large-file
adding small-file
removing tiny-file
recording removal of tiny-file as rename to small-file (82% similar)
$ hg commit -m B
should all fail
$ hg addremove -s foo
abort: similarity must be a number
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-addremove-similar
r11851 $ hg addremove -s -1
abort: similarity must be between 0 and 100
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-addremove-similar
r11851 $ hg addremove -s 1e6
abort: similarity must be between 0 and 100
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-addremove-similar
r11851
$ cd ..
Martin Geisler
tests: added a short description to issue numbers...
r12399 Issue1527: repeated addremove causes util.Abort
Martin Geisler
tests: unify test-addremove-similar
r11851
$ 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
removing d/a
adding d/b
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 recording removal of d/a as rename to d/b (100% similar) (glob)
Martin Geisler
tests: unify test-addremove-similar
r11851 $ 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
no copies found here (since the target isn't in d
$ hg addremove -s80 d
Matt Harbison
addremove: restore the relative path printing when files are named...
r23481 removing d/b (glob)
Martin Geisler
tests: unify test-addremove-similar
r11851
copies here
$ hg addremove -s80
adding c
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 recording removal of d/a as rename to c (100% similar) (glob)
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..