view tests/test-globalopts @ 6805:482581431dcd

Sort removes first when applying updates (fixes issues 750 and 912) This change ensures that removes happen first in applyupdates(). This avoids issues where we try to make a case-only rename of a file on a case insensitive system. Without this patch, the add of the new name happens before the remove of the old one - which results in the file not existing, as the two names are effectively the same. With the patch, the old name gets removed then the new one gets added, which is always safe.
author Paul Moore <p.f.moore@gmail.com>
date Tue, 01 Jul 2008 17:59:31 +0100
parents aafdea37f796
children dbc40381620e
line wrap: on
line source

#!/bin/sh

hg init a
cd a
echo a > a
hg ci -A -d'1 0' -m a

cd ..

hg init b
cd b
echo b > b
hg ci -A -d'1 0' -m b

cd ..

hg clone a c
cd c
hg pull -f ../b
hg merge

cd ..

echo %% -R/--repository
hg -R a tip
hg --repository b tip

echo %% implicit -R
hg ann a/a
hg ann a/a a/a
hg ann a/a b/b
hg -R b ann a/a
hg log

echo %% abbrev of long option
hg --repo c tip

echo "%% earlygetopt with duplicate options (36d23de02da1)"
hg --cwd a --cwd b --cwd c tip
hg --repo c --repository b -R a tip

echo "%% earlygetopt short option without following space"
hg -q -Rb tip

echo "%% earlygetopt with illegal abbreviations"
hg --confi "foo.bar=baz"
hg --cw a tip
hg --rep a tip
hg --repositor a tip
hg -qR a tip
hg -qRa tip

echo %% --cwd
hg --cwd a parents

echo %% -y/--noninteractive - just be sure it is parsed
hg --cwd a tip -q --noninteractive
hg --cwd a tip -q -y

echo %% -q/--quiet
hg -R a -q tip
hg -R b -q tip
hg -R c --quiet parents

echo %% -v/--verbose
hg --cwd c head -v
hg --cwd b tip --verbose

echo %% --config
hg --cwd c --config paths.quuxfoo=bar paths | grep quuxfoo > /dev/null && echo quuxfoo
hg --cwd c --config '' tip -q
hg --cwd c --config a.b tip -q
hg --cwd c --config a tip -q
hg --cwd c --config a.= tip -q
hg --cwd c --config .b= tip -q

echo %% --debug
hg --cwd c log --debug

echo %% --traceback
hg --cwd c --config x --traceback tip 2>&1 | grep -i 'traceback'

echo %% --time
hg --cwd a --time tip 2>&1 | grep '^Time:' | sed 's/[0-9][0-9]*/x/g'

echo %% --version
hg --version -q | sed 's/version [^)]*/version xxx/'

echo %% -h/--help
hg -h
hg --help

echo %% not tested: --debugger