~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/selftest/__init__.py

  • Committer: Aaron Bentley
  • Date: 2005-07-27 16:42:41 UTC
  • mto: (1092.1.41) (1185.3.4) (974.1.47)
  • mto: This revision was merged to the branch mainline in revision 1020.
  • Revision ID: abentley@panoramicfeedback.com-20050727164241-c6248889b6c83fa4
Fixed handling of missing newlines in udiffs

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
 
18
18
from testsweet import TestBase, run_suite, InTempDir
19
 
import bzrlib.commands
20
 
import bzrlib.fetch
21
19
 
22
20
MODULES_TO_TEST = []
23
21
MODULES_TO_DOCTEST = []
24
22
 
25
 
 
26
 
class BzrTestBase(InTempDir):
27
 
    """bzr-specific test base class"""
28
 
    def run_bzr(self, *args, **kwargs):
29
 
        retcode = kwargs.get('retcode', 0)
30
 
        self.assertEquals(bzrlib.commands.run_bzr(args), retcode)
31
 
        
32
 
 
33
23
def selftest(verbose=False):
34
24
    from unittest import TestLoader, TestSuite
35
25
    import bzrlib, bzrlib.store, bzrlib.inventory, bzrlib.branch
36
26
    import bzrlib.osutils, bzrlib.commands, bzrlib.merge3, bzrlib.plugin
 
27
    global MODULES_TO_TEST, MODULES_TO_DOCTEST
 
28
 
 
29
    import bzrlib.selftest.whitebox
 
30
    import bzrlib.selftest.blackbox
 
31
    import bzrlib.selftest.versioning
 
32
    import bzrlib.selftest.testmerge3
 
33
    import bzrlib.selftest.testhashcache
 
34
    import bzrlib.selftest.testrevisionnamespaces
 
35
    import bzrlib.selftest.testbranch
 
36
    import bzrlib.selftest.teststatus
 
37
    import bzrlib.selftest.testinv
 
38
    import bzrlib.selftest.testdiff
 
39
    import bzrlib.merge_core
37
40
    from doctest import DocTestSuite
38
41
    import os
39
42
    import shutil
41
44
    import sys
42
45
    import unittest
43
46
 
44
 
    global MODULES_TO_TEST, MODULES_TO_DOCTEST
45
 
 
46
 
    testmod_names = \
47
 
                  ['bzrlib.selftest.whitebox',
48
 
                   'bzrlib.selftest.versioning',
49
 
                   'bzrlib.selftest.testinv',
50
 
                   'bzrlib.selftest.testmerge3',
51
 
                   'bzrlib.selftest.testhashcache',
52
 
                   'bzrlib.selftest.teststatus',
53
 
                   'bzrlib.selftest.testlog',
54
 
                   'bzrlib.selftest.blackbox',
55
 
                   'bzrlib.selftest.testrevisionnamespaces',
56
 
                   'bzrlib.selftest.testbranch',
57
 
                   'bzrlib.selftest.testrevision',
58
 
                   'bzrlib.merge_core',
59
 
                   'bzrlib.selftest.testdiff',
60
 
                   'bzrlib.fetch'
61
 
                   ]
62
 
    testmod_names = ['bzrlib.fetch']
63
 
 
64
 
    # XXX: should also test bzrlib.merge_core, but they seem to be out
65
 
    # of date with the code.
66
 
 
67
47
    for m in (bzrlib.store, bzrlib.inventory, bzrlib.branch,
68
48
              bzrlib.osutils, bzrlib.commands, bzrlib.merge3):
69
49
        if m not in MODULES_TO_DOCTEST:
70
50
            MODULES_TO_DOCTEST.append(m)
71
 
 
72
51
    
 
52
    # ugly ugly!
 
53
    for m in (bzrlib.selftest.whitebox,
 
54
              bzrlib.selftest.versioning,
 
55
              bzrlib.selftest.testinv,
 
56
              bzrlib.selftest.testmerge3,
 
57
              bzrlib.selftest.testhashcache,
 
58
              bzrlib.selftest.teststatus,
 
59
              bzrlib.selftest.blackbox,
 
60
              bzrlib.selftest.testhashcache,
 
61
              bzrlib.selftest.testrevisionnamespaces,
 
62
              bzrlib.selftest.testbranch,
 
63
              bzrlib.selftest.testdiff,
 
64
              ):
 
65
        if m not in MODULES_TO_TEST:
 
66
            MODULES_TO_TEST.append(m)
 
67
 
 
68
 
73
69
    TestBase.BZRPATH = os.path.join(os.path.realpath(os.path.dirname(bzrlib.__path__[0])), 'bzr')
74
70
    print '%-30s %s' % ('bzr binary', TestBase.BZRPATH)
75
71
 
77
73
 
78
74
    suite = TestSuite()
79
75
 
80
 
    suite.addTest(TestLoader().loadTestsFromNames(testmod_names))
81
 
 
82
76
    for m in MODULES_TO_TEST:
83
77
         suite.addTest(TestLoader().loadTestsFromModule(m))
84
78
 
89
83
        if hasattr(p, 'test_suite'):
90
84
            suite.addTest(p.test_suite())
91
85
 
92
 
    import bzrlib.merge_core
93
86
    suite.addTest(unittest.makeSuite(bzrlib.merge_core.MergeTest, 'test_'))
94
87
 
95
88
    return run_suite(suite, 'testbzr', verbose=verbose)