Ejemplo n.º 1
0
def load_tests(loader, tests, pattern):      # pylint: disable=W0613
    try:
        log.info('Start ndb tests')

        suite = unittest.TestSuite()
        test_list = get_test_list(TEST_DIR)
        log.info('Test list is %s', test_list)

        for test in test_list:
            log.info('Starting test harness %s', test)

            harness = yaml.load(open(test))
            if harness.get('debug'):
                enable_handler_console()

            tests = harness.get('tests', ['topology'])

            name = harness.get('ndb', 'neighbordb')
            filename = name.split('/')[-1]
            if filename in harness:
                ndb = harness.get(filename)
            else:
                assert os.path.exists(name)
                ndb = yaml.load(open(name))

            kwargs = dict()
            kwargs['valid_patterns'] = harness.get('valid_patterns', dict())
            kwargs['invalid_patterns'] = harness.get('invalid_patterns')
            kwargs['tag'] = harness.get('tag', filename)
            kwargs['filename'] = test

            for test in tests:
                assert test in ['pattern', 'topology']
                suite.addTest(NeighbordbTest('neighbordb_%s' % test, 
                                             ndb, **kwargs))

            if 'nodes' in harness and 'topology' in tests:
                for key in harness['nodes'].keys():
                    assert key in ['pass', 'fail']
                    entries = harness['nodes'][key]
                    if not entries is None:
                        for entry in entries:
                            filename = entry['name'].split('/')[-1]
                            kwargs['node'] = harness.get(filename, 
                                                         entry['name'])
                            kwargs['match'] = entry.get('match')
                            kwargs['tag'] = '%s:%s' % (harness.get('tag'), 
                                                       filename)
                            log.info('Adding node %s', name)
                            suite.addTest(NeighbordbTest('node_%s' % key, 
                                                         ndb, **kwargs))

    except Exception as exc:      # pylint: disable=W0703
        log.exception('Unexpected error trying to execute load_tests: %s' %
                      exc)
    else:
        return suite
Ejemplo n.º 2
0
def enable_logging():
    enable_handler_console()
def load_tests(loader, tests, pattern):            #pylint: disable=W0613
    suite = unittest.TestSuite()
    test_list = os.environ.get('TESTS', None)
    if not test_list:
        test_list = [f for f in os.listdir(TEST_DIR)
                 if os.path.join(TEST_DIR, f).endswith('_test')]
    else:
        test_list = test_list.split(',')

    print test_list
    for test in test_list:
        print 'Starting test %s' % test

        definition = yaml.load(open(os.path.join(TEST_DIR, test)))

        nodes = definition.get('nodes', [])
        for node in nodes:
            print 'Adding test: %s' % node['name']
            suite.addTest(NodeTest(test, node, definition['neighbordb']))

        if definition.get('configured_neighbordb', None):
            suite.addTest(NeighbordbTest(test, definition['neighbordb'], 
                                         definition['configured_neighbordb']))

    return suite

if __name__ == '__main__':
    enable_handler_console()
    unittest.main()
Ejemplo n.º 4
0
def enable_logging():
    enable_handler_console()
import ztpserver.neighbordb
import ztpserver.topology
import ztpserver.controller
import ztpserver.repository
import ztpserver.config

from ztpserver.app import enable_handler_console

from ztpserver.serializers import SerializerError

from server_test_lib import remove_all, random_string
from server_test_lib import ztp_headers, write_file
from server_test_lib import create_definition, create_attributes, create_node

enable_handler_console(level='DEBUG')

def reload_mocked_modules():
    reload(ztpserver.neighbordb)
    reload(ztpserver.config)
    reload(ztpserver.repository)
    reload(ztpserver.topology)
    reload(ztpserver.controller)

class RouterTests(unittest.TestCase):

    def match_routes(self, url, valid, invalid):

        request = Request.blank(url)
        router = ztpserver.controller.Router()