--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-walk.t Thu Aug 12 21:52:53 2010 +0900
@@ -0,0 +1,284 @@
+ $ mkdir t
+ $ cd t
+ $ hg init
+ $ 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
+ $ echo glob:glob > glob:glob
+ $ 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 glob:glob
+ adding mammals/Procyonidae/cacomistle
+ adding mammals/Procyonidae/coatimundi
+ adding mammals/Procyonidae/raccoon
+ adding mammals/skunk
+ $ hg commit -m "commit #0" -d "1000000 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 glob:glob glob:glob
+ 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 glob:glob glob:glob
+ 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 glob:glob ../glob:glob
+ 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 glob:glob ../glob:glob
+ 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:../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 repo 'mammals'
+ $ hg debugwalk ../.hg
+ abort: path contains illegal component: .hg
+ $ 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
+ $ hg debugwalk beans/../..
+ abort: beans/../.. not under root
+ $ hg debugwalk .hg
+ abort: path contains illegal component: .hg
+ $ hg debugwalk beans/../.hg
+ abort: path contains illegal component: .hg
+ $ hg debugwalk beans/../.hg/data
+ abort: path contains illegal component: .hg/data
+ $ hg debugwalk beans/.hg
+ abort: path 'beans/.hg' is inside repo 'beans'
+
+Don't know how to test absolute paths without always getting a false
+error.
+# hg debugwalk `pwd`/beans
+# hg debugwalk `pwd`/..
+
+ $ hg debugwalk glob:\*
+ f fennel fennel
+ f fenugreek fenugreek
+ f fiddlehead fiddlehead
+ f glob:glob glob:glob
+ $ 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 glob:glob glob:glob
+ 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: No such file or directory
+
+ $ mkfifo fifo
+ $ hg debugwalk fifo
+ fifo: unsupported file type (type is fifo)
+
+ $ 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
+
+ $ 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