Mercurial > hg
annotate tests/test-journal.t @ 29481:5caa415aa48b
tests: better testing of loaded certificates
Tests were failing on systems like RHEL 7 where loading the system
certificates results in CA certs being reported to Python. We add
a feature that detects when we're able to load *and detect* the
loading of system certificates. We update the tests to cover the
3 scenarios:
1) system CAs are loadable and detected
2) system CAs are loadable but not detected
3) system CAs aren't loadable
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Fri, 01 Jul 2016 19:27:34 -0700 |
parents | cf092a3d202a |
children | 8361131b4768 |
rev | line source |
---|---|
29443
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
1 Tests for the journal extension; records bookmark locations. |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
2 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
3 $ cat >> testmocks.py << EOF |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
4 > # mock out util.getuser() and util.makedate() to supply testable values |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
5 > import os |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
6 > from mercurial import util |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
7 > def mockgetuser(): |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
8 > return 'foobar' |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
9 > |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
10 > def mockmakedate(): |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
11 > filename = os.path.join(os.environ['TESTTMP'], 'testtime') |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
12 > try: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
13 > with open(filename, 'rb') as timef: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
14 > time = float(timef.read()) + 1 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
15 > except IOError: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
16 > time = 0.0 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
17 > with open(filename, 'wb') as timef: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
18 > timef.write(str(time)) |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
19 > return (time, 0) |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
20 > |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
21 > util.getuser = mockgetuser |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
22 > util.makedate = mockmakedate |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
23 > EOF |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
24 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
25 $ cat >> $HGRCPATH << EOF |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
26 > [extensions] |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
27 > journal= |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
28 > testmocks=`pwd`/testmocks.py |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
29 > EOF |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
30 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
31 Setup repo |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
32 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
33 $ hg init repo |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
34 $ cd repo |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
35 $ echo a > a |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
36 $ hg commit -Aqm a |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
37 $ echo b > a |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
38 $ hg commit -Aqm b |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
39 $ hg up 0 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
40 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
41 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
42 Test empty journal |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
43 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
44 $ hg journal |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
45 previous locations of all bookmarks: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
46 no recorded locations |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
47 $ hg journal foo |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
48 previous locations of 'foo': |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
49 no recorded locations |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
50 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
51 Test that bookmarks are tracked |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
52 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
53 $ hg book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
54 $ hg journal bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
55 previous locations of 'bar': |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
56 1e6c11564562 book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
57 $ hg book -f bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
58 $ hg journal bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
59 previous locations of 'bar': |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
60 cb9a9f314b8b book -f bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
61 1e6c11564562 book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
62 $ hg up |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
63 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
64 updating bookmark bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
65 $ hg journal bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
66 previous locations of 'bar': |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
67 1e6c11564562 up |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
68 cb9a9f314b8b book -f bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
69 1e6c11564562 book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
70 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
71 Test that you can list all bookmarks as well as limit the list or filter on them |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
72 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
73 $ hg book -r tip baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
74 $ hg journal |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
75 previous locations of all bookmarks: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
76 1e6c11564562 book -r tip baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
77 1e6c11564562 up |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
78 cb9a9f314b8b book -f bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
79 1e6c11564562 book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
80 $ hg journal --limit 2 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
81 previous locations of all bookmarks: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
82 1e6c11564562 book -r tip baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
83 1e6c11564562 up |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
84 $ hg journal baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
85 previous locations of 'baz': |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
86 1e6c11564562 book -r tip baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
87 $ hg journal bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
88 previous locations of 'bar': |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
89 1e6c11564562 up |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
90 cb9a9f314b8b book -f bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
91 1e6c11564562 book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
92 $ hg journal foo |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
93 previous locations of 'foo': |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
94 no recorded locations |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
95 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
96 Test that verbose and commit output work |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
97 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
98 $ hg journal --verbose |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
99 previous locations of all bookmarks: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
100 000000000000 -> 1e6c11564562 foobar 1970-01-01 00:00 +0000 book -r tip baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
101 cb9a9f314b8b -> 1e6c11564562 foobar 1970-01-01 00:00 +0000 up |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
102 1e6c11564562 -> cb9a9f314b8b foobar 1970-01-01 00:00 +0000 book -f bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
103 000000000000 -> 1e6c11564562 foobar 1970-01-01 00:00 +0000 book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
104 $ hg journal --commit |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
105 previous locations of all bookmarks: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
106 1e6c11564562 book -r tip baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
107 changeset: 1:1e6c11564562 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
108 bookmark: bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
109 bookmark: baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
110 tag: tip |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
111 user: test |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
112 date: Thu Jan 01 00:00:00 1970 +0000 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
113 summary: b |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
114 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
115 1e6c11564562 up |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
116 changeset: 1:1e6c11564562 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
117 bookmark: bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
118 bookmark: baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
119 tag: tip |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
120 user: test |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
121 date: Thu Jan 01 00:00:00 1970 +0000 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
122 summary: b |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
123 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
124 cb9a9f314b8b book -f bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
125 changeset: 0:cb9a9f314b8b |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
126 user: test |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
127 date: Thu Jan 01 00:00:00 1970 +0000 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
128 summary: a |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
129 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
130 1e6c11564562 book -r tip bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
131 changeset: 1:1e6c11564562 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
132 bookmark: bar |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
133 bookmark: baz |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
134 tag: tip |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
135 user: test |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
136 date: Thu Jan 01 00:00:00 1970 +0000 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
137 summary: b |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
138 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
139 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
140 Test for behaviour on unexpected storage version information |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
141 |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
142 $ printf '42\0' > .hg/journal |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
143 $ hg journal |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
144 previous locations of all bookmarks: |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
145 abort: unknown journal file version '42' |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
146 [255] |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
147 $ hg book -r tip doomed |
cf092a3d202a
journal: new experimental extension
Martijn Pieters <mjpieters@fb.com>
parents:
diff
changeset
|
148 unsupported journal file version '42' |