view tests/comprehensive/test_obsstore_on.py @ 1549:8410a978c650

compathacks: be compatible with upstream 8a0cac20a1ad memfilectx change See hg change 8a0cac20a1ad. Since the interface has changed more than one time, switch to explicit keywords arguments to avoid surprises. Since hgsubversion targets hg >= 3.2.4, drop support for hg 3.0 and 3.1 here.
author Jun Wu <quark@fb.com>
date Tue, 19 Dec 2017 14:29:55 -0800
parents fbc22592f4fa
children
line wrap: on
line source

import os
import sys

# wrapped in a try/except because of weirdness in how
# run.py works as compared to nose.
try:
    import test_util
except ImportError:
    sys.path.insert(0, os.path.dirname(os.path.dirname(__file__)))
    import test_util

import test_push_command


class ObsstoreOnMixIn(object):
    # do not double the test size by being wrapped again
    obsolete_mode_tests = False
    stupid_mode_tests = False

    def setUp(self):
        super(ObsstoreOnMixIn, self).setUp()
        hgrcpath = os.environ.get('HGRCPATH')
        assert hgrcpath
        with open(hgrcpath, 'a') as f:
            f.write('\n[experimental]\nevolution=createmarkers\n')

    def shortDescription(self):
        text = super(ObsstoreOnMixIn, self).shortDescription()
        if text:
            text += ' (obsstore on)'
        return text


def buildtestclass(cls):
    name = 'ObsstoreOn%s' % cls.__name__
    newcls = type(name, (ObsstoreOnMixIn, cls,), {})
    globals()[name] = newcls


buildtestclass(test_push_command.PushTests)