diff options
Diffstat (limited to 'tests/test-walk.t')
-rw-r--r-- | tests/test-walk.t | 333 |
1 files changed, 333 insertions, 0 deletions
diff --git a/tests/test-walk.t b/tests/test-walk.t new file mode 100644 index 0000000..52de65e --- /dev/null +++ b/tests/test-walk.t @@ -0,0 +1,333 @@ + $ hg init t + $ cd t + $ mkdir -p beans + $ for b in kidney navy turtle borlotti black pinto; do + > echo $b > beans/$b + $ done + $ mkdir -p mammals/Procyonidae + $ for m in cacomistle coatimundi raccoon; do + > echo $m > mammals/Procyonidae/$m + $ done + $ 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 + $ hg commit -m "commit #0" + + $ hg debugwalk + 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. + 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 + 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 + 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' + f mammals/skunk skunk + $ hg debugwalk -I 'glob:*k' + f mammals/skunk skunk + $ hg debugwalk -I 'relglob:*k' + f beans/black ../beans/black + f fenugreek ../fenugreek + f mammals/skunk skunk + $ hg debugwalk -I 'relglob:*k' . + f mammals/skunk skunk + $ hg debugwalk -I 're:.*k$' + f beans/black ../beans/black + f fenugreek ../fenugreek + f mammals/skunk skunk + $ hg debugwalk -I 'relre:.*k$' + f beans/black ../beans/black + f fenugreek ../fenugreek + f mammals/skunk skunk + $ hg debugwalk -I 'path:beans' + 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 'relpath:detour/../../beans' + 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 . + 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. + 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 + f mammals/Procyonidae/cacomistle Procyonidae/cacomistle + f mammals/Procyonidae/coatimundi Procyonidae/coatimundi + f mammals/Procyonidae/raccoon Procyonidae/raccoon + + $ cd Procyonidae + $ hg debugwalk . + f mammals/Procyonidae/cacomistle cacomistle + f mammals/Procyonidae/coatimundi coatimundi + f mammals/Procyonidae/raccoon raccoon + $ hg debugwalk .. + f mammals/Procyonidae/cacomistle cacomistle + f mammals/Procyonidae/coatimundi coatimundi + f mammals/Procyonidae/raccoon raccoon + f mammals/skunk ../skunk + $ cd .. + + $ hg debugwalk ../beans + 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 . + 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 + abort: path 'mammals/.hg' is inside nested repo 'mammals' (glob) + [255] + $ hg debugwalk ../.hg + abort: path contains illegal component: .hg (glob) + [255] + $ cd .. + + $ hg debugwalk -Ibeans + 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' + f beans/black beans/black + f fenugreek fenugreek + f mammals/skunk mammals/skunk + $ hg debugwalk 'glob:mammals/../beans/b*' + f beans/black beans/black + f beans/borlotti beans/borlotti + $ hg debugwalk '-X*/Procyonidae' mammals + f mammals/skunk mammals/skunk + $ hg debugwalk path:mammals + 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 .. + abort: .. not under root + [255] + $ hg debugwalk beans/../.. + abort: beans/../.. not under root + [255] + $ hg debugwalk .hg + abort: path contains illegal component: .hg (glob) + [255] + $ hg debugwalk beans/../.hg + abort: path contains illegal component: .hg (glob) + [255] + $ hg debugwalk beans/../.hg/data + abort: path contains illegal component: .hg/data (glob) + [255] + $ hg debugwalk beans/.hg + abort: path 'beans/.hg' is inside nested repo 'beans' (glob) + [255] + +Test absolute paths: + + $ hg debugwalk `pwd`/beans + 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`/.. + abort: $TESTTMP/t/.. not under root + [255] + +Test patterns: + + $ hg debugwalk glob:\* + f fennel fennel + f fenugreek fenugreek + f fiddlehead fiddlehead +#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:\* + f fennel fennel + f fenugreek fenugreek + f fiddlehead fiddlehead + f glob:glob glob:glob + $ hg debugwalk glob:glob + glob: No such file or directory + $ hg debugwalk glob:glob:glob + f glob:glob glob:glob exact + $ hg debugwalk path:glob:glob + f glob:glob glob:glob exact + $ rm glob:glob + $ hg addremove + removing glob:glob +#endif + + $ hg debugwalk 'glob:**e' + f beans/turtle beans/turtle + f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle + + $ hg debugwalk 're:.*[kb]$' + f beans/black beans/black + f fenugreek fenugreek + f mammals/skunk mammals/skunk + + $ hg debugwalk path:beans/black + f beans/black beans/black exact + $ hg debugwalk path:beans//black + f beans/black beans/black exact + + $ hg debugwalk relglob:Procyonidae + $ hg debugwalk 'relglob:Procyonidae/**' + 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 + 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/*' + 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**' + 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 + 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*' + $ hg debugwalk NOEXIST + NOEXIST: * (glob) + +#if fifo + $ mkfifo fifo + $ hg debugwalk fifo + fifo: unsupported file type (type is fifo) +#endif + + $ rm fenugreek + $ hg debugwalk fenugreek + f fenugreek fenugreek exact + $ hg rm fenugreek + $ hg debugwalk fenugreek + f fenugreek fenugreek exact + $ touch new + $ hg debugwalk new + f new new exact + + $ mkdir ignored + $ touch ignored/file + $ echo '^ignored$' > .hgignore + $ hg debugwalk ignored + $ hg debugwalk ignored/file + f ignored/file ignored/file exact + +Test listfile and listfile0 + + $ python -c "file('listfile0', 'wb').write('fenugreek\0new\0')" + $ hg debugwalk -I 'listfile0:listfile0' + f fenugreek fenugreek + f new new + $ python -c "file('listfile', 'wb').write('fenugreek\nnew\r\nmammals/skunk\n')" + $ hg debugwalk -I 'listfile:listfile' + f fenugreek fenugreek + f mammals/skunk mammals/skunk + f new new + + $ cd .. + $ hg debugwalk -R t t/mammals/skunk + f mammals/skunk t/mammals/skunk exact + $ mkdir t2 + $ cd t2 + $ hg debugwalk -R ../t ../t/mammals/skunk + f mammals/skunk ../t/mammals/skunk exact + $ hg debugwalk --cwd ../t mammals/skunk + f mammals/skunk mammals/skunk exact + + $ cd .. |