def init_test_suites(lang): return { 'blobstore' : blobstore_tests.suite(lang), 'datastore' : datastore_tests.suite(lang), 'images' : images_tests.suite(lang), 'memcache' : memcache_tests.suite(lang), 'ndb' : ndb_tests.suite(lang), 'secure_url' : secure_url_tests.suite(lang), 'taskqueue' : taskqueue_tests.suite(lang), 'users' : user_tests.suite(lang), }
def init_test_suites(lang): """ Initialize the hawkeye test suites. Args: lang: language to test, either 'python' or 'java'. Returns: A dict of hawkeye test suites. """ return { 'blobstore' : blobstore_tests.suite(lang), 'datastore' : datastore_tests.suite(lang), 'async_datastore' : async_datastore_tests.suite(lang), 'env_var' : environment_variable_tests.suite(lang), 'images' : images_tests.suite(lang), 'memcache' : memcache_tests.suite(lang), 'ndb' : ndb_tests.suite(lang), 'secure_url' : secure_url_tests.suite(lang), 'taskqueue' : taskqueue_tests.suite(lang), 'users' : user_tests.suite(lang), 'xmpp' : xmpp_tests.suite(lang), 'cron' : cron_tests.suite(lang), }
def build_suites_list(lang, include, exclude, application): """ Based on language, include and exclude filters, build list of HawkeyeTestSuite objects. Args: lang: A string representing language to test ('python' or 'java'). include: A list of str - suites to return (use empty list to include all). exclude: A list of str - suites to skip ('exclude' is ignored if 'include' is specified). application: An Application object - wraps requests library and provides api for access to testing AppEngine application. Returns: a list of HawkeyeTestSuite for specified language. """ defined_suites = { 'app_identity': app_identity_tests.suite(lang, application), 'blobstore': blobstore_tests.suite(lang, application), 'datastore': datastore_tests.suite(lang, application), 'async_datastore': async_datastore_tests.suite(lang, application), 'env_var': environment_variable_tests.suite(lang, application), 'images': images_tests.suite(lang, application), 'memcache': memcache_tests.suite(lang, application), 'ndb': ndb_tests.suite(lang, application), 'secure_url': secure_url_tests.suite(lang, application), 'taskqueue': taskqueue_tests.suite(lang, application), 'urlfetch': urlfetch_tests.suite(lang, application), 'users': user_tests.suite(lang, application), 'xmpp': xmpp_tests.suite(lang, application), 'cron': cron_tests.suite(lang, application), 'logservice': logservice_tests.suite(lang, application), 'modules': modules_tests.suite(lang, application), 'runtime': runtime_tests.suite(lang, application) } # Validation include and exclude lists for suite_name in include + exclude: if suite_name not in defined_suites: print_usage_and_exit( "Unknown suite '{}'. Suite can be one of {}".format( suite_name, defined_suites.keys())) if include: suites = [ suite for suite_name, suite in defined_suites.iteritems() if suite_name in include ] if 'warmup' in include and 'warmup' not in exclude: warmup = warmup_tests.suite(lang, application) suites.insert(0, warmup) else: suites = [ suite for suite_name, suite in defined_suites.iteritems() if suite_name not in exclude ] if 'warmup' not in exclude: warmup = warmup_tests.suite(lang, application) suites.insert(0, warmup) if not suites: print_usage_and_exit('Must specify at least one suite to execute') return suites