test: extract develwarn transaction testing in its own command

The lack of locking for a transation is about to change from a warning to an
error. We first extract the test decidated to this warning to make the next
changeset clearer.
This commit is contained in:
Pierre-Yves David 2016-05-05 16:13:22 +02:00
parent d3f28a7e4b
commit 85fe13b2bd

View File

@ -10,14 +10,17 @@
> >
> @command('buggylocking', [], '') > @command('buggylocking', [], '')
> def buggylocking(ui, repo): > def buggylocking(ui, repo):
> tr = repo.transaction('buggy')
> # make sure we rollback the transaction as we don't want to rely on the__del__
> tr.release()
> lo = repo.lock() > lo = repo.lock()
> wl = repo.wlock() > wl = repo.wlock()
> wl.release() > wl.release()
> lo.release() > lo.release()
> >
> @command('buggytransaction', [], '')
> def buggylocking(ui, repo):
> tr = repo.transaction('buggy')
> # make sure we rollback the transaction as we don't want to rely on the__del__
> tr.release()
>
> @command('properlocking', [], '') > @command('properlocking', [], '')
> def properlocking(ui, repo): > def properlocking(ui, repo):
> """check that reentrance is fine""" > """check that reentrance is fine"""
@ -74,7 +77,6 @@
$ hg init lock-checker $ hg init lock-checker
$ cd lock-checker $ cd lock-checker
$ hg buggylocking $ hg buggylocking
devel-warn: transaction with no lock at: $TESTTMP/buggylocking.py:* (buggylocking) (glob)
devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:* (buggylocking) (glob) devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:* (buggylocking) (glob)
$ cat << EOF >> $HGRCPATH $ cat << EOF >> $HGRCPATH
> [devel] > [devel]
@ -82,21 +84,8 @@
> check-locks=1 > check-locks=1
> EOF > EOF
$ hg buggylocking $ hg buggylocking
devel-warn: transaction with no lock at: $TESTTMP/buggylocking.py:* (buggylocking) (glob)
devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:* (buggylocking) (glob) devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:* (buggylocking) (glob)
$ hg buggylocking --traceback $ hg buggylocking --traceback
devel-warn: transaction with no lock at:
*/hg:* in * (glob)
*/mercurial/dispatch.py:* in run (glob)
*/mercurial/dispatch.py:* in dispatch (glob)
*/mercurial/dispatch.py:* in _runcatch (glob)
*/mercurial/dispatch.py:* in _dispatch (glob)
*/mercurial/dispatch.py:* in runcommand (glob)
*/mercurial/dispatch.py:* in _runcommand (glob)
*/mercurial/dispatch.py:* in checkargs (glob)
*/mercurial/dispatch.py:* in <lambda> (glob)
*/mercurial/util.py:* in check (glob)
$TESTTMP/buggylocking.py:* in buggylocking (glob)
devel-warn: "wlock" acquired after "lock" at: devel-warn: "wlock" acquired after "lock" at:
*/hg:* in * (glob) */hg:* in * (glob)
*/mercurial/dispatch.py:* in run (glob) */mercurial/dispatch.py:* in run (glob)
@ -167,4 +156,10 @@
$TESTTMP/buggylocking.py:* in oldanddeprecated (glob) $TESTTMP/buggylocking.py:* in oldanddeprecated (glob)
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> oldanddeprecated --traceback exited 0 after * seconds (glob) 1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> oldanddeprecated --traceback exited 0 after * seconds (glob)
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> blackbox -l 9 1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> blackbox -l 9
Test programming error failure:
$ hg buggytransaction
devel-warn: transaction with no lock at: $TESTTMP/buggylocking.py:* (buggylocking) (glob)
$ cd .. $ cd ..