/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/test__groupcompress.py

  • Committer: Martin Pool
  • Date: 2010-12-14 23:39:41 UTC
  • mto: This revision was merged to the branch mainline in revision 5571.
  • Revision ID: mbp@sourcefrog.net-20101214233941-95uq6n9xf0xgtyc3
Code guidelines re exception objects

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
    _groupcompress_py,
22
22
    tests,
23
23
    )
24
 
 
25
 
 
26
 
def load_tests(standard_tests, module, loader):
27
 
    """Parameterize tests for all versions of groupcompress."""
28
 
    two_way_scenarios = [
29
 
        ('PP', {'make_delta': _groupcompress_py.make_delta,
30
 
                'apply_delta': _groupcompress_py.apply_delta})
31
 
        ]
 
24
from bzrlib.tests.scenarios import (
 
25
    load_tests_apply_scenarios,
 
26
    multiply_scenarios,
 
27
    )
 
28
 
 
29
 
 
30
def module_scenarios():
32
31
    scenarios = [
33
32
        ('python', {'_gc_module': _groupcompress_py}),
34
33
        ]
36
35
        gc_module = compiled_groupcompress_feature.module
37
36
        scenarios.append(('C',
38
37
            {'_gc_module': gc_module}))
39
 
        two_way_scenarios.extend([
 
38
    return scenarios
 
39
 
 
40
 
 
41
def two_way_scenarios():
 
42
    scenarios = [
 
43
        ('PP', {'make_delta': _groupcompress_py.make_delta,
 
44
                'apply_delta': _groupcompress_py.apply_delta})
 
45
        ]
 
46
    if compiled_groupcompress_feature.available():
 
47
        gc_module = compiled_groupcompress_feature.module
 
48
        scenarios.extend([
40
49
            ('CC', {'make_delta': gc_module.make_delta,
41
50
                    'apply_delta': gc_module.apply_delta}),
42
51
            ('PC', {'make_delta': _groupcompress_py.make_delta,
44
53
            ('CP', {'make_delta': gc_module.make_delta,
45
54
                    'apply_delta': _groupcompress_py.apply_delta}),
46
55
            ])
47
 
    to_adapt, result = tests.split_suite_by_condition(
48
 
        standard_tests, tests.condition_isinstance((TestMakeAndApplyDelta,
49
 
                                                    TestBase128Int)))
50
 
    result = tests.multiply_tests(to_adapt, scenarios, result)
51
 
    to_adapt, result = tests.split_suite_by_condition(result,
52
 
        tests.condition_isinstance(TestMakeAndApplyCompatible))
53
 
    result = tests.multiply_tests(to_adapt, two_way_scenarios, result)
54
 
    return result
 
56
    return scenarios
 
57
 
 
58
 
 
59
load_tests = load_tests_apply_scenarios
55
60
 
56
61
 
57
62
compiled_groupcompress_feature = tests.ModuleAvailableFeature(
116
121
 
117
122
class TestMakeAndApplyDelta(tests.TestCase):
118
123
 
 
124
    scenarios = module_scenarios()
119
125
    _gc_module = None # Set by load_tests
120
126
 
121
127
    def setUp(self):
226
232
 
227
233
class TestMakeAndApplyCompatible(tests.TestCase):
228
234
 
 
235
    scenarios = two_way_scenarios()
 
236
 
229
237
    make_delta = None # Set by load_tests
230
238
    apply_delta = None # Set by load_tests
231
239
 
457
465
 
458
466
class TestBase128Int(tests.TestCase):
459
467
 
 
468
    scenarios = module_scenarios()
 
469
 
460
470
    _gc_module = None # Set by load_tests
461
471
 
462
472
    def assertEqualEncode(self, bytes, val):