Mercurial > public > mercurial-scm > hg-stable
annotate tests/common-pattern.py @ 35268:ad5f2b923b0d
push: include a 'check:bookmarks' part when possible
Before updating the actual bookmark update, we can start with updating the way
we check for push race. Checking bookmarks state earlier is useful even if we
still use pushkey. Aborting before the changegroup is added can save a lot of
time.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Mon, 13 Nov 2017 04:22:45 +0100 |
parents | f0445eea9b93 |
children | 991e4404e910 |
rev | line source |
---|---|
35093
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
1 # common patterns in test at can safely be replaced |
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
2 from __future__ import absolute_import |
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
3 |
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
4 substitutions = [ |
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
5 # list of possible compressions |
35243
f0445eea9b93
test: fix common-pattern for pure variant
Boris Feld <boris.feld@octobus.net>
parents:
35242
diff
changeset
|
6 (br'(zstd,)?zlib,none,bzip2', |
35093
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
7 br'$USUAL_COMPRESSIONS$' |
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
8 ), |
35094
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
9 # capabilities sent through http |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
10 (br'bundlecaps=HG20%2Cbundle2%3DHG20%250A' |
35268
ad5f2b923b0d
push: include a 'check:bookmarks' part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35243
diff
changeset
|
11 br'bookmarks%250A' |
35094
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
12 br'changegroup%253D01%252C02%250A' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
13 br'digests%253Dmd5%252Csha1%252Csha512%250A' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
14 br'error%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250A' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
15 br'hgtagsfnodes%250A' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
16 br'listkeys%250A' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
17 br'phases%253Dheads%250A' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
18 br'pushkey%250A' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
19 br'remote-changegroup%253Dhttp%252Chttps', |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
20 # (the replacement patterns) |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
21 br'$USUAL_BUNDLE_CAPS$' |
b4767ae63b32
test-pattern: register current the bundlecaps string
Boris Feld <boris.feld@octobus.net>
parents:
35093
diff
changeset
|
22 ), |
35095
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
23 # bundle2 capabilities sent through ssh |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
24 (br'bundle2=HG20%0A' |
35268
ad5f2b923b0d
push: include a 'check:bookmarks' part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35243
diff
changeset
|
25 br'bookmarks%0A' |
35095
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
26 br'changegroup%3D01%2C02%0A' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
27 br'digests%3Dmd5%2Csha1%2Csha512%0A' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
28 br'error%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0A' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
29 br'hgtagsfnodes%0A' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
30 br'listkeys%0A' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
31 br'phases%3Dheads%0A' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
32 br'pushkey%0A' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
33 br'remote-changegroup%3Dhttp%2Chttps', |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
34 # (replacement patterns) |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
35 br'$USUAL_BUNDLE2_CAPS$' |
c4ec72a10798
test-pattern: register the current the bundle2 capabilities string
Boris Feld <boris.feld@octobus.net>
parents:
35094
diff
changeset
|
36 ), |
35096
7f0c9e28a816
test-pattern: substitute the HTTP log timestamp too
Boris Feld <boris.feld@octobus.net>
parents:
35095
diff
changeset
|
37 # HTTP log dates |
7f0c9e28a816
test-pattern: substitute the HTTP log timestamp too
Boris Feld <boris.feld@octobus.net>
parents:
35095
diff
changeset
|
38 (br' - - \[\d\d/.../2\d\d\d \d\d:\d\d:\d\d] "GET', |
7f0c9e28a816
test-pattern: substitute the HTTP log timestamp too
Boris Feld <boris.feld@octobus.net>
parents:
35095
diff
changeset
|
39 br' - - [$LOGDATE$] "GET' |
7f0c9e28a816
test-pattern: substitute the HTTP log timestamp too
Boris Feld <boris.feld@octobus.net>
parents:
35095
diff
changeset
|
40 ), |
35093
3abdd7da33bd
test-pattern: substitute common compression list
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
41 ] |
35239
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
42 |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
43 # Various platform error strings, keyed on a common replacement string |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
44 _errors = { |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
45 br'$ENOENT$': ( |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
46 # strerror() |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
47 br'No such file or directory', |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
48 |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
49 # FormatMessage(ERROR_FILE_NOT_FOUND) |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
50 br'The system cannot find the file specified', |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
51 ), |
35240
b33d4cf38666
tests: add a substitution for ENOTDIR/ERROR_PATH_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35239
diff
changeset
|
52 br'$ENOTDIR$': ( |
b33d4cf38666
tests: add a substitution for ENOTDIR/ERROR_PATH_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35239
diff
changeset
|
53 # strerror() |
b33d4cf38666
tests: add a substitution for ENOTDIR/ERROR_PATH_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35239
diff
changeset
|
54 br'Not a directory', |
b33d4cf38666
tests: add a substitution for ENOTDIR/ERROR_PATH_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35239
diff
changeset
|
55 |
b33d4cf38666
tests: add a substitution for ENOTDIR/ERROR_PATH_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35239
diff
changeset
|
56 # FormatMessage(ERROR_PATH_NOT_FOUND) |
b33d4cf38666
tests: add a substitution for ENOTDIR/ERROR_PATH_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35239
diff
changeset
|
57 br'The system cannot find the path specified', |
b33d4cf38666
tests: add a substitution for ENOTDIR/ERROR_PATH_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35239
diff
changeset
|
58 ), |
35241
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35240
diff
changeset
|
59 br'$ECONNRESET$': ( |
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35240
diff
changeset
|
60 # strerror() |
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35240
diff
changeset
|
61 br'Connection reset by peer', |
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35240
diff
changeset
|
62 |
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35240
diff
changeset
|
63 # FormatMessage(WSAECONNRESET) |
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35240
diff
changeset
|
64 br'An existing connection was forcibly closed by the remote host', |
a037b6647d8c
tests: add a substitution for ECONNRESET/WSAECONNRESET messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35240
diff
changeset
|
65 ), |
35242
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
66 br'$EADDRINUSE$': ( |
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
67 # strerror() |
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
68 br'Address already in use', |
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
69 |
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
70 # FormatMessage(WSAEADDRINUSE) |
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
71 br'Only one usage of each socket address' |
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
72 br' \(protocol/network address/port\) is normally permitted', |
1b22d325089c
tests: add a substitution for EADDRINUSE/WSAEADDRINUSE messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35241
diff
changeset
|
73 ), |
35239
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
74 } |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
75 |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
76 for replace, msgs in _errors.items(): |
feecfefeba25
tests: add a substitution for ENOENT/ERROR_FILE_NOT_FOUND messages
Matt Harbison <matt_harbison@yahoo.com>
parents:
35096
diff
changeset
|
77 substitutions.extend((m, replace) for m in msgs) |