~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-28 18:46:35 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-20050728184635-2461268fd9d1e8d1
Added default backups for merge-revert

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
16
 
17
17
 
18
 
from testsweet import TestCase, run_suite, InTempDir
19
 
import bzrlib.commands
20
 
import bzrlib.fetch
 
18
from testsweet import TestBase, run_suite, InTempDir
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
 
        result = self.apply_redirected(None, None, None,
31
 
                                       bzrlib.commands.run_bzr, args)
32
 
        self.assertEquals(result, retcode)
33
 
        
34
 
 
35
23
def selftest(verbose=False):
36
 
    return run_suite(test_suite(), 'testbzr', verbose=verbose)
37
 
 
38
 
 
39
 
def test_suite():
40
24
    from unittest import TestLoader, TestSuite
41
25
    import bzrlib, bzrlib.store, bzrlib.inventory, bzrlib.branch
42
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
43
40
    from doctest import DocTestSuite
44
41
    import os
45
42
    import shutil
47
44
    import sys
48
45
    import unittest
49
46
 
50
 
    global MODULES_TO_TEST, MODULES_TO_DOCTEST
51
 
 
52
 
    testmod_names = \
53
 
                  ['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.testlog',
60
 
                   'bzrlib.selftest.blackbox',
61
 
                   'bzrlib.selftest.testrevisionnamespaces',
62
 
                   'bzrlib.selftest.testbranch',
63
 
                   'bzrlib.selftest.testrevision',
64
 
                   'bzrlib.merge_core',
65
 
                   'bzrlib.selftest.testdiff',
66
 
                   'bzrlib.fetch'
67
 
                   ]
68
 
 
69
47
    for m in (bzrlib.store, bzrlib.inventory, bzrlib.branch,
70
48
              bzrlib.osutils, bzrlib.commands, bzrlib.merge3):
71
49
        if m not in MODULES_TO_DOCTEST:
72
50
            MODULES_TO_DOCTEST.append(m)
73
 
 
74
 
    TestCase.BZRPATH = os.path.join(os.path.realpath(os.path.dirname(bzrlib.__path__[0])), 'bzr')
75
 
    print '%-30s %s' % ('bzr binary', TestCase.BZRPATH)
 
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
 
 
69
    TestBase.BZRPATH = os.path.join(os.path.realpath(os.path.dirname(bzrlib.__path__[0])), 'bzr')
 
70
    print '%-30s %s' % ('bzr binary', TestBase.BZRPATH)
 
71
 
76
72
    print
 
73
 
77
74
    suite = TestSuite()
78
 
    suite.addTest(TestLoader().loadTestsFromNames(testmod_names))
 
75
 
79
76
    for m in MODULES_TO_TEST:
80
77
         suite.addTest(TestLoader().loadTestsFromModule(m))
 
78
 
81
79
    for m in (MODULES_TO_DOCTEST):
82
80
        suite.addTest(DocTestSuite(m))
 
81
 
83
82
    for p in bzrlib.plugin.all_plugins:
84
83
        if hasattr(p, 'test_suite'):
85
84
            suite.addTest(p.test_suite())
86
 
    import bzrlib.merge_core
 
85
 
87
86
    suite.addTest(unittest.makeSuite(bzrlib.merge_core.MergeTest, 'test_'))
88
 
    return suite
 
87
 
 
88
    return run_suite(suite, 'testbzr', verbose=verbose)
 
89
 
 
90
 
89
91