def build_suite(app_module):
    "Create a complete Django test suite for the provided application module"
    suite = unittest.TestSuite()
    
    # Load unit and doctests in the models.py file
    suite.addTest(unittest.defaultTestLoader.loadTestsFromModule(app_module))
    try:
        suite.addTest(doctest.DocTestSuite(app_module,
                                           checker=doctestOutputChecker,
                                           runner=DocTestRunner))
    except ValueError:
        # No doc tests in models.py
        pass
    
    # Check to see if a separate 'tests' module exists parallel to the 
    # models module
    try:
        app_path = app_module.__name__.split('.')[:-1]
        test_module = __import__('.'.join(app_path + [TEST_MODULE]), {}, {}, TEST_MODULE)
        
        suite.addTest(unittest.defaultTestLoader.loadTestsFromModule(test_module))
        try:            
            suite.addTest(doctest.DocTestSuite(test_module, 
                                               checker=doctestOutputChecker,
                                               runner=DocTestRunner))
        except ValueError:
            # No doc tests in tests.py
            pass
    except ImportError, e:
        # Couldn't import tests.py. Was it due to a missing file, or
        # due to an import error in a tests.py that actually exists?
        import os.path
        from imp import find_module
        try:
            mod = find_module(TEST_MODULE, [os.path.dirname(app_module.__file__)])
        except __HOLE__:
            # 'tests' module doesn't exist. Move on.
            pass
        else:
            # The module exists, so there must be an import error in the 
            # test module itself. We don't need the module; close the file
            # handle returned by find_module.
            mod[0].close()
            raise
            
    return suite
dataset/ETHPy150Open AppScale/appscale/AppServer/lib/django-0.96/django/test/simple.py/build_suite