tests/test-walk.t
changeset 38263 dbf31732ef64
parent 38262 7c3a59e2971b
child 38264 fbb2eddea4d2
equal deleted inserted replaced
38262:7c3a59e2971b 38263:dbf31732ef64
    27   adding mammals/Procyonidae/raccoon
    27   adding mammals/Procyonidae/raccoon
    28   adding mammals/skunk
    28   adding mammals/skunk
    29   $ hg commit -m "commit #0"
    29   $ hg commit -m "commit #0"
    30 
    30 
    31   $ hg debugwalk -v
    31   $ hg debugwalk -v
    32   matcher: <alwaysmatcher>
    32   * matcher:
       
    33   <alwaysmatcher>
    33   f  beans/black                     beans/black
    34   f  beans/black                     beans/black
    34   f  beans/borlotti                  beans/borlotti
    35   f  beans/borlotti                  beans/borlotti
    35   f  beans/kidney                    beans/kidney
    36   f  beans/kidney                    beans/kidney
    36   f  beans/navy                      beans/navy
    37   f  beans/navy                      beans/navy
    37   f  beans/pinto                     beans/pinto
    38   f  beans/pinto                     beans/pinto
    42   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
    43   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
    43   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
    44   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
    44   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
    45   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
    45   f  mammals/skunk                   mammals/skunk
    46   f  mammals/skunk                   mammals/skunk
    46   $ hg debugwalk -v -I.
    47   $ hg debugwalk -v -I.
    47   matcher: <includematcher includes='(?:)'>
    48   * matcher:
       
    49   <includematcher includes='(?:)'>
    48   f  beans/black                     beans/black
    50   f  beans/black                     beans/black
    49   f  beans/borlotti                  beans/borlotti
    51   f  beans/borlotti                  beans/borlotti
    50   f  beans/kidney                    beans/kidney
    52   f  beans/kidney                    beans/kidney
    51   f  beans/navy                      beans/navy
    53   f  beans/navy                      beans/navy
    52   f  beans/pinto                     beans/pinto
    54   f  beans/pinto                     beans/pinto
    59   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
    61   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
    60   f  mammals/skunk                   mammals/skunk
    62   f  mammals/skunk                   mammals/skunk
    61 
    63 
    62   $ cd mammals
    64   $ cd mammals
    63   $ hg debugwalk -v
    65   $ hg debugwalk -v
    64   matcher: <alwaysmatcher>
    66   * matcher:
       
    67   <alwaysmatcher>
    65   f  beans/black                     ../beans/black
    68   f  beans/black                     ../beans/black
    66   f  beans/borlotti                  ../beans/borlotti
    69   f  beans/borlotti                  ../beans/borlotti
    67   f  beans/kidney                    ../beans/kidney
    70   f  beans/kidney                    ../beans/kidney
    68   f  beans/navy                      ../beans/navy
    71   f  beans/navy                      ../beans/navy
    69   f  beans/pinto                     ../beans/pinto
    72   f  beans/pinto                     ../beans/pinto
    74   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
    77   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
    75   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
    78   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
    76   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
    79   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
    77   f  mammals/skunk                   skunk
    80   f  mammals/skunk                   skunk
    78   $ hg debugwalk -v -X ../beans
    81   $ hg debugwalk -v -X ../beans
    79   matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:beans(?:/|$))'>>
    82   * matcher:
       
    83   <differencematcher m1=
       
    84     <alwaysmatcher>, m2=
       
    85     <includematcher includes='(?:beans(?:/|$))'>>
    80   f  fennel                          ../fennel
    86   f  fennel                          ../fennel
    81   f  fenugreek                       ../fenugreek
    87   f  fenugreek                       ../fenugreek
    82   f  fiddlehead                      ../fiddlehead
    88   f  fiddlehead                      ../fiddlehead
    83   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
    89   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
    84   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
    90   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
    85   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
    91   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
    86   f  mammals/skunk                   skunk
    92   f  mammals/skunk                   skunk
    87   $ hg debugwalk -v -I '*k'
    93   $ hg debugwalk -v -I '*k'
    88   matcher: <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
    94   * matcher:
       
    95   <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
    89   f  mammals/skunk  skunk
    96   f  mammals/skunk  skunk
    90   $ hg debugwalk -v -I 'glob:*k'
    97   $ hg debugwalk -v -I 'glob:*k'
    91   matcher: <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
    98   * matcher:
       
    99   <includematcher includes='(?:mammals\\/[^/]*k(?:/|$))'>
    92   f  mammals/skunk  skunk
   100   f  mammals/skunk  skunk
    93   $ hg debugwalk -v -I 'relglob:*k'
   101   $ hg debugwalk -v -I 'relglob:*k'
    94   matcher: <includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>
   102   * matcher:
       
   103   <includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>
    95   f  beans/black    ../beans/black
   104   f  beans/black    ../beans/black
    96   f  fenugreek      ../fenugreek
   105   f  fenugreek      ../fenugreek
    97   f  mammals/skunk  skunk
   106   f  mammals/skunk  skunk
    98   $ hg debugwalk -v -I 'relglob:*k' .
   107   $ hg debugwalk -v -I 'relglob:*k' .
    99   matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>>
   108   * matcher:
       
   109   <intersectionmatcher m1=
       
   110     <patternmatcher patterns='(?:mammals(?:/|$))'>, m2=
       
   111     <includematcher includes='(?:(?:|.*/)[^/]*k(?:/|$))'>>
   100   f  mammals/skunk  skunk
   112   f  mammals/skunk  skunk
   101   $ hg debugwalk -v -I 're:.*k$'
   113   $ hg debugwalk -v -I 're:.*k$'
   102   matcher: <includematcher includes='(?:.*k$)'>
   114   * matcher:
       
   115   <includematcher includes='(?:.*k$)'>
   103   f  beans/black    ../beans/black
   116   f  beans/black    ../beans/black
   104   f  fenugreek      ../fenugreek
   117   f  fenugreek      ../fenugreek
   105   f  mammals/skunk  skunk
   118   f  mammals/skunk  skunk
   106   $ hg debugwalk -v -I 'relre:.*k$'
   119   $ hg debugwalk -v -I 'relre:.*k$'
   107   matcher: <includematcher includes='(?:.*.*k$)'>
   120   * matcher:
       
   121   <includematcher includes='(?:.*.*k$)'>
   108   f  beans/black    ../beans/black
   122   f  beans/black    ../beans/black
   109   f  fenugreek      ../fenugreek
   123   f  fenugreek      ../fenugreek
   110   f  mammals/skunk  skunk
   124   f  mammals/skunk  skunk
   111   $ hg debugwalk -v -I 'path:beans'
   125   $ hg debugwalk -v -I 'path:beans'
   112   matcher: <includematcher includes='(?:beans(?:/|$))'>
   126   * matcher:
       
   127   <includematcher includes='(?:beans(?:/|$))'>
   113   f  beans/black     ../beans/black
   128   f  beans/black     ../beans/black
   114   f  beans/borlotti  ../beans/borlotti
   129   f  beans/borlotti  ../beans/borlotti
   115   f  beans/kidney    ../beans/kidney
   130   f  beans/kidney    ../beans/kidney
   116   f  beans/navy      ../beans/navy
   131   f  beans/navy      ../beans/navy
   117   f  beans/pinto     ../beans/pinto
   132   f  beans/pinto     ../beans/pinto
   118   f  beans/turtle    ../beans/turtle
   133   f  beans/turtle    ../beans/turtle
   119   $ hg debugwalk -v -I 'relpath:detour/../../beans'
   134   $ hg debugwalk -v -I 'relpath:detour/../../beans'
   120   matcher: <includematcher includes='(?:beans(?:/|$))'>
   135   * matcher:
       
   136   <includematcher includes='(?:beans(?:/|$))'>
   121   f  beans/black     ../beans/black
   137   f  beans/black     ../beans/black
   122   f  beans/borlotti  ../beans/borlotti
   138   f  beans/borlotti  ../beans/borlotti
   123   f  beans/kidney    ../beans/kidney
   139   f  beans/kidney    ../beans/kidney
   124   f  beans/navy      ../beans/navy
   140   f  beans/navy      ../beans/navy
   125   f  beans/pinto     ../beans/pinto
   141   f  beans/pinto     ../beans/pinto
   126   f  beans/turtle    ../beans/turtle
   142   f  beans/turtle    ../beans/turtle
   127 
   143 
   128   $ hg debugwalk -v 'rootfilesin:'
   144   $ hg debugwalk -v 'rootfilesin:'
   129   matcher: <patternmatcher patterns='(?:[^/]+$)'>
   145   * matcher:
       
   146   <patternmatcher patterns='(?:[^/]+$)'>
   130   f  fennel      ../fennel
   147   f  fennel      ../fennel
   131   f  fenugreek   ../fenugreek
   148   f  fenugreek   ../fenugreek
   132   f  fiddlehead  ../fiddlehead
   149   f  fiddlehead  ../fiddlehead
   133   $ hg debugwalk -v -I 'rootfilesin:'
   150   $ hg debugwalk -v -I 'rootfilesin:'
   134   matcher: <includematcher includes='(?:[^/]+$)'>
   151   * matcher:
       
   152   <includematcher includes='(?:[^/]+$)'>
   135   f  fennel      ../fennel
   153   f  fennel      ../fennel
   136   f  fenugreek   ../fenugreek
   154   f  fenugreek   ../fenugreek
   137   f  fiddlehead  ../fiddlehead
   155   f  fiddlehead  ../fiddlehead
   138   $ hg debugwalk -v 'rootfilesin:.'
   156   $ hg debugwalk -v 'rootfilesin:.'
   139   matcher: <patternmatcher patterns='(?:[^/]+$)'>
   157   * matcher:
       
   158   <patternmatcher patterns='(?:[^/]+$)'>
   140   f  fennel      ../fennel
   159   f  fennel      ../fennel
   141   f  fenugreek   ../fenugreek
   160   f  fenugreek   ../fenugreek
   142   f  fiddlehead  ../fiddlehead
   161   f  fiddlehead  ../fiddlehead
   143   $ hg debugwalk -v -I 'rootfilesin:.'
   162   $ hg debugwalk -v -I 'rootfilesin:.'
   144   matcher: <includematcher includes='(?:[^/]+$)'>
   163   * matcher:
       
   164   <includematcher includes='(?:[^/]+$)'>
   145   f  fennel      ../fennel
   165   f  fennel      ../fennel
   146   f  fenugreek   ../fenugreek
   166   f  fenugreek   ../fenugreek
   147   f  fiddlehead  ../fiddlehead
   167   f  fiddlehead  ../fiddlehead
   148   $ hg debugwalk -v -X 'rootfilesin:'
   168   $ hg debugwalk -v -X 'rootfilesin:'
   149   matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:[^/]+$)'>>
   169   * matcher:
       
   170   <differencematcher m1=
       
   171     <alwaysmatcher>, m2=
       
   172     <includematcher includes='(?:[^/]+$)'>>
   150   f  beans/black                     ../beans/black
   173   f  beans/black                     ../beans/black
   151   f  beans/borlotti                  ../beans/borlotti
   174   f  beans/borlotti                  ../beans/borlotti
   152   f  beans/kidney                    ../beans/kidney
   175   f  beans/kidney                    ../beans/kidney
   153   f  beans/navy                      ../beans/navy
   176   f  beans/navy                      ../beans/navy
   154   f  beans/pinto                     ../beans/pinto
   177   f  beans/pinto                     ../beans/pinto
   156   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   179   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   157   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   180   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   158   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   181   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   159   f  mammals/skunk                   skunk
   182   f  mammals/skunk                   skunk
   160   $ hg debugwalk -v 'rootfilesin:fennel'
   183   $ hg debugwalk -v 'rootfilesin:fennel'
   161   matcher: <patternmatcher patterns='(?:fennel/[^/]+$)'>
   184   * matcher:
       
   185   <patternmatcher patterns='(?:fennel/[^/]+$)'>
   162   $ hg debugwalk -v -I 'rootfilesin:fennel'
   186   $ hg debugwalk -v -I 'rootfilesin:fennel'
   163   matcher: <includematcher includes='(?:fennel/[^/]+$)'>
   187   * matcher:
       
   188   <includematcher includes='(?:fennel/[^/]+$)'>
   164   $ hg debugwalk -v 'rootfilesin:skunk'
   189   $ hg debugwalk -v 'rootfilesin:skunk'
   165   matcher: <patternmatcher patterns='(?:skunk/[^/]+$)'>
   190   * matcher:
       
   191   <patternmatcher patterns='(?:skunk/[^/]+$)'>
   166   $ hg debugwalk -v -I 'rootfilesin:skunk'
   192   $ hg debugwalk -v -I 'rootfilesin:skunk'
   167   matcher: <includematcher includes='(?:skunk/[^/]+$)'>
   193   * matcher:
       
   194   <includematcher includes='(?:skunk/[^/]+$)'>
   168   $ hg debugwalk -v 'rootfilesin:beans'
   195   $ hg debugwalk -v 'rootfilesin:beans'
   169   matcher: <patternmatcher patterns='(?:beans/[^/]+$)'>
   196   * matcher:
       
   197   <patternmatcher patterns='(?:beans/[^/]+$)'>
   170   f  beans/black     ../beans/black
   198   f  beans/black     ../beans/black
   171   f  beans/borlotti  ../beans/borlotti
   199   f  beans/borlotti  ../beans/borlotti
   172   f  beans/kidney    ../beans/kidney
   200   f  beans/kidney    ../beans/kidney
   173   f  beans/navy      ../beans/navy
   201   f  beans/navy      ../beans/navy
   174   f  beans/pinto     ../beans/pinto
   202   f  beans/pinto     ../beans/pinto
   175   f  beans/turtle    ../beans/turtle
   203   f  beans/turtle    ../beans/turtle
   176   $ hg debugwalk -v -I 'rootfilesin:beans'
   204   $ hg debugwalk -v -I 'rootfilesin:beans'
   177   matcher: <includematcher includes='(?:beans/[^/]+$)'>
   205   * matcher:
       
   206   <includematcher includes='(?:beans/[^/]+$)'>
   178   f  beans/black     ../beans/black
   207   f  beans/black     ../beans/black
   179   f  beans/borlotti  ../beans/borlotti
   208   f  beans/borlotti  ../beans/borlotti
   180   f  beans/kidney    ../beans/kidney
   209   f  beans/kidney    ../beans/kidney
   181   f  beans/navy      ../beans/navy
   210   f  beans/navy      ../beans/navy
   182   f  beans/pinto     ../beans/pinto
   211   f  beans/pinto     ../beans/pinto
   183   f  beans/turtle    ../beans/turtle
   212   f  beans/turtle    ../beans/turtle
   184   $ hg debugwalk -v 'rootfilesin:mammals'
   213   $ hg debugwalk -v 'rootfilesin:mammals'
   185   matcher: <patternmatcher patterns='(?:mammals/[^/]+$)'>
   214   * matcher:
       
   215   <patternmatcher patterns='(?:mammals/[^/]+$)'>
   186   f  mammals/skunk  skunk
   216   f  mammals/skunk  skunk
   187   $ hg debugwalk -v -I 'rootfilesin:mammals'
   217   $ hg debugwalk -v -I 'rootfilesin:mammals'
   188   matcher: <includematcher includes='(?:mammals/[^/]+$)'>
   218   * matcher:
       
   219   <includematcher includes='(?:mammals/[^/]+$)'>
   189   f  mammals/skunk  skunk
   220   f  mammals/skunk  skunk
   190   $ hg debugwalk -v 'rootfilesin:mammals/'
   221   $ hg debugwalk -v 'rootfilesin:mammals/'
   191   matcher: <patternmatcher patterns='(?:mammals/[^/]+$)'>
   222   * matcher:
       
   223   <patternmatcher patterns='(?:mammals/[^/]+$)'>
   192   f  mammals/skunk  skunk
   224   f  mammals/skunk  skunk
   193   $ hg debugwalk -v -I 'rootfilesin:mammals/'
   225   $ hg debugwalk -v -I 'rootfilesin:mammals/'
   194   matcher: <includematcher includes='(?:mammals/[^/]+$)'>
   226   * matcher:
       
   227   <includematcher includes='(?:mammals/[^/]+$)'>
   195   f  mammals/skunk  skunk
   228   f  mammals/skunk  skunk
   196   $ hg debugwalk -v -X 'rootfilesin:mammals'
   229   $ hg debugwalk -v -X 'rootfilesin:mammals'
   197   matcher: <differencematcher m1=<alwaysmatcher>, m2=<includematcher includes='(?:mammals/[^/]+$)'>>
   230   * matcher:
       
   231   <differencematcher m1=
       
   232     <alwaysmatcher>, m2=
       
   233     <includematcher includes='(?:mammals/[^/]+$)'>>
   198   f  beans/black                     ../beans/black
   234   f  beans/black                     ../beans/black
   199   f  beans/borlotti                  ../beans/borlotti
   235   f  beans/borlotti                  ../beans/borlotti
   200   f  beans/kidney                    ../beans/kidney
   236   f  beans/kidney                    ../beans/kidney
   201   f  beans/navy                      ../beans/navy
   237   f  beans/navy                      ../beans/navy
   202   f  beans/pinto                     ../beans/pinto
   238   f  beans/pinto                     ../beans/pinto
   207   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   243   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   208   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   244   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   209   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   245   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   210 
   246 
   211   $ hg debugwalk -v .
   247   $ hg debugwalk -v .
   212   matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
   248   * matcher:
       
   249   <patternmatcher patterns='(?:mammals(?:/|$))'>
   213   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   250   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   214   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   251   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   215   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   252   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   216   f  mammals/skunk                   skunk
   253   f  mammals/skunk                   skunk
   217   $ hg debugwalk -v -I.
   254   $ hg debugwalk -v -I.
   218   matcher: <includematcher includes='(?:mammals(?:/|$))'>
   255   * matcher:
       
   256   <includematcher includes='(?:mammals(?:/|$))'>
   219   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   257   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   220   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   258   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   221   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   259   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   222   f  mammals/skunk                   skunk
   260   f  mammals/skunk                   skunk
   223   $ hg debugwalk -v Procyonidae
   261   $ hg debugwalk -v Procyonidae
   224   matcher: <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
   262   * matcher:
       
   263   <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
   225   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   264   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   226   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   265   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   227   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   266   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   228 
   267 
   229   $ cd Procyonidae
   268   $ cd Procyonidae
   230   $ hg debugwalk -v .
   269   $ hg debugwalk -v .
   231   matcher: <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
   270   * matcher:
       
   271   <patternmatcher patterns='(?:mammals\\/Procyonidae(?:/|$))'>
   232   f  mammals/Procyonidae/cacomistle  cacomistle
   272   f  mammals/Procyonidae/cacomistle  cacomistle
   233   f  mammals/Procyonidae/coatimundi  coatimundi
   273   f  mammals/Procyonidae/coatimundi  coatimundi
   234   f  mammals/Procyonidae/raccoon     raccoon
   274   f  mammals/Procyonidae/raccoon     raccoon
   235   $ hg debugwalk -v ..
   275   $ hg debugwalk -v ..
   236   matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
   276   * matcher:
       
   277   <patternmatcher patterns='(?:mammals(?:/|$))'>
   237   f  mammals/Procyonidae/cacomistle  cacomistle
   278   f  mammals/Procyonidae/cacomistle  cacomistle
   238   f  mammals/Procyonidae/coatimundi  coatimundi
   279   f  mammals/Procyonidae/coatimundi  coatimundi
   239   f  mammals/Procyonidae/raccoon     raccoon
   280   f  mammals/Procyonidae/raccoon     raccoon
   240   f  mammals/skunk                   ../skunk
   281   f  mammals/skunk                   ../skunk
   241   $ cd ..
   282   $ cd ..
   242 
   283 
   243   $ hg debugwalk -v ../beans
   284   $ hg debugwalk -v ../beans
   244   matcher: <patternmatcher patterns='(?:beans(?:/|$))'>
   285   * matcher:
       
   286   <patternmatcher patterns='(?:beans(?:/|$))'>
   245   f  beans/black     ../beans/black
   287   f  beans/black     ../beans/black
   246   f  beans/borlotti  ../beans/borlotti
   288   f  beans/borlotti  ../beans/borlotti
   247   f  beans/kidney    ../beans/kidney
   289   f  beans/kidney    ../beans/kidney
   248   f  beans/navy      ../beans/navy
   290   f  beans/navy      ../beans/navy
   249   f  beans/pinto     ../beans/pinto
   291   f  beans/pinto     ../beans/pinto
   250   f  beans/turtle    ../beans/turtle
   292   f  beans/turtle    ../beans/turtle
   251   $ hg debugwalk -v .
   293   $ hg debugwalk -v .
   252   matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
   294   * matcher:
       
   295   <patternmatcher patterns='(?:mammals(?:/|$))'>
   253   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   296   f  mammals/Procyonidae/cacomistle  Procyonidae/cacomistle
   254   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   297   f  mammals/Procyonidae/coatimundi  Procyonidae/coatimundi
   255   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   298   f  mammals/Procyonidae/raccoon     Procyonidae/raccoon
   256   f  mammals/skunk                   skunk
   299   f  mammals/skunk                   skunk
   257   $ hg debugwalk -v .hg
   300   $ hg debugwalk -v .hg
   261   abort: path contains illegal component: .hg
   304   abort: path contains illegal component: .hg
   262   [255]
   305   [255]
   263   $ cd ..
   306   $ cd ..
   264 
   307 
   265   $ hg debugwalk -v -Ibeans
   308   $ hg debugwalk -v -Ibeans
   266   matcher: <includematcher includes='(?:beans(?:/|$))'>
   309   * matcher:
       
   310   <includematcher includes='(?:beans(?:/|$))'>
   267   f  beans/black     beans/black
   311   f  beans/black     beans/black
   268   f  beans/borlotti  beans/borlotti
   312   f  beans/borlotti  beans/borlotti
   269   f  beans/kidney    beans/kidney
   313   f  beans/kidney    beans/kidney
   270   f  beans/navy      beans/navy
   314   f  beans/navy      beans/navy
   271   f  beans/pinto     beans/pinto
   315   f  beans/pinto     beans/pinto
   272   f  beans/turtle    beans/turtle
   316   f  beans/turtle    beans/turtle
   273   $ hg debugwalk -v -I '{*,{b,m}*/*}k'
   317   $ hg debugwalk -v -I '{*,{b,m}*/*}k'
   274   matcher: <includematcher includes='(?:(?:[^/]*|(?:b|m)[^/]*\\/[^/]*)k(?:/|$))'>
   318   * matcher:
       
   319   <includematcher includes='(?:(?:[^/]*|(?:b|m)[^/]*\\/[^/]*)k(?:/|$))'>
   275   f  beans/black    beans/black
   320   f  beans/black    beans/black
   276   f  fenugreek      fenugreek
   321   f  fenugreek      fenugreek
   277   f  mammals/skunk  mammals/skunk
   322   f  mammals/skunk  mammals/skunk
   278   $ hg debugwalk -v -Ibeans mammals
   323   $ hg debugwalk -v -Ibeans mammals
   279   matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
   324   * matcher:
       
   325   <intersectionmatcher m1=
       
   326     <patternmatcher patterns='(?:mammals(?:/|$))'>, m2=
       
   327     <includematcher includes='(?:beans(?:/|$))'>>
   280   $ hg debugwalk -v -Inon-existent
   328   $ hg debugwalk -v -Inon-existent
   281   matcher: <includematcher includes='(?:non\\-existent(?:/|$))'>
   329   * matcher:
       
   330   <includematcher includes='(?:non\\-existent(?:/|$))'>
   282   $ hg debugwalk -v -Inon-existent -Ibeans/black
   331   $ hg debugwalk -v -Inon-existent -Ibeans/black
   283   matcher: <includematcher includes='(?:non\\-existent(?:/|$)|beans\\/black(?:/|$))'>
   332   * matcher:
       
   333   <includematcher includes='(?:non\\-existent(?:/|$)|beans\\/black(?:/|$))'>
   284   f  beans/black  beans/black
   334   f  beans/black  beans/black
   285   $ hg debugwalk -v -Ibeans beans/black
   335   $ hg debugwalk -v -Ibeans beans/black
   286   matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
   336   * matcher:
       
   337   <intersectionmatcher m1=
       
   338     <patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=
       
   339     <includematcher includes='(?:beans(?:/|$))'>>
   287   f  beans/black  beans/black  exact
   340   f  beans/black  beans/black  exact
   288   $ hg debugwalk -v -Ibeans/black beans
   341   $ hg debugwalk -v -Ibeans/black beans
   289   matcher: <intersectionmatcher m1=<patternmatcher patterns='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
   342   * matcher:
       
   343   <intersectionmatcher m1=
       
   344     <patternmatcher patterns='(?:beans(?:/|$))'>, m2=
       
   345     <includematcher includes='(?:beans\\/black(?:/|$))'>>
   290   f  beans/black  beans/black
   346   f  beans/black  beans/black
   291   $ hg debugwalk -v -Xbeans/black beans
   347   $ hg debugwalk -v -Xbeans/black beans
   292   matcher: <differencematcher m1=<patternmatcher patterns='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
   348   * matcher:
       
   349   <differencematcher m1=
       
   350     <patternmatcher patterns='(?:beans(?:/|$))'>, m2=
       
   351     <includematcher includes='(?:beans\\/black(?:/|$))'>>
   293   f  beans/borlotti  beans/borlotti
   352   f  beans/borlotti  beans/borlotti
   294   f  beans/kidney    beans/kidney
   353   f  beans/kidney    beans/kidney
   295   f  beans/navy      beans/navy
   354   f  beans/navy      beans/navy
   296   f  beans/pinto     beans/pinto
   355   f  beans/pinto     beans/pinto
   297   f  beans/turtle    beans/turtle
   356   f  beans/turtle    beans/turtle
   298   $ hg debugwalk -v -Xbeans/black -Ibeans
   357   $ hg debugwalk -v -Xbeans/black -Ibeans
   299   matcher: <differencematcher m1=<includematcher includes='(?:beans(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
   358   * matcher:
       
   359   <differencematcher m1=
       
   360     <includematcher includes='(?:beans(?:/|$))'>, m2=
       
   361     <includematcher includes='(?:beans\\/black(?:/|$))'>>
   300   f  beans/borlotti  beans/borlotti
   362   f  beans/borlotti  beans/borlotti
   301   f  beans/kidney    beans/kidney
   363   f  beans/kidney    beans/kidney
   302   f  beans/navy      beans/navy
   364   f  beans/navy      beans/navy
   303   f  beans/pinto     beans/pinto
   365   f  beans/pinto     beans/pinto
   304   f  beans/turtle    beans/turtle
   366   f  beans/turtle    beans/turtle
   305   $ hg debugwalk -v -Xbeans/black beans/black
   367   $ hg debugwalk -v -Xbeans/black beans/black
   306   matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
   368   * matcher:
       
   369   <differencematcher m1=
       
   370     <patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=
       
   371     <includematcher includes='(?:beans\\/black(?:/|$))'>>
   307   $ hg debugwalk -v -Xbeans/black -Ibeans/black
   372   $ hg debugwalk -v -Xbeans/black -Ibeans/black
   308   matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans\\/black(?:/|$))'>>
   373   * matcher:
       
   374   <differencematcher m1=
       
   375     <includematcher includes='(?:beans\\/black(?:/|$))'>, m2=
       
   376     <includematcher includes='(?:beans\\/black(?:/|$))'>>
   309   $ hg debugwalk -v -Xbeans beans/black
   377   $ hg debugwalk -v -Xbeans beans/black
   310   matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
   378   * matcher:
       
   379   <differencematcher m1=
       
   380     <patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=
       
   381     <includematcher includes='(?:beans(?:/|$))'>>
   311   $ hg debugwalk -v -Xbeans -Ibeans/black
   382   $ hg debugwalk -v -Xbeans -Ibeans/black
   312   matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
   383   * matcher:
       
   384   <differencematcher m1=
       
   385     <includematcher includes='(?:beans\\/black(?:/|$))'>, m2=
       
   386     <includematcher includes='(?:beans(?:/|$))'>>
   313   $ hg debugwalk -v 'glob:mammals/../beans/b*'
   387   $ hg debugwalk -v 'glob:mammals/../beans/b*'
   314   matcher: <patternmatcher patterns='(?:beans\\/b[^/]*$)'>
   388   * matcher:
       
   389   <patternmatcher patterns='(?:beans\\/b[^/]*$)'>
   315   f  beans/black     beans/black
   390   f  beans/black     beans/black
   316   f  beans/borlotti  beans/borlotti
   391   f  beans/borlotti  beans/borlotti
   317   $ hg debugwalk -v '-X*/Procyonidae' mammals
   392   $ hg debugwalk -v '-X*/Procyonidae' mammals
   318   matcher: <differencematcher m1=<patternmatcher patterns='(?:mammals(?:/|$))'>, m2=<includematcher includes='(?:[^/]*\\/Procyonidae(?:/|$))'>>
   393   * matcher:
       
   394   <differencematcher m1=
       
   395     <patternmatcher patterns='(?:mammals(?:/|$))'>, m2=
       
   396     <includematcher includes='(?:[^/]*\\/Procyonidae(?:/|$))'>>
   319   f  mammals/skunk  mammals/skunk
   397   f  mammals/skunk  mammals/skunk
   320   $ hg debugwalk -v path:mammals
   398   $ hg debugwalk -v path:mammals
   321   matcher: <patternmatcher patterns='(?:mammals(?:/|$))'>
   399   * matcher:
       
   400   <patternmatcher patterns='(?:mammals(?:/|$))'>
   322   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   401   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   323   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   402   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   324   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   403   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   325   f  mammals/skunk                   mammals/skunk
   404   f  mammals/skunk                   mammals/skunk
   326   $ hg debugwalk -v ..
   405   $ hg debugwalk -v ..
   343   [255]
   422   [255]
   344 
   423 
   345 Test explicit paths and excludes:
   424 Test explicit paths and excludes:
   346 
   425 
   347   $ hg debugwalk -v fennel -X fennel
   426   $ hg debugwalk -v fennel -X fennel
   348   matcher: <differencematcher m1=<patternmatcher patterns='(?:fennel(?:/|$))'>, m2=<includematcher includes='(?:fennel(?:/|$))'>>
   427   * matcher:
       
   428   <differencematcher m1=
       
   429     <patternmatcher patterns='(?:fennel(?:/|$))'>, m2=
       
   430     <includematcher includes='(?:fennel(?:/|$))'>>
   349   $ hg debugwalk -v fennel -X 'f*'
   431   $ hg debugwalk -v fennel -X 'f*'
   350   matcher: <differencematcher m1=<patternmatcher patterns='(?:fennel(?:/|$))'>, m2=<includematcher includes='(?:f[^/]*(?:/|$))'>>
   432   * matcher:
       
   433   <differencematcher m1=
       
   434     <patternmatcher patterns='(?:fennel(?:/|$))'>, m2=
       
   435     <includematcher includes='(?:f[^/]*(?:/|$))'>>
   351   $ hg debugwalk -v beans/black -X 'path:beans'
   436   $ hg debugwalk -v beans/black -X 'path:beans'
   352   matcher: <differencematcher m1=<patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
   437   * matcher:
       
   438   <differencematcher m1=
       
   439     <patternmatcher patterns='(?:beans\\/black(?:/|$))'>, m2=
       
   440     <includematcher includes='(?:beans(?:/|$))'>>
   353   $ hg debugwalk -v -I 'path:beans/black' -X 'path:beans'
   441   $ hg debugwalk -v -I 'path:beans/black' -X 'path:beans'
   354   matcher: <differencematcher m1=<includematcher includes='(?:beans\\/black(?:/|$))'>, m2=<includematcher includes='(?:beans(?:/|$))'>>
   442   * matcher:
       
   443   <differencematcher m1=
       
   444     <includematcher includes='(?:beans\\/black(?:/|$))'>, m2=
       
   445     <includematcher includes='(?:beans(?:/|$))'>>
   355 
   446 
   356 Test absolute paths:
   447 Test absolute paths:
   357 
   448 
   358   $ hg debugwalk -v `pwd`/beans
   449   $ hg debugwalk -v `pwd`/beans
   359   matcher: <patternmatcher patterns='(?:beans(?:/|$))'>
   450   * matcher:
       
   451   <patternmatcher patterns='(?:beans(?:/|$))'>
   360   f  beans/black     beans/black
   452   f  beans/black     beans/black
   361   f  beans/borlotti  beans/borlotti
   453   f  beans/borlotti  beans/borlotti
   362   f  beans/kidney    beans/kidney
   454   f  beans/kidney    beans/kidney
   363   f  beans/navy      beans/navy
   455   f  beans/navy      beans/navy
   364   f  beans/pinto     beans/pinto
   456   f  beans/pinto     beans/pinto
   368   [255]
   460   [255]
   369 
   461 
   370 Test patterns:
   462 Test patterns:
   371 
   463 
   372   $ hg debugwalk -v glob:\*
   464   $ hg debugwalk -v glob:\*
   373   matcher: <patternmatcher patterns='(?:[^/]*$)'>
   465   * matcher:
       
   466   <patternmatcher patterns='(?:[^/]*$)'>
   374   f  fennel      fennel
   467   f  fennel      fennel
   375   f  fenugreek   fenugreek
   468   f  fenugreek   fenugreek
   376   f  fiddlehead  fiddlehead
   469   f  fiddlehead  fiddlehead
   377 #if eol-in-paths
   470 #if eol-in-paths
   378   $ echo glob:glob > glob:glob
   471   $ echo glob:glob > glob:glob
   379   $ hg addremove
   472   $ hg addremove
   380   adding glob:glob
   473   adding glob:glob
   381   warning: filename contains ':', which is reserved on Windows: 'glob:glob'
   474   warning: filename contains ':', which is reserved on Windows: 'glob:glob'
   382   $ hg debugwalk -v glob:\*
   475   $ hg debugwalk -v glob:\*
   383   matcher: <patternmatcher patterns='(?:[^/]*$)'>
   476   * matcher:
       
   477   <patternmatcher patterns='(?:[^/]*$)'>
   384   f  fennel      fennel
   478   f  fennel      fennel
   385   f  fenugreek   fenugreek
   479   f  fenugreek   fenugreek
   386   f  fiddlehead  fiddlehead
   480   f  fiddlehead  fiddlehead
   387   f  glob:glob   glob:glob
   481   f  glob:glob   glob:glob
   388   $ hg debugwalk -v glob:glob
   482   $ hg debugwalk -v glob:glob
   389   matcher: <patternmatcher patterns='(?:glob$)'>
   483   * matcher:
       
   484   <patternmatcher patterns='(?:glob$)'>
   390   glob: $ENOENT$
   485   glob: $ENOENT$
   391   $ hg debugwalk -v glob:glob:glob
   486   $ hg debugwalk -v glob:glob:glob
   392   matcher: <patternmatcher patterns='(?:glob\\:glob$)'>
   487   * matcher:
       
   488   <patternmatcher patterns='(?:glob\\:glob$)'>
   393   f  glob:glob  glob:glob  exact
   489   f  glob:glob  glob:glob  exact
   394   $ hg debugwalk -v path:glob:glob
   490   $ hg debugwalk -v path:glob:glob
   395   matcher: <patternmatcher patterns='(?:glob\\:glob(?:/|$))'>
   491   * matcher:
       
   492   <patternmatcher patterns='(?:glob\\:glob(?:/|$))'>
   396   f  glob:glob  glob:glob  exact
   493   f  glob:glob  glob:glob  exact
   397   $ rm glob:glob
   494   $ rm glob:glob
   398   $ hg addremove
   495   $ hg addremove
   399   removing glob:glob
   496   removing glob:glob
   400 #endif
   497 #endif
   401 
   498 
   402   $ hg debugwalk -v 'glob:**e'
   499   $ hg debugwalk -v 'glob:**e'
   403   matcher: <patternmatcher patterns='(?:.*e$)'>
   500   * matcher:
       
   501   <patternmatcher patterns='(?:.*e$)'>
   404   f  beans/turtle                    beans/turtle
   502   f  beans/turtle                    beans/turtle
   405   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   503   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   406 
   504 
   407   $ hg debugwalk -v 're:.*[kb]$'
   505   $ hg debugwalk -v 're:.*[kb]$'
   408   matcher: <patternmatcher patterns='(?:.*[kb]$)'>
   506   * matcher:
       
   507   <patternmatcher patterns='(?:.*[kb]$)'>
   409   f  beans/black    beans/black
   508   f  beans/black    beans/black
   410   f  fenugreek      fenugreek
   509   f  fenugreek      fenugreek
   411   f  mammals/skunk  mammals/skunk
   510   f  mammals/skunk  mammals/skunk
   412 
   511 
   413   $ hg debugwalk -v path:beans/black
   512   $ hg debugwalk -v path:beans/black
   414   matcher: <patternmatcher patterns='(?:beans\\/black(?:/|$))'>
   513   * matcher:
       
   514   <patternmatcher patterns='(?:beans\\/black(?:/|$))'>
   415   f  beans/black  beans/black  exact
   515   f  beans/black  beans/black  exact
   416   $ hg debugwalk -v path:beans//black
   516   $ hg debugwalk -v path:beans//black
   417   matcher: <patternmatcher patterns='(?:beans\\/black(?:/|$))'>
   517   * matcher:
       
   518   <patternmatcher patterns='(?:beans\\/black(?:/|$))'>
   418   f  beans/black  beans/black  exact
   519   f  beans/black  beans/black  exact
   419 
   520 
   420   $ hg debugwalk -v relglob:Procyonidae
   521   $ hg debugwalk -v relglob:Procyonidae
   421   matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae$)'>
   522   * matcher:
       
   523   <patternmatcher patterns='(?:(?:|.*/)Procyonidae$)'>
   422   $ hg debugwalk -v 'relglob:Procyonidae/**'
   524   $ hg debugwalk -v 'relglob:Procyonidae/**'
   423   matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$)'>
   525   * matcher:
       
   526   <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$)'>
   424   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   527   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   425   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   528   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   426   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   529   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   427   $ hg debugwalk -v 'relglob:Procyonidae/**' fennel
   530   $ hg debugwalk -v 'relglob:Procyonidae/**' fennel
   428   matcher: <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$|fennel(?:/|$))'>
   531   * matcher:
       
   532   <patternmatcher patterns='(?:(?:|.*/)Procyonidae\\/.*$|fennel(?:/|$))'>
   429   f  fennel                          fennel                          exact
   533   f  fennel                          fennel                          exact
   430   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   534   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   431   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   535   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   432   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   536   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   433   $ hg debugwalk -v beans 'glob:beans/*'
   537   $ hg debugwalk -v beans 'glob:beans/*'
   434   matcher: <patternmatcher patterns='(?:beans(?:/|$)|beans\\/[^/]*$)'>
   538   * matcher:
       
   539   <patternmatcher patterns='(?:beans(?:/|$)|beans\\/[^/]*$)'>
   435   f  beans/black     beans/black
   540   f  beans/black     beans/black
   436   f  beans/borlotti  beans/borlotti
   541   f  beans/borlotti  beans/borlotti
   437   f  beans/kidney    beans/kidney
   542   f  beans/kidney    beans/kidney
   438   f  beans/navy      beans/navy
   543   f  beans/navy      beans/navy
   439   f  beans/pinto     beans/pinto
   544   f  beans/pinto     beans/pinto
   440   f  beans/turtle    beans/turtle
   545   f  beans/turtle    beans/turtle
   441   $ hg debugwalk -v 'glob:mamm**'
   546   $ hg debugwalk -v 'glob:mamm**'
   442   matcher: <patternmatcher patterns='(?:mamm.*$)'>
   547   * matcher:
       
   548   <patternmatcher patterns='(?:mamm.*$)'>
   443   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   549   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   444   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   550   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   445   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   551   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   446   f  mammals/skunk                   mammals/skunk
   552   f  mammals/skunk                   mammals/skunk
   447   $ hg debugwalk -v 'glob:mamm**' fennel
   553   $ hg debugwalk -v 'glob:mamm**' fennel
   448   matcher: <patternmatcher patterns='(?:mamm.*$|fennel(?:/|$))'>
   554   * matcher:
       
   555   <patternmatcher patterns='(?:mamm.*$|fennel(?:/|$))'>
   449   f  fennel                          fennel                          exact
   556   f  fennel                          fennel                          exact
   450   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   557   f  mammals/Procyonidae/cacomistle  mammals/Procyonidae/cacomistle
   451   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   558   f  mammals/Procyonidae/coatimundi  mammals/Procyonidae/coatimundi
   452   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   559   f  mammals/Procyonidae/raccoon     mammals/Procyonidae/raccoon
   453   f  mammals/skunk                   mammals/skunk
   560   f  mammals/skunk                   mammals/skunk
   454   $ hg debugwalk -v 'glob:j*'
   561   $ hg debugwalk -v 'glob:j*'
   455   matcher: <patternmatcher patterns='(?:j[^/]*$)'>
   562   * matcher:
       
   563   <patternmatcher patterns='(?:j[^/]*$)'>
   456   $ hg debugwalk -v NOEXIST
   564   $ hg debugwalk -v NOEXIST
   457   matcher: <patternmatcher patterns='(?:NOEXIST(?:/|$))'>
   565   * matcher:
       
   566   <patternmatcher patterns='(?:NOEXIST(?:/|$))'>
   458   NOEXIST: * (glob)
   567   NOEXIST: * (glob)
   459 
   568 
   460 #if fifo
   569 #if fifo
   461   $ mkfifo fifo
   570   $ mkfifo fifo
   462   $ hg debugwalk -v fifo
   571   $ hg debugwalk -v fifo
   463   matcher: <patternmatcher patterns='(?:fifo(?:/|$))'>
   572   * matcher:
       
   573   <patternmatcher patterns='(?:fifo(?:/|$))'>
   464   fifo: unsupported file type (type is fifo)
   574   fifo: unsupported file type (type is fifo)
   465 #endif
   575 #endif
   466 
   576 
   467   $ rm fenugreek
   577   $ rm fenugreek
   468   $ hg debugwalk -v fenugreek
   578   $ hg debugwalk -v fenugreek
   469   matcher: <patternmatcher patterns='(?:fenugreek(?:/|$))'>
   579   * matcher:
       
   580   <patternmatcher patterns='(?:fenugreek(?:/|$))'>
   470   f  fenugreek  fenugreek  exact
   581   f  fenugreek  fenugreek  exact
   471   $ hg rm fenugreek
   582   $ hg rm fenugreek
   472   $ hg debugwalk -v fenugreek
   583   $ hg debugwalk -v fenugreek
   473   matcher: <patternmatcher patterns='(?:fenugreek(?:/|$))'>
   584   * matcher:
       
   585   <patternmatcher patterns='(?:fenugreek(?:/|$))'>
   474   f  fenugreek  fenugreek  exact
   586   f  fenugreek  fenugreek  exact
   475   $ touch new
   587   $ touch new
   476   $ hg debugwalk -v new
   588   $ hg debugwalk -v new
   477   matcher: <patternmatcher patterns='(?:new(?:/|$))'>
   589   * matcher:
       
   590   <patternmatcher patterns='(?:new(?:/|$))'>
   478   f  new  new  exact
   591   f  new  new  exact
   479 
   592 
   480   $ mkdir ignored
   593   $ mkdir ignored
   481   $ touch ignored/file
   594   $ touch ignored/file
   482   $ echo '^ignored$' > .hgignore
   595   $ echo '^ignored$' > .hgignore
   483   $ hg debugwalk -v ignored
   596   $ hg debugwalk -v ignored
   484   matcher: <patternmatcher patterns='(?:ignored(?:/|$))'>
   597   * matcher:
       
   598   <patternmatcher patterns='(?:ignored(?:/|$))'>
   485   $ hg debugwalk -v ignored/file
   599   $ hg debugwalk -v ignored/file
   486   matcher: <patternmatcher patterns='(?:ignored\\/file(?:/|$))'>
   600   * matcher:
       
   601   <patternmatcher patterns='(?:ignored\\/file(?:/|$))'>
   487   f  ignored/file  ignored/file  exact
   602   f  ignored/file  ignored/file  exact
   488 
   603 
   489 Test listfile and listfile0
   604 Test listfile and listfile0
   490 
   605 
   491   $ $PYTHON -c "open('listfile0', 'wb').write(b'fenugreek\0new\0')"
   606   $ $PYTHON -c "open('listfile0', 'wb').write(b'fenugreek\0new\0')"
   492   $ hg debugwalk -v -I 'listfile0:listfile0'
   607   $ hg debugwalk -v -I 'listfile0:listfile0'
   493   matcher: <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$))'>
   608   * matcher:
       
   609   <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$))'>
   494   f  fenugreek  fenugreek
   610   f  fenugreek  fenugreek
   495   f  new        new
   611   f  new        new
   496   $ $PYTHON -c "open('listfile', 'wb').write(b'fenugreek\nnew\r\nmammals/skunk\n')"
   612   $ $PYTHON -c "open('listfile', 'wb').write(b'fenugreek\nnew\r\nmammals/skunk\n')"
   497   $ hg debugwalk -v -I 'listfile:listfile'
   613   $ hg debugwalk -v -I 'listfile:listfile'
   498   matcher: <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$)|mammals\\/skunk(?:/|$))'>
   614   * matcher:
       
   615   <includematcher includes='(?:fenugreek(?:/|$)|new(?:/|$)|mammals\\/skunk(?:/|$))'>
   499   f  fenugreek      fenugreek
   616   f  fenugreek      fenugreek
   500   f  mammals/skunk  mammals/skunk
   617   f  mammals/skunk  mammals/skunk
   501   f  new            new
   618   f  new            new
   502 
   619 
   503   $ cd ..
   620   $ cd ..
   504   $ hg debugwalk -v -R t t/mammals/skunk
   621   $ hg debugwalk -v -R t t/mammals/skunk
   505   matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
   622   * matcher:
       
   623   <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
   506   f  mammals/skunk  t/mammals/skunk  exact
   624   f  mammals/skunk  t/mammals/skunk  exact
   507   $ mkdir t2
   625   $ mkdir t2
   508   $ cd t2
   626   $ cd t2
   509   $ hg debugwalk -v -R ../t ../t/mammals/skunk
   627   $ hg debugwalk -v -R ../t ../t/mammals/skunk
   510   matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
   628   * matcher:
       
   629   <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
   511   f  mammals/skunk  ../t/mammals/skunk  exact
   630   f  mammals/skunk  ../t/mammals/skunk  exact
   512   $ hg debugwalk -v --cwd ../t mammals/skunk
   631   $ hg debugwalk -v --cwd ../t mammals/skunk
   513   matcher: <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
   632   * matcher:
       
   633   <patternmatcher patterns='(?:mammals\\/skunk(?:/|$))'>
   514   f  mammals/skunk  mammals/skunk  exact
   634   f  mammals/skunk  mammals/skunk  exact
   515 
   635 
   516   $ cd ..
   636   $ cd ..
   517 
   637 
   518 Test split patterns on overflow
   638 Test split patterns on overflow