~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/selftest/__init__.py

  • Committer: Martin Pool
  • Date: 2005-07-08 06:54:58 UTC
  • Revision ID: mbp@sourcefrog.net-20050708065458-2af06c3659faf1d8
- use new path-based hashcache for WorkingTree- squash mtime/ctime to whole seconds- update and if necessary write out hashcache when WorkingTree object is   created.

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
 
def selftest(verbose=False):
 
23
def selftest():
34
24
    from unittest import TestLoader, TestSuite
35
25
    import bzrlib, bzrlib.store, bzrlib.inventory, bzrlib.branch
36
 
    import bzrlib.osutils, bzrlib.commands, bzrlib.merge3, bzrlib.plugin
 
26
    import bzrlib.osutils, bzrlib.commands, bzrlib.merge3
 
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.merge_core
37
35
    from doctest import DocTestSuite
38
36
    import os
39
37
    import shutil
41
39
    import sys
42
40
    import unittest
43
41
 
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
42
    for m in (bzrlib.store, bzrlib.inventory, bzrlib.branch,
68
43
              bzrlib.osutils, bzrlib.commands, bzrlib.merge3):
69
44
        if m not in MODULES_TO_DOCTEST:
70
45
            MODULES_TO_DOCTEST.append(m)
71
 
 
72
 
    
 
46
            
 
47
    for m in (bzrlib.selftest.whitebox,
 
48
              bzrlib.selftest.versioning,
 
49
              bzrlib.selftest.testmerge3,
 
50
              bzrlib.selftest.testhashcache):
 
51
        if m not in MODULES_TO_TEST:
 
52
            MODULES_TO_TEST.append(m)
 
53
 
 
54
 
73
55
    TestBase.BZRPATH = os.path.join(os.path.realpath(os.path.dirname(bzrlib.__path__[0])), 'bzr')
74
56
    print '%-30s %s' % ('bzr binary', TestBase.BZRPATH)
75
57
 
77
59
 
78
60
    suite = TestSuite()
79
61
 
80
 
    suite.addTest(TestLoader().loadTestsFromNames(testmod_names))
81
 
 
 
62
    # should also test bzrlib.merge_core, but they seem to be out of date with
 
63
    # the code.
 
64
 
 
65
 
 
66
    # XXX: python2.3's TestLoader() doesn't seem to find all the
 
67
    # tests; don't know why
82
68
    for m in MODULES_TO_TEST:
83
69
         suite.addTest(TestLoader().loadTestsFromModule(m))
84
70
 
85
71
    for m in (MODULES_TO_DOCTEST):
86
72
        suite.addTest(DocTestSuite(m))
87
73
 
88
 
    for p in bzrlib.plugin.all_plugins:
89
 
        if hasattr(p, 'test_suite'):
90
 
            suite.addTest(p.test_suite())
 
74
#     for cl in (bzrlib.selftest.whitebox.TEST_CLASSES 
 
75
#                + bzrlib.selftest.versioning.TEST_CLASSES
 
76
#                + bzrlib.selftest.testmerge3.TEST_CLASSES
 
77
#                + bzrlib.selftest.testhashcache.TEST_CLASSES
 
78
#                + bzrlib.selftest.blackbox.TEST_CLASSES):
 
79
#         suite.addTest(cl())
91
80
 
92
 
    import bzrlib.merge_core
93
81
    suite.addTest(unittest.makeSuite(bzrlib.merge_core.MergeTest, 'test_'))
94
82
 
95
 
    return run_suite(suite, 'testbzr', verbose=verbose)
 
83
    return run_suite(suite, 'testbzr')
96
84
 
97
85
 
98
86