##// END OF EJS Templates
hghave: allow adding customized features at runtime...
hghave: allow adding customized features at runtime Before this patch, there is no way to add customized features to `hghave` without changing `hghave` and `hghave.py` themselves. This decreases reusability of `run-tests.py` framework for third party tools, because they may want to examine custom features at runtime (e.g. existence of some external tools). To allow adding customized features at runtime, this patch makes `hghave` import `hghaveaddon` module, only when `hghaveaddon.py` file can be found in directories below: - `TESTDIR` for invocation via `run-tests.py` - `.` for invocation via command line The path to the directory where `hghaveaddon.py` should be placed is added to `sys.path` only while importing `hghaveaddon`, because: - `.` may not be added to `PYTHONPATH` - adding additional path to `sys.path` may change behavior of subsequent `import` for other features `hghave` is terminated with exit code '2' at failure of `import hghaveaddon`, because exit code '2' terminates `run-tests.py` immediately. This is a one of preparations for issue4677.

File last commit:

r24471:1ff35d76 default
r25732:b94df10c default
Show More
test-mq-subrepo-svn.t
56 lines | 1.2 KiB | text/troff | Tads3Lexer
/ tests / test-mq-subrepo-svn.t
Matt Mackall
tests: replace exit 80 with #require
r22046 #require svn13
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300
Yuya Nishihara
tests: write hgrc of more than two lines by using shell heredoc...
r23172 $ cat <<EOF >> $HGRCPATH
> [extensions]
> mq =
> [diff]
> nodates = 1
> EOF
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300
Kevin Bullock
test-subrepo-mq-svn.t: correct comment...
r13326 fn to create new repository, and cd into it
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300 $ mkrepo() {
> hg init $1
> cd $1
> hg qinit
> }
handle svn subrepos safely
$ svnadmin create svn-repo-2499
Mads Kiilerich
tests: cleanup of svn url handling...
r17033
$ SVNREPOPATH=`pwd`/svn-repo-2499/project
#if windows
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ SVNREPOURL=file:///`$PYTHON -c "import urllib, sys; sys.stdout.write(urllib.quote(sys.argv[1]))" "$SVNREPOPATH"`
Mads Kiilerich
tests: cleanup of svn url handling...
r17033 #else
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ SVNREPOURL=file://`$PYTHON -c "import urllib, sys; sys.stdout.write(urllib.quote(sys.argv[1]))" "$SVNREPOPATH"`
Mads Kiilerich
tests: cleanup of svn url handling...
r17033 #endif
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300 $ mkdir -p svn-project-2499/trunk
Mads Kiilerich
tests: cleanup of svn url handling...
r17033 $ svn import -m 'init project' svn-project-2499 "$SVNREPOURL"
Eduard-Cristian Stefan
test-mq-subrepo-svn: enable for Windows
r16894 Adding svn-project-2499/trunk (glob)
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300
Committed revision 1.
qnew on repo w/svn subrepo
$ mkrepo repo-2499-svn-subrepo
Mads Kiilerich
tests: cleanup of svn url handling...
r17033 $ svn co "$SVNREPOURL"/trunk sub
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300 Checked out revision 1.
$ echo 'sub = [svn]sub' >> .hgsub
$ hg add .hgsub
Matt Mackall
tests: fixes for svn 1.4.2
r13410 $ hg status -S -X '**/format'
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300 A .hgsub
$ hg qnew -m0 0.diff
$ cd sub
$ echo a > a
$ svn add a
A a
$ svn st
Matt Mackall
tests: fixes for svn 1.4.2
r13410 A* a (glob)
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300 $ cd ..
$ hg status -S # doesn't show status for svn subrepos (yet)
$ hg qnew -m1 1.diff
FUJIWARA Katsunori
subrepo: add bailifchanged to centralize raising Abort if subrepo is dirty...
r24471 abort: uncommitted changes in subrepository 'sub'
Kevin Bullock
subrepo: separate out mq+svn subrepo tests...
r13300 [255]
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..