Beispiel #1
0
def do_child(runname, debug=False):
    """
	Run a test inside the child process.

	@param runname:	Name of muFAT run
	@param debug:	Whether to actually store results
	"""

    # load and execute tests
    from .mvrt import Core
    from runpy import run_path

    # pre-clean data folders
    if os.path.isdir(Core.UserDataFolder):
        print "Cleaning folder:", Core.UserDataFolder
        shutil.rmtree(Core.UserDataFolder)

    path = normalize(
        os.path.join(r"Y:\mufat\testruns\regressionpaths", runname))
    sys.path.append(os.path.dirname(path))
    results = run_path(path, run_name="__main__")

    # return results to parent for processing
    if not debug:
        q = RedisQueue("_".join(["Q", DBKEY, HOST]))
        q.put({
            'pass': results["passed"],
            'fail': results["failed"],
            'untested': results["skipped"],
            'summary': results["logfile"],
            'shutdown': True,
            'crash': results["skipped"],
            'retained_samples': [],
            'return_code': 0,
            'timeout': False,
            'svn_rev': Core.GetRuntimeSpecialBuild()
        })

    Core.Release()
    sys.exit(0)
Beispiel #2
0
def do_child(runname, debug=False):
	"""
	Run a test inside the child process.

	@param runname:	Name of muFAT run
	@param debug:	Whether to actually store results
	"""

	# load and execute tests
	from .mvrt import Core
	from runpy import run_path

	# pre-clean data folders
	if os.path.isdir(Core.UserDataFolder):
		print "Cleaning folder:", Core.UserDataFolder
		shutil.rmtree(Core.UserDataFolder)

	path = normalize(os.path.join(r"Y:\mufat\testruns\regressionpaths", runname))
	sys.path.append(os.path.dirname(path))
	results = run_path(path, run_name="__main__")

	# return results to parent for processing
	if not debug:
		q = RedisQueue("_".join(["Q", DBKEY, HOST]))
		q.put({
			'pass': results["passed"],
			'fail': results["failed"],
			'untested': results["skipped"],
			'summary': results["logfile"],
			'shutdown': True,
			'crash': results["skipped"],
			'retained_samples': [],
			'return_code': 0,
			'timeout': False,
			'svn_rev': Core.GetRuntimeSpecialBuild()
		})

	Core.Release()
	sys.exit(0)