changeset 11799:ddebb6a690b4

tests: unify test-walk
author Nicolas Dumazet <nicdumz.commits@gmail.com>
date Thu, 12 Aug 2010 21:52:53 +0900
parents 1ab3d8977bdf
children 88c3ff051270
files tests/test-walk tests/test-walk.out tests/test-walk.t
diffstat 3 files changed, 284 insertions(+), 411 deletions(-) [+]
line wrap: on
line diff
--- a/tests/test-walk	Thu Aug 12 20:08:02 2010 +0900
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,108 +0,0 @@
-#!/bin/sh
-
-debugwalk()
-{
-    echo "hg debugwalk $@"
-    hg debugwalk "$@"
-    echo
-}
-
-chdir()
-{
-    echo "cd $@"
-    cd "$@"
-    echo
-}
-
-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
-hg commit -m "commit #0" -d "1000000 0"
-debugwalk
-debugwalk -I.
-chdir mammals
-debugwalk
-debugwalk -X ../beans
-debugwalk -I '*k'
-debugwalk -I 'glob:*k'
-debugwalk -I 'relglob:*k'
-debugwalk -I 'relglob:*k' .
-debugwalk -I 're:.*k$'
-debugwalk -I 'relre:.*k$'
-debugwalk -I 'path:beans'
-debugwalk -I 'relpath:../beans'
-debugwalk .
-debugwalk -I.
-debugwalk Procyonidae
-chdir Procyonidae
-debugwalk .
-debugwalk ..
-chdir ..
-debugwalk ../beans
-debugwalk .
-debugwalk .hg
-debugwalk ../.hg
-chdir ..
-debugwalk -Ibeans
-debugwalk -I '{*,{b,m}*/*}k'
-debugwalk 'glob:mammals/../beans/b*'
-debugwalk '-X*/Procyonidae' mammals
-debugwalk path:mammals
-debugwalk ..
-debugwalk beans/../..
-debugwalk .hg
-debugwalk beans/../.hg
-debugwalk beans/../.hg/data
-debugwalk beans/.hg
-# Don't know how to test absolute paths without always getting a false
-# error.
-#debugwalk `pwd`/beans
-#debugwalk `pwd`/..
-debugwalk glob:\*
-debugwalk 'glob:**e'
-debugwalk 're:.*[kb]$'
-debugwalk path:beans/black
-debugwalk path:beans//black
-debugwalk relglob:Procyonidae
-debugwalk 'relglob:Procyonidae/**'
-debugwalk 'relglob:Procyonidae/**' fennel
-debugwalk beans 'glob:beans/*'
-debugwalk 'glob:mamm**'
-debugwalk 'glob:mamm**' fennel
-debugwalk 'glob:j*'
-debugwalk NOEXIST
-mkfifo fifo
-debugwalk fifo
-rm fenugreek
-debugwalk fenugreek
-hg rm fenugreek
-debugwalk fenugreek
-touch new
-debugwalk new
-
-mkdir ignored
-touch ignored/file
-echo '^ignored$' > .hgignore
-debugwalk ignored
-debugwalk ignored/file
-
-chdir ..
-debugwalk -R t t/mammals/skunk
-mkdir t2
-chdir t2
-debugwalk -R ../t ../t/mammals/skunk
-debugwalk --cwd ../t mammals/skunk
--- a/tests/test-walk.out	Thu Aug 12 20:08:02 2010 +0900
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,303 +0,0 @@
-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 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'
-
-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
-
-hg debugwalk fifo
-fifo: unsupported file type (type is fifo)
-
-hg debugwalk fenugreek
-f  fenugreek  fenugreek  exact
-
-hg debugwalk fenugreek
-f  fenugreek  fenugreek  exact
-
-hg debugwalk new
-f  new  new  exact
-
-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
-
-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
-
--- /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