view tests/test-locate @ 4307:702f48570eb3

change relglob: patterns to be consistent with glob: patterns With this change, you have to use "hg locate 'hgweb/**'" to locate all the files in directories named hgweb. OTOH, "hg locate '*l'" will locate only files that end with "l" - e.g. a file called "hg.py" will not be matched just because it's in a directory whose name ends with "l" (e.g. "mercurial").
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Wed, 04 Apr 2007 04:22:06 -0300
parents eca3277c4220
children a5cde03cd019
line wrap: on
line source

#!/bin/sh

hglocate()
{
    echo "hg locate $@"
    hg locate "$@"
    ret=$?
    echo
    return $ret
}

mkdir t
cd t
hg init
echo 0 > a
echo 0 > b
echo 0 > t.h
mkdir t
echo 0 > t/x
echo 0 > t/b
echo 0 > t/e.h
mkdir dir.h
echo 0 > dir.h/foo
hg ci -A -m m -d "1000000 0"
touch nottracked
hglocate a && echo locate succeeded || echo locate failed
hglocate NONEXISTENT && echo locate succeeded || echo locate failed
hglocate
hg rm a
hg ci -m m -d "1000000 0"
hglocate a
hglocate NONEXISTENT
hglocate
hglocate -r 0 a
hglocate -r 0 NONEXISTENT
hglocate -r 0
echo % -I/-X with relative path should work
cd t
hglocate
hglocate -I ../t
# test issue294
cd ..
rm -r t
hglocate 't/**'
mkdir otherdir
cd otherdir
hglocate b
hglocate '*.h'
hglocate path:t/x
hglocate 're:.*\.h$'
hglocate -r 0 b
hglocate -r 0 '*.h'
hglocate -r 0 path:t/x
hglocate -r 0 're:.*\.h$'