tests/test-walk
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Sat, 10 Mar 2007 23:00:49 -0300
changeset 4189 b1716a1f79c4
parent 4188 ce3ecf99a18b
child 4190 769bc4af561d
permissions -rwxr-xr-x
util._matcher: fix handling of path: patterns
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     1
#!/bin/sh
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     2
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     3
mkdir t
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     4
cd t
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     5
hg init
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     6
mkdir -p beans
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     7
for b in kidney navy turtle borlotti black pinto; do
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     8
    echo $b > beans/$b
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     9
done
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    10
mkdir -p mammals/Procyonidae
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    11
for m in cacomistle coatimundi raccoon; do
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    12
    echo $m > mammals/Procyonidae/$m
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    13
done
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    14
echo skunk > mammals/skunk
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    15
echo fennel > fennel
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    16
echo fenugreek > fenugreek
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    17
echo fiddlehead > fiddlehead
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    18
echo glob:glob > glob:glob
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    19
hg addremove
1933
7544700fd931 Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1568
diff changeset
    20
hg commit -m "commit #0" -d "1000000 0"
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    21
hg debugwalk
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    22
cd mammals
1568
1d7d0c07e8f3 make all commands be repo-wide by default
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1413
diff changeset
    23
hg debugwalk .
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    24
hg debugwalk Procyonidae
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    25
cd Procyonidae
1568
1d7d0c07e8f3 make all commands be repo-wide by default
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1413
diff changeset
    26
hg debugwalk .
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    27
hg debugwalk ..
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    28
cd ..
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    29
hg debugwalk ../beans
1568
1d7d0c07e8f3 make all commands be repo-wide by default
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1413
diff changeset
    30
hg debugwalk .
1976
df8416346bb7 Enable path validation for copy, rename, debugwalk and other canonpath users.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
    31
hg debugwalk .hg
df8416346bb7 Enable path validation for copy, rename, debugwalk and other canonpath users.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
    32
hg debugwalk ../.hg
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    33
cd ..
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    34
hg debugwalk -Ibeans
1413
1c64c628d15f Do not use 'glob' expansion by default on OS != 'nt'
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 896
diff changeset
    35
hg debugwalk 'glob:mammals/../beans/b*'
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    36
hg debugwalk '-X*/Procyonidae' mammals
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    37
hg debugwalk path:mammals
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    38
hg debugwalk ..
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    39
hg debugwalk beans/../..
1976
df8416346bb7 Enable path validation for copy, rename, debugwalk and other canonpath users.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
    40
hg debugwalk .hg
df8416346bb7 Enable path validation for copy, rename, debugwalk and other canonpath users.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
    41
hg debugwalk beans/../.hg
df8416346bb7 Enable path validation for copy, rename, debugwalk and other canonpath users.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
    42
hg debugwalk beans/../.hg/data
df8416346bb7 Enable path validation for copy, rename, debugwalk and other canonpath users.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1933
diff changeset
    43
hg debugwalk beans/.hg
893
36c991554ebb Turn off testing of absolute paths for now.
Bryan O'Sullivan <bos@serpentine.com>
parents: 889
diff changeset
    44
# Don't know how to test absolute paths without always getting a false
36c991554ebb Turn off testing of absolute paths for now.
Bryan O'Sullivan <bos@serpentine.com>
parents: 889
diff changeset
    45
# error.
36c991554ebb Turn off testing of absolute paths for now.
Bryan O'Sullivan <bos@serpentine.com>
parents: 889
diff changeset
    46
#hg debugwalk `pwd`/beans
36c991554ebb Turn off testing of absolute paths for now.
Bryan O'Sullivan <bos@serpentine.com>
parents: 889
diff changeset
    47
#hg debugwalk `pwd`/..
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    48
hg debugwalk glob:\*
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    49
hg debugwalk 're:.*[kb]$'
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    50
hg debugwalk path:beans/black
4189
b1716a1f79c4 util._matcher: fix handling of path: patterns
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4188
diff changeset
    51
hg debugwalk path:beans//black
4188
ce3ecf99a18b util._matcher: fix handling of relglob: patterns
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4187
diff changeset
    52
hg debugwalk relglob:Procyonidae
ce3ecf99a18b util._matcher: fix handling of relglob: patterns
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4187
diff changeset
    53
hg debugwalk relglob:Procyonidae/ fennel
1413
1c64c628d15f Do not use 'glob' expansion by default on OS != 'nt'
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 896
diff changeset
    54
hg debugwalk beans 'glob:beans/*'
4187
01c4ea5e788c A 'glob:foo?bar' pattern determines a root - the tree root
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 1976
diff changeset
    55
hg debugwalk 'glob:mamm**'
01c4ea5e788c A 'glob:foo?bar' pattern determines a root - the tree root
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 1976
diff changeset
    56
hg debugwalk 'glob:mamm**' fennel
1413
1c64c628d15f Do not use 'glob' expansion by default on OS != 'nt'
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 896
diff changeset
    57
hg debugwalk 'glob:j*'
889
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    58
hg debugwalk NOEXIST
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    59
mkfifo fifo
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    60
hg debugwalk fifo
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    61
rm fenugreek
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    62
hg debugwalk fenugreek
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    63
hg rm fenugreek
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    64
hg debugwalk fenugreek
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    65
touch new
0a06d9d373c3 Add unit tests for walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    66
hg debugwalk new