summaryrefslogtreecommitdiff
path: root/test/ext/alltests.py
blob: 9f5353e04f6db89cb4a63096d8f56b34208cf8b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import testenv; testenv.configure_for_tests()
import doctest, sys

from testlib import sa_unittest as unittest


def suite():
    unittest_modules = (
        'ext.declarative',
        'ext.orderinglist',
        'ext.associationproxy',
        'ext.serializer',
        'ext.compiler',
        )

    if sys.version_info < (2, 4):
        doctest_modules = ()
    else:
        doctest_modules = (
            ('sqlalchemy.ext.orderinglist', {'optionflags': doctest.ELLIPSIS}),
            ('sqlalchemy.ext.sqlsoup', {})
            )

    alltests = unittest.TestSuite()
    for name in unittest_modules:
        mod = __import__(name)
        for token in name.split('.')[1:]:
            mod = getattr(mod, token)
        alltests.addTest(unittest.findTestCases(mod, suiteClass=None))
    for name, opts in doctest_modules:
        alltests.addTest(doctest.DocTestSuite(name, **opts))
    return alltests


if __name__ == '__main__':
    testenv.main(suite())