Mercurial > hg
annotate tests/test-devel-warnings.t @ 25005:5ddbb024c2e9
tests: fix hidden repeatability problem with age filter test
This test was corrupting later cases in mysterious ways because the
hash of the changeset was changing every day at midnight. This made it
hard to figure out why tests were consistently breaking after they
were consistently working.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Tue, 12 May 2015 12:33:42 -0500 |
parents | cd89f4e6faf2 |
children | 8f88f768e24c |
rev | line source |
---|---|
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
1 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
2 $ cat << EOF > buggylocking.py |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
3 > """A small extension that acquire locks in the wrong order |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
4 > """ |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
5 > |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
6 > from mercurial import cmdutil |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
7 > |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
8 > cmdtable = {} |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
9 > command = cmdutil.command(cmdtable) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
10 > |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
11 > @command('buggylocking', [], '') |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
12 > def buggylocking(ui, repo): |
24388
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
13 > tr = repo.transaction('buggy') |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
14 > lo = repo.lock() |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
15 > wl = repo.wlock() |
24392
dc7588ce06b3
tests: avoid deprecation warning
Matt Mackall <mpm@selenic.com>
parents:
24388
diff
changeset
|
16 > wl.release() |
dc7588ce06b3
tests: avoid deprecation warning
Matt Mackall <mpm@selenic.com>
parents:
24388
diff
changeset
|
17 > lo.release() |
24744
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
18 > |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
19 > @command('properlocking', [], '') |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
20 > def properlocking(ui, repo): |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
21 > """check that reentrance is fine""" |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
22 > wl = repo.wlock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
23 > lo = repo.lock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
24 > tr = repo.transaction('proper') |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
25 > tr2 = repo.transaction('proper') |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
26 > lo2 = repo.lock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
27 > wl2 = repo.wlock() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
28 > wl2.release() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
29 > lo2.release() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
30 > tr2.close() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
31 > tr.close() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
32 > lo.release() |
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
33 > wl.release() |
24750
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
34 > |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
35 > @command('nowaitlocking', [], '') |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
36 > def nowaitlocking(ui, repo): |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
37 > lo = repo.lock() |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
38 > wl = repo.wlock(wait=False) |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
39 > wl.release() |
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
40 > lo.release() |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
41 > EOF |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
42 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
43 $ cat << EOF >> $HGRCPATH |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
44 > [extensions] |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
45 > buggylocking=$TESTTMP/buggylocking.py |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
46 > [devel] |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
47 > all=1 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
48 > EOF |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
49 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
50 $ hg init lock-checker |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
51 $ cd lock-checker |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
52 $ hg buggylocking |
24755
cd89f4e6faf2
devel-warn: add a prefix to all messages ("devel-warn: ")
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24750
diff
changeset
|
53 devel-warn: transaction with no lock at: $TESTTMP/buggylocking.py:11 (buggylocking) |
cd89f4e6faf2
devel-warn: add a prefix to all messages ("devel-warn: ")
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24750
diff
changeset
|
54 devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:13 (buggylocking) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
55 $ cat << EOF >> $HGRCPATH |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
56 > [devel] |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
57 > all=0 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
58 > check-locks=1 |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
59 > EOF |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
60 $ hg buggylocking |
24755
cd89f4e6faf2
devel-warn: add a prefix to all messages ("devel-warn: ")
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24750
diff
changeset
|
61 devel-warn: transaction with no lock at: $TESTTMP/buggylocking.py:11 (buggylocking) |
cd89f4e6faf2
devel-warn: add a prefix to all messages ("devel-warn: ")
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24750
diff
changeset
|
62 devel-warn: "wlock" acquired after "lock" at: $TESTTMP/buggylocking.py:13 (buggylocking) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
63 $ hg buggylocking --traceback |
24755
cd89f4e6faf2
devel-warn: add a prefix to all messages ("devel-warn: ")
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24750
diff
changeset
|
64 devel-warn: transaction with no lock at: |
24555
1b97cc5d2272
tests: fix py2.4 glob for devel warnings
Matt Mackall <mpm@selenic.com>
parents:
24392
diff
changeset
|
65 */hg:* in * (glob) |
24388
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
66 */mercurial/dispatch.py:* in run (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
67 */mercurial/dispatch.py:* in dispatch (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
68 */mercurial/dispatch.py:* in _runcatch (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
69 */mercurial/dispatch.py:* in _dispatch (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
70 */mercurial/dispatch.py:* in runcommand (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
71 */mercurial/dispatch.py:* in _runcommand (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
72 */mercurial/dispatch.py:* in checkargs (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
73 */mercurial/dispatch.py:* in <lambda> (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
74 */mercurial/util.py:* in check (glob) |
026f8af88e49
devel: also warn about transaction started without a lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24386
diff
changeset
|
75 $TESTTMP/buggylocking.py:* in buggylocking (glob) |
24755
cd89f4e6faf2
devel-warn: add a prefix to all messages ("devel-warn: ")
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24750
diff
changeset
|
76 devel-warn: "wlock" acquired after "lock" at: |
24555
1b97cc5d2272
tests: fix py2.4 glob for devel warnings
Matt Mackall <mpm@selenic.com>
parents:
24392
diff
changeset
|
77 */hg:* in * (glob) |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
78 */mercurial/dispatch.py:* in run (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
79 */mercurial/dispatch.py:* in dispatch (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
80 */mercurial/dispatch.py:* in _runcatch (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
81 */mercurial/dispatch.py:* in _dispatch (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
82 */mercurial/dispatch.py:* in runcommand (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
83 */mercurial/dispatch.py:* in _runcommand (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
84 */mercurial/dispatch.py:* in checkargs (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
85 */mercurial/dispatch.py:* in <lambda> (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
86 */mercurial/util.py:* in check (glob) |
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
87 $TESTTMP/buggylocking.py:* in buggylocking (glob) |
24744
bedefc611f25
wlock: only issue devel warning when actually acquiring the lock
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24555
diff
changeset
|
88 $ hg properlocking |
24750
aaf835407bf2
wlock: do not warn for non-wait locking
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
24749
diff
changeset
|
89 $ hg nowaitlocking |
24386
d6ac30f4edef
devel: move the lock-checking code into core
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
90 $ cd .. |