from __future__ import print_function """ Run unit tests for cnmodel """ import os, sys import pytest def runtests(): # Make sure we look for cnmodel here first. path = os.path.dirname(__file__) sys.path.insert(0, path) # Allow user to audit tests with --audit flag import cnmodel if "--audit" in sys.argv: sys.argv.remove("--audit") sys.argv.append("-s") # needed for cli-based user interaction cnmodel.AUDIT_TESTS = True # generate test flags flags = sys.argv[1:] flags.append("-v") tb = [flag for flag in flags if flag.startswith("--tb")] if len(tb) == 0: flags.append("--tb=short") add_path = True for flag in flags: if os.path.isdir(flag) or os.path.isfile(flag): add_path = False break if add_path: flags.append("cnmodel/") # ignore the an cache flags.append("--ignore=cnmodel/an_model/cache/") # Start tests. print("Testing with flags: %s" % " ".join(flags)) pytest.main(flags) if __name__ == "__main__": runtests()