diff --git a/pykat/testing/test.py b/pykat/testing/test.py index 95595f086834536abb66fdca31d1f4a180d1e509..e534750de6e0448568141b684390455548da2d48 100644 --- a/pykat/testing/test.py +++ b/pykat/testing/test.py @@ -1,4 +1,5 @@ #!/bin/python +import gzip from threading import Thread, Lock from time import sleep from optparse import OptionParser @@ -165,7 +166,7 @@ class FinesseTestProcess(Thread): self.cancelCheck() FINESSE_EXE = os.path.join(self.BASE_DIR,"build","kat" + EXE) - + print "NOBUILD",self.nobuild # check if kat runs if not os.path.exists(FINESSE_EXE): raise Exception("Kat file was not found in " + FINESSE_EXE) @@ -261,10 +262,17 @@ class FinesseTestProcess(Thread): out,err = utils.runcmd([FINESSE_EXE, "--noheader", kat], cwd=SUITE_PATH) OUT_FILE = os.path.join(SUITE_PATH,basename + ".out") + LOG_FILE = os.path.join(SUITE_PATH,basename + ".log") + + f_in = open(LOG_FILE, 'rb') + f_out = gzip.open(LOG_FILE + ".gz", 'wb') + f_out.writelines(f_in) + f_out.close() + f_in.close() + shutil.move(OUT_FILE, SUITE_OUTPUT_DIR) + shutil.move(LOG_FILE + ".gz", SUITE_OUTPUT_DIR) - LOG_FILE = os.path.join(SUITE_PATH,basename + ".log") - shutil.move(LOG_FILE, SUITE_OUTPUT_DIR) except utils.RunException as e: print "STDERR: " + e.out @@ -345,6 +353,18 @@ class FinesseTestProcess(Thread): self.output_differences[suite][out] = (False, max) + + + + # compress the data + f_in = open(out_file, 'rb') + f_out = gzip.open(out_file + ".gz", 'wb') + f_out.writelines(f_in) + f_out.close() + f_in.close() + + os.remove(out_file) + self.done_kats += 1 REPORT_PATH = os.path.join(self.BASE_DIR,"reports") diff --git a/pykat/testing/web/web_interface.py b/pykat/testing/web/web_interface.py index 482aa2152f1efd07f0ecb367f487530d97ab4f29..cf71f112276324cf38e94992886c1a278e474094 100644 --- a/pykat/testing/web/web_interface.py +++ b/pykat/testing/web/web_interface.py @@ -135,7 +135,7 @@ class FinesseProcessWatcher(Thread): out = kat.replace(".kat",".out") if out in self.process_to_watch.output_differences[suite]: - print "asdasd", self.process_to_watch.output_differences[suite][out] + if self.process_to_watch.output_differences[suite][out][0]: max_diff = self.process_to_watch.output_differences[suite][out][3] else: @@ -396,6 +396,8 @@ def __finesse_start_test(git_commit, kats, nobuild=False): utils.git(["clone","git://gitmaster.atlas.aei.uni-hannover.de/finesse/base.git",TEST_BUILD_PATH]) KAT_NEW_EXE = os.path.join(TEST_BUILD_PATH,"kat" + EXE) shutil.copyfile(KAT_EXE, KAT_NEW_EXE) + else: + nobuild = False test = finesse_test.FinesseTestProcess(os.path.join(app.instance_path, "finesse_test"), TEST_RUN_PATH, @@ -632,7 +634,7 @@ def finesse_view_kat(suite, kat): @app.route('/finesse/out/<test_id>/<suite>/<out>', methods=["GET"]) def finesse_view_out(test_id,suite, out): out = str(out).replace(".kat",".out") - OUT_FILE = os.path.join(app.instance_path,"tests",str(test_id),"outputs",suite,out) + OUT_FILE = os.path.join(app.instance_path,"tests",str(test_id),"outputs",suite,out+".gz") if os.path.exists(OUT_FILE): contents = open(OUT_FILE).read() @@ -641,6 +643,7 @@ def finesse_view_out(test_id,suite, out): response = make_response(contents) response.headers["Content-type"] = "text/plain" + response.headers["Content-encoding"] = "gzip" return response @@ -662,7 +665,7 @@ def finesse_view_ref(suite, out): @app.route('/finesse/log/<test_id>/<suite>/<kat>', methods=["GET"]) def finesse_view_log(test_id,suite, kat): log = str(kat).replace(".kat",".log") - OUT_FILE = os.path.join(app.instance_path,"tests",str(test_id),"outputs",suite,log) + OUT_FILE = os.path.join(app.instance_path,"tests",str(test_id),"outputs",suite,log + ".gz") if os.path.exists(OUT_FILE): contents = open(OUT_FILE).read() @@ -671,6 +674,7 @@ def finesse_view_log(test_id,suite, kat): response = make_response(contents) response.headers["Content-type"] = "text/plain" + response.headers["Content-encoding"] = "gzip" return response @@ -730,8 +734,6 @@ def finesse_view_exception(view_test_id,suite,kat): if "kats_run" in doc: for run in doc["kats_run"]: if run["kat"] == kat: - print run["runexception"] - print "\n\n".join(str(run["runexception"])) response = make_response("\n\n".join(str(run["runexception"]))) else: print "NOTHING" @@ -761,7 +763,6 @@ def finesse_view(view_test_id): for run in doc["kats_run"]: suite = run["suite"] - print "RUN ERROR",run["error"] if run["error"]: if not suite in kats_err: kats_err[suite] = []