##// END OF EJS Templates
revlog: extract function for getting node from known-to-exist rev...
revlog: extract function for getting node from known-to-exist rev Many of the calls to index_node() (which converts a rev to a nodeid) are done with a rev that's know to exist. If the function fails, there's something really wrong and we should just abort. This was done in only one place. This patch starts by extracting that code to a function that we can reuse in later patches. Differential Revision: https://phab.mercurial-scm.org/D3456

File last commit:

r37333:14da486e default
r37877:a91f31a1 default
Show More
test-walk.t
532 lines | 21.5 KiB | text/troff | Tads3Lexer
Martin Geisler
tests: remove redundant mkdir...
r13956 $ hg init t
Nicolas Dumazet
tests: unify test-walk
r11799 $ cd t
$ mkdir -p beans
$ for b in kidney navy turtle borlotti black pinto; do
> echo $b > beans/$b
Mads Kiilerich
check-code: check that '>' is used for continued lines...
r19873 > done
Nicolas Dumazet
tests: unify test-walk
r11799 $ mkdir -p mammals/Procyonidae
$ for m in cacomistle coatimundi raccoon; do
> echo $m > mammals/Procyonidae/$m
Mads Kiilerich
check-code: check that '>' is used for continued lines...
r19873 > done
Nicolas Dumazet
tests: unify test-walk
r11799 $ echo skunk > mammals/skunk
$ echo fennel > fennel
$ echo fenugreek > fenugreek
$ echo fiddlehead > fiddlehead
$ hg addremove
adding beans/black
adding beans/borlotti
adding beans/kidney
adding beans/navy
adding beans/pinto
adding beans/turtle
adding fennel
adding fenugreek
adding fiddlehead
adding mammals/Procyonidae/cacomistle
adding mammals/Procyonidae/coatimundi
adding mammals/Procyonidae/raccoon
adding mammals/skunk
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg commit -m "commit #0"
Nicolas Dumazet
tests: unify test-walk
r11799
$ hg debugwalk
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <alwaysmatcher>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk -I.
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ cd mammals
$ hg debugwalk
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <alwaysmatcher>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk -X ../beans
Martin von Zweigbergk
match: handle everything-matching using new alwaysmatcher...
r32553 matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk -I '*k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk skunk
$ hg debugwalk -I 'glob:*k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk skunk
$ hg debugwalk -I 'relglob:*k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f fenugreek ../fenugreek
f mammals/skunk skunk
$ hg debugwalk -I 'relglob:*k' .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk skunk
$ hg debugwalk -I 're:.*k$'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:.*k$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f fenugreek ../fenugreek
f mammals/skunk skunk
$ hg debugwalk -I 'relre:.*k$'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:.*.*k$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f fenugreek ../fenugreek
f mammals/skunk skunk
$ hg debugwalk -I 'path:beans'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 $ hg debugwalk -I 'relpath:detour/../../beans'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012
$ hg debugwalk 'rootfilesin:'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk -I 'rootfilesin:'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk 'rootfilesin:.'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk -I 'rootfilesin:.'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
$ hg debugwalk -X 'rootfilesin:'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:[^/]+$)'>>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk 'rootfilesin:fennel'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:fennel/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk -I 'rootfilesin:fennel'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:fennel/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk 'rootfilesin:skunk'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:skunk/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk -I 'rootfilesin:skunk'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:skunk/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 $ hg debugwalk 'rootfilesin:beans'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:beans/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
$ hg debugwalk -I 'rootfilesin:beans'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:beans/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
$ hg debugwalk 'rootfilesin:mammals'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk -I 'rootfilesin:mammals'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk 'rootfilesin:mammals/'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk -I 'rootfilesin:mammals/'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <includematcher includes='(?:mammals/[^/]+$)'>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f mammals/skunk skunk
$ hg debugwalk -X 'rootfilesin:mammals'
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:mammals/[^/]+$)'>>
Rodrigo Damazio Bovendorp
match: adding support for matching files inside a directory...
r31012 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
f fennel ../fennel
f fenugreek ../fenugreek
f fiddlehead ../fiddlehead
f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk -I.
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk Procyonidae
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
$ cd Procyonidae
$ hg debugwalk .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle cacomistle
f mammals/Procyonidae/coatimundi coatimundi
f mammals/Procyonidae/raccoon raccoon
$ hg debugwalk ..
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle cacomistle
f mammals/Procyonidae/coatimundi coatimundi
f mammals/Procyonidae/raccoon raccoon
f mammals/skunk ../skunk
$ cd ..
$ hg debugwalk ../beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black ../beans/black
f beans/borlotti ../beans/borlotti
f beans/kidney ../beans/kidney
f beans/navy ../beans/navy
f beans/pinto ../beans/pinto
f beans/turtle ../beans/turtle
$ hg debugwalk .
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi Procyonidae/coatimundi
f mammals/Procyonidae/raccoon Procyonidae/raccoon
f mammals/skunk skunk
$ hg debugwalk .hg
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 abort: path 'mammals/.hg' is inside nested repo 'mammals'
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk ../.hg
Simon Heimberg
tests: remove glob from output lines containing no glob character
r18682 abort: path contains illegal component: .hg
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ cd ..
$ hg debugwalk -Ibeans
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:beans(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk -I '{*,{b,m}*/*}k'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:(?:[^/]*|(?:b|m)[^/]*\\/[^/]*)k(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f fenugreek fenugreek
f mammals/skunk mammals/skunk
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Ibeans mammals
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Inon-existent
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:non\\-existent(?:/|$))'>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Inon-existent -Ibeans/black
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:non\\-existent(?:/|$)|beans\\/black(?:/|$))'>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black
$ hg debugwalk -Ibeans beans/black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black exact
$ hg debugwalk -Ibeans/black beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/black beans/black
$ hg debugwalk -Xbeans/black beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk -Xbeans/black -Ibeans
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <differencematcher m1=<includematcher includes='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk -Xbeans/black beans/black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Xbeans/black -Ibeans/black
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Xbeans beans/black
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Martin von Zweigbergk
test-walk: add more tests for -I/-X...
r25217 $ hg debugwalk -Xbeans -Ibeans/black
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 'glob:mammals/../beans/b*'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans\\/b[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
$ hg debugwalk '-X*/Procyonidae' mammals
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <differencematcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:[^/]*\\/Procyonidae(?:/|$))'>>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk mammals/skunk
$ hg debugwalk path:mammals
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk ..
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 abort: .. not under root '$TESTTMP/t'
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/../..
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 abort: beans/../.. not under root '$TESTTMP/t'
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk .hg
Simon Heimberg
tests: remove glob from output lines containing no glob character
r18682 abort: path contains illegal component: .hg
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/../.hg
Simon Heimberg
tests: remove glob from output lines containing no glob character
r18682 abort: path contains illegal component: .hg
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/../.hg/data
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 abort: path contains illegal component: .hg/data
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk beans/.hg
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 abort: path 'beans/.hg' is inside nested repo 'beans'
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-walk
r11799
Yuya Nishihara
match: do not weirdly include explicit files excluded by -X option...
r35677 Test explicit paths and excludes:
$ hg debugwalk fennel -X fennel
matcher: <differencematcher m1=<patternmatcher patterns='(?:fennel(?:/|$))'>, m2=<includematcher includes='(?:fennel(?:/|$))'>>
$ hg debugwalk fennel -X 'f*'
matcher: <differencematcher m1=<patternmatcher patterns='(?:fennel(?:/|$))'>, m2=<includematcher includes='(?:f[^/]*(?:/|$))'>>
$ hg debugwalk beans/black -X 'path:beans'
matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
$ hg debugwalk -I 'path:beans/black' -X 'path:beans'
matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
Matt Mackall
test-walk: enable absolute path tests
r11903 Test absolute paths:
$ hg debugwalk `pwd`/beans
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans(?:/|$))'>
Matt Mackall
test-walk: enable absolute path tests
r11903 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk `pwd`/..
Matt Harbison
tests: remove (glob) annotations that were only for '\' matches...
r35394 abort: $TESTTMP/t/.. not under root '$TESTTMP/t'
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Matt Mackall
test-walk: enable absolute path tests
r11903
Test patterns:
Nicolas Dumazet
tests: unify test-walk
r11799
$ hg debugwalk glob:\*
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
Mads Kiilerich
tests: move tests in test-walk.t using ':' in filenames to conditional section...
r16983 #if eol-in-paths
$ echo glob:glob > glob:glob
$ hg addremove
adding glob:glob
warning: filename contains ':', which is reserved on Windows: 'glob:glob'
$ hg debugwalk glob:\*
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:[^/]*$)'>
Mads Kiilerich
tests: move tests in test-walk.t using ':' in filenames to conditional section...
r16983 f fennel fennel
f fenugreek fenugreek
f fiddlehead fiddlehead
Nicolas Dumazet
tests: unify test-walk
r11799 f glob:glob glob:glob
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 $ hg debugwalk glob:glob
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:glob$)'>
Matt Harbison
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages...
r35230 glob: $ENOENT$
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 $ hg debugwalk glob:glob:glob
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:glob\\:glob$)'>
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 f glob:glob glob:glob exact
$ hg debugwalk path:glob:glob
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:glob\\:glob(?:/|$))'>
Mads Kiilerich
tests: better testing of 'glob:glob' in test-walk.t
r16984 f glob:glob glob:glob exact
Mads Kiilerich
tests: move tests in test-walk.t using ':' in filenames to conditional section...
r16983 $ rm glob:glob
$ hg addremove
removing glob:glob
#endif
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 'glob:**e'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:.*e$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/turtle beans/turtle
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 're:.*[kb]$'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:.*[kb]$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f fenugreek fenugreek
f mammals/skunk mammals/skunk
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk path:beans/black
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:beans\\/black(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black exact
$ hg debugwalk path:beans//black
Martin von Zweigbergk
match: remove unnecessary '^' from regexes...
r33357 matcher: <patternmatcher patterns='(?:beans\\/black(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black exact
Matt Mackall
test-walk: enable absolute path tests
r11903
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk relglob:Procyonidae
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk 'relglob:Procyonidae/**'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
$ hg debugwalk 'relglob:Procyonidae/**' fennel
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$|fennel(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel fennel exact
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
$ hg debugwalk beans 'glob:beans/*'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:beans(?:/|$)|beans\\/[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f beans/black beans/black
f beans/borlotti beans/borlotti
f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
$ hg debugwalk 'glob:mamm**'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mamm.*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk 'glob:mamm**' fennel
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mamm.*$|fennel(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fennel fennel exact
f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
f mammals/skunk mammals/skunk
$ hg debugwalk 'glob:j*'
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:j[^/]*$)'>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk NOEXIST
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:NOEXIST(?:/|$))'>
Mads Kiilerich
tests: hide 'No such file or directory' messages...
r15521 NOEXIST: * (glob)
Nicolas Dumazet
tests: unify test-walk
r11799
Mads Kiilerich
tests: add some missing #if's / hghave requirements...
r16972 #if fifo
Nicolas Dumazet
tests: unify test-walk
r11799 $ mkfifo fifo
$ hg debugwalk fifo
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:fifo(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 fifo: unsupported file type (type is fifo)
Mads Kiilerich
tests: add some missing #if's / hghave requirements...
r16972 #endif
Nicolas Dumazet
tests: unify test-walk
r11799
$ rm fenugreek
$ hg debugwalk fenugreek
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:fenugreek(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fenugreek fenugreek exact
$ hg rm fenugreek
$ hg debugwalk fenugreek
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:fenugreek(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f fenugreek fenugreek exact
$ touch new
$ hg debugwalk new
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:new(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f new new exact
$ mkdir ignored
$ touch ignored/file
$ echo '^ignored$' > .hgignore
$ hg debugwalk ignored
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:ignored(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 $ hg debugwalk ignored/file
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:ignored\\/file(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f ignored/file ignored/file exact
Patrick Mezard
match: make 'listfile:' split on LF and CRLF...
r14248 Test listfile and listfile0
Pulkit Goyal
py3: replace file() with open() in test-walk.t...
r36032 $ $PYTHON -c "open('listfile0', 'wb').write(b'fenugreek\0new\0')"
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 $ hg debugwalk -I 'listfile0:listfile0'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$))'>
Patrick Mezard
match: make 'listfile:' split on LF and CRLF...
r14248 f fenugreek fenugreek
f new new
Pulkit Goyal
py3: replace file() with open() in test-walk.t...
r36032 $ $PYTHON -c "open('listfile', 'wb').write(b'fenugreek\nnew\r\nmammals/skunk\n')"
Mads Kiilerich
tests: run test-walk.t on windows...
r16985 $ hg debugwalk -I 'listfile:listfile'
Martin von Zweigbergk
match: remove support for non-include patterns from includematcher...
r32502 matcher: <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$)|mammals\\/skunk(?:/|$))'>
Patrick Mezard
match: make 'listfile:' split on LF and CRLF...
r14248 f fenugreek fenugreek
f mammals/skunk mammals/skunk
f new new
Nicolas Dumazet
tests: unify test-walk
r11799 $ cd ..
$ hg debugwalk -R t t/mammals/skunk
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk t/mammals/skunk exact
$ mkdir t2
$ cd t2
$ hg debugwalk -R ../t ../t/mammals/skunk
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk ../t/mammals/skunk exact
$ hg debugwalk --cwd ../t mammals/skunk
Martin von Zweigbergk
match: remove support for includes from patternmatcher...
r32504 matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
Nicolas Dumazet
tests: unify test-walk
r11799 f mammals/skunk mammals/skunk exact
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..
Yuya Nishihara
match: fix NameError 'pat' on overflow of regex pattern length...
r21191
Test split patterns on overflow
$ cd t
$ echo fennel > overflow.list
Pulkit Goyal
py3: use print as a function in tests/test-walk.t...
r37333 $ cat >> printnum.py <<EOF
> from __future__ import print_function
> for i in range(20000 // 100):
> print('x' * 100)
> EOF
$ $PYTHON printnum.py >> overflow.list
Yuya Nishihara
match: fix NameError 'pat' on overflow of regex pattern length...
r21191 $ echo fenugreek >> overflow.list
Martin von Zweigbergk
debugwalk: also print matcher representation...
r32453 $ hg debugwalk 'listfile:overflow.list' 2>&1 | egrep -v '(^matcher: |^xxx)'
Yuya Nishihara
match: fix NameError 'pat' on overflow of regex pattern length...
r21191 f fennel fennel exact
f fenugreek fenugreek exact
$ cd ..