def getAliases(self, fname): def getCuts(fname, prefix): # filename w/o extension (opencv_test_core) noext = re.sub(r"\.(exe|apk)$", '', fname) # filename w/o prefix (core.exe) nopref = fname if fname.startswith(prefix): nopref = fname[len(prefix):] # filename w/o prefix and extension (core) noprefext = noext if noext.startswith(prefix): noprefext = noext[len(prefix):] return noext, nopref, noprefext # input is full path ('/home/.../bin/opencv_test_core') or 'java' res = [fname] fname = os.path.basename(fname) res.append(fname) # filename (opencv_test_core.exe) for s in getCuts(fname, self.nameprefix): res.append(s) if self.cache.build_type == "Debug" and "Visual Studio" in self.cache.cmake_generator: res.append(re.sub(r"d$", '', s)) # MSVC debug config, remove 'd' suffix log.debug("Aliases: %s", set(res)) return set(res)
def runTests(self, tests, black, workingDir, args=[]): args = args[:] logs = [] test_list = self.getTestList(tests, black) if len(test_list) != 1: args = [a for a in args if not a.startswith("--gtest_output=")] ret = 0 for test in test_list: more_args = [] exe = self.getTest(test) if exe in ["java", "python2", "python3"]: logname = None else: userlog = [a for a in args if a.startswith("--gtest_output=")] if len(userlog) == 0: logname = self.getLogName(exe) more_args.append("--gtest_output=xml:" + logname) else: logname = userlog[0][userlog[0].find(":") + 1:] log.debug("Running the test: %s (%s) ==> %s in %s", exe, args + more_args, logname, workingDir) if self.options.dry_run: logfile, r = None, 0 else: logfile, r = self.runTest(test, exe, logname, workingDir, args + more_args) log.debug("Test returned: %s ==> %s", r, logfile) if r != 0: ret = r if logfile: logs.append(os.path.relpath(logfile, workingDir)) return logs, ret
def runTests(self, tests, black, workingDir, args=[]): args = args[:] logs = [] test_list = self.getTestList(tests, black) if len(test_list) != 1: args = [a for a in args if not a.startswith("--gtest_output=")] ret = 0 for test in test_list: more_args = [] exe = self.getTest(test) if exe in ["java", "python2", "python3"]: logname = None else: userlog = [a for a in args if a.startswith("--gtest_output=")] if len(userlog) == 0: logname = self.getLogName(exe) more_args.append("--gtest_output=xml:" + logname) else: logname = userlog[0][userlog[0].find(":")+1:] log.debug("Running the test: %s (%s) ==> %s in %s", exe, args + more_args, logname, workingDir) if self.options.dry_run: logfile, r = None, 0 else: logfile, r = self.runTest(exe, logname, workingDir, args + more_args) log.debug("Test returned: %s ==> %s", r, logfile) if r != 0: ret = r if logfile: logs.append(os.path.relpath(logfile, workingDir)) return logs, ret
def __init__(self, options, cache, id, android_env={}): TestSuite.__init__(self, options, cache, id) sdk_dir = options.android_sdk or os.environ.get("ANDROID_SDK", False) or os.path.dirname(os.path.dirname(self.cache.android_executable)) log.debug("Detecting Android tools in directory: %s", sdk_dir) self.adb = Adb(sdk_dir) self.aapt = Aapt(sdk_dir) self.env = android_env
def __init__(self, options, cache, id, android_env={}): TestSuite.__init__(self, options, cache, id) sdk_dir = options.android_sdk or os.environ.get("ANDROID_SDK", False) or os.path.dirname(os.path.dirname(self.cache.android_executable)) log.debug("Detecting Android tools in directory: %s", sdk_dir) self.adb = Adb(sdk_dir) self.aapt = Aapt(sdk_dir) self.env = android_env
def getAliases(self, fname): def getCuts(fname, prefix): # filename w/o extension (opencv_test_core) noext = re.sub(r"\.(exe|apk)$", '', fname) # filename w/o prefix (core.exe) nopref = fname if fname.startswith(prefix): nopref = fname[len(prefix):] # filename w/o prefix and extension (core) noprefext = noext if noext.startswith(prefix): noprefext = noext[len(prefix):] return noext, nopref, noprefext # input is full path ('/home/.../bin/opencv_test_core') or 'java' res = [fname] fname = os.path.basename(fname) res.append(fname) # filename (opencv_test_core.exe) for s in getCuts(fname, self.nameprefix): res.append(s) if self.cache.build_type == "Debug" and "Visual Studio" in self.cache.cmake_generator: res.append(re.sub(r"d$", '', s)) # MSVC debug config, remove 'd' suffix log.debug("Aliases: %s", set(res)) return set(res)
android_env = [] if args.android_env: android_env.extend([entry.split("=", 1) for entry in args.android_env]) if args.android_propagate_opencv_env: android_env.extend([ entry for entry in os.environ.items() if entry[0].startswith('OPENCV') ]) android_env = dict(android_env) if args.android_test_data_path: android_env['OPENCV_TEST_DATA_PATH'] = args.android_test_data_path if args.valgrind: try: ver = execute(["valgrind", "--version"], silent=True) log.debug("Using %s", ver) except OSError as e: log.error("Failed to run valgrind: %s", e) exit(1) if len(args.build_path) != 1: test_args = [ a for a in test_args if not a.startswith("--gtest_output=") ] if args.check: if not [a for a in test_args if a.startswith("--perf_min_samples=")]: test_args.extend(["--perf_min_samples=1"]) if not [a for a in test_args if a.startswith("--perf_force_samples=")]: test_args.extend(["--perf_force_samples=1"]) if not [a for a in test_args if a.startswith("--perf_verify_sanity")]:
args.mode = "test" if args.accuracy else "perf" android_env = [] if args.android_env: android_env.extend([entry.split("=", 1) for entry in args.android_env]) if args.android_propagate_opencv_env: android_env.extend([entry for entry in os.environ.items() if entry[0].startswith('OPENCV')]) android_env = dict(android_env) if args.android_test_data_path: android_env['OPENCV_TEST_DATA_PATH'] = args.android_test_data_path if args.valgrind: try: ver = execute(["valgrind", "--version"], silent=True) log.debug("Using %s", ver) except OSError as e: log.error("Failed to run valgrind: %s", e) exit(1) if len(args.build_path) != 1: test_args = [a for a in test_args if not a.startswith("--gtest_output=")] if args.check: if not [a for a in test_args if a.startswith("--perf_min_samples=")]: test_args.extend(["--perf_min_samples=1"]) if not [a for a in test_args if a.startswith("--perf_force_samples=")]: test_args.extend(["--perf_force_samples=1"]) if not [a for a in test_args if a.startswith("--perf_verify_sanity")]: test_args.extend(["--perf_verify_sanity"])