##// END OF EJS Templates
logcmdutil: rewrite jsonchangeset printer to be backed by jsonformatter...
logcmdutil: rewrite jsonchangeset printer to be backed by jsonformatter This is a bit slower than the original implementation, but I don't think that would actually matter. It's still faster than full templating. $ hg log -Tjson -r0:5000 --time > /dev/null (orig) time: real 1.550 secs (user 1.500+0.000 sys 0.040+0.000) (new) time: real 1.810 secs (user 1.740+0.000 sys 0.070+0.000) cf. $ hg log -Tdefault -r0:5000 --time > /dev/null time: real 4.980 secs (user 4.850+0.000 sys 0.130+0.000) $ hg log -r0:5000 --time > /dev/null time: real 2.340 secs (user 2.220+0.000 sys 0.100+0.000) $ hg log -r0:5000 -q --time > /dev/null time: real 0.750 secs (user 0.670+0.000 sys 0.070+0.000) The test output changes because keys are sorted alphabetically.

File last commit:

r37493:152f1b47 default
r37790:814151cd default
Show More
helpers-testrepo.sh
60 lines | 1.9 KiB | application/x-sh | BashLexer
/ tests / helpers-testrepo.sh
Yuya Nishihara
tests: use system hg only if changelog or dirstate can't be read...
r33201 # In most cases, the mercurial repository can be read by the bundled hg, but
# that isn't always true because third-party extensions may change the store
# format, for example. In which case, the system hg installation is used.
timeless
tests: silence test-repo obsolete warning...
r29219 #
Adam Simpkins
tests: use the system hg for examining the local repository...
r33116 # We want to use the hg version being tested when interacting with the test
# repository, and the system hg when interacting with the mercurial source code
# repository.
timeless
tests: silence test-repo obsolete warning...
r29219 #
Adam Simpkins
tests: use the system hg for examining the local repository...
r33116 # The mercurial source repository was typically orignally cloned with the
# system mercurial installation, and may require extensions or settings from
# the system installation.
Gregory Szorc
tests: conditionalize tests based on presence of custom extensions...
r37360
Yuya Nishihara
tests: quote variable passed to shell test command
r37493 if [ -n "$HGTESTEXTRAEXTENSIONS" ]; then
Gregory Szorc
tests: conditionalize tests based on presence of custom extensions...
r37360 for extension in $HGTESTEXTRAEXTENSIONS; do
extraoptions="$extraoptions --config extensions.$extension=!"
done
fi
Adam Simpkins
tests: use the system hg for examining the local repository...
r33116 syshg () {
(
syshgenv
exec hg "$@"
)
}
# Revert the environment so that running "hg" runs the system hg
# rather than the test hg installation.
syshgenv () {
Adam Simpkins
tests: more completely restore the environment in syshgenv...
r33121 . "$HGTEST_RESTOREENV"
Adam Simpkins
tests: use the system hg for examining the local repository...
r33116 HGPLAIN=1
export HGPLAIN
}
Jun Wu
tests: do not use system hg if it does not have "files" command...
r33120
Yuya Nishihara
tests: restore workaround of obsolete warning from 3c9066ed557c...
r33200 # The test-repo is a live hg repository which may have evolution markers
# created, e.g. when a ~/.hgrc enabled evolution.
#
# Tests may be run using a custom HGRCPATH, which do not enable evolution
# markers by default.
#
# If test-repo includes evolution markers, and we do not enable evolution
# markers, hg will occasionally complain when it notices them, which disrupts
# tests resulting in sporadic failures.
#
# Since we aren't performing any write operations on the test-repo, there's
# no harm in telling hg that we support evolution markers, which is what the
# following lines for the hgrc file do:
cat >> "$HGRCPATH" << EOF
[experimental]
evolution = createmarkers
EOF
Yuya Nishihara
tests: use system hg only if changelog or dirstate can't be read...
r33201 # Use the system hg command if the bundled hg can't read the repository with
# no warning nor error.
if [ -n "`hg id -R "$TESTDIR/.." 2>&1 >/dev/null`" ]; then
Yuya Nishihara
tests: alias syshg and syshgenv so they can be switched conditionally
r33199 alias testrepohg=syshg
alias testrepohgenv=syshgenv
else
Gregory Szorc
tests: conditionalize tests based on presence of custom extensions...
r37360 alias testrepohg="hg $extraoptions"
Yuya Nishihara
tests: alias syshg and syshgenv so they can be switched conditionally
r33199 alias testrepohgenv=:
Jun Wu
tests: do not use system hg if it does not have "files" command...
r33120 fi