annotate tests/comprehensive/test_obsstore_on.py @ 1588:e2d38f6b8afe

tests: make output comaptible with hash changes in hg-4.8 46da52f4b820 in core mercurial added logic to try hard to reuse manifest if we can. In the tests of hgsubversion, there are lot of cases we create an empty commit with just branch name changed. In hg < 4.8, hgsubversion used to create a new manifest entry for that commit but after that patch, empty commit started using the manifest of the parent leading to hash change.
author Pulkit Goyal <pulkit@yandex-team.ru>
date Wed, 31 Oct 2018 17:04:57 +0300
parents fbc22592f4fa
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1516
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
1 import os
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
2 import sys
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
3
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
4 # wrapped in a try/except because of weirdness in how
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
5 # run.py works as compared to nose.
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
6 try:
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
7 import test_util
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
8 except ImportError:
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
9 sys.path.insert(0, os.path.dirname(os.path.dirname(__file__)))
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
10 import test_util
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
11
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
12 import test_push_command
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
13
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
14
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
15 class ObsstoreOnMixIn(object):
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
16 # do not double the test size by being wrapped again
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
17 obsolete_mode_tests = False
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
18 stupid_mode_tests = False
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
19
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
20 def setUp(self):
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
21 super(ObsstoreOnMixIn, self).setUp()
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
22 hgrcpath = os.environ.get('HGRCPATH')
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
23 assert hgrcpath
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
24 with open(hgrcpath, 'a') as f:
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
25 f.write('\n[experimental]\nevolution=createmarkers\n')
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
26
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
27 def shortDescription(self):
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
28 text = super(ObsstoreOnMixIn, self).shortDescription()
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
29 if text:
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
30 text += ' (obsstore on)'
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
31 return text
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
32
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
33
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
34 def buildtestclass(cls):
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
35 name = 'ObsstoreOn%s' % cls.__name__
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
36 newcls = type(name, (ObsstoreOnMixIn, cls,), {})
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
37 globals()[name] = newcls
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
38
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
39
fbc22592f4fa push: lock repo before calling createmarkers
Jun Wu <quark@fb.com>
parents:
diff changeset
40 buildtestclass(test_push_command.PushTests)