From aa137a44054010c426bf9800a6044a212a1be9af Mon Sep 17 00:00:00 2001 From: Daniel Brown <ddb@star.sr.bham.ac.uk> Date: Thu, 22 Aug 2013 14:26:59 +0100 Subject: [PATCH] any 0 points now show the abs err as rel err is undefined --- pykat/testing/test.py | 9 +++++---- pykat/testing/web/web_interface.py | 11 +++++------ 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pykat/testing/test.py b/pykat/testing/test.py index e534750..f55a7e7 100644 --- a/pykat/testing/test.py +++ b/pykat/testing/test.py @@ -331,10 +331,11 @@ class FinesseTestProcess(Thread): # for computing relative errors we need to make sure we # have no zeros in the data - ref_arr_c = np.where(ref_arr == 0, 1, ref_arr) - ref_arr_c[ref_arr_c==0] = 1 - - rel_diff = np.abs(out_arr-ref_arr)/np.abs(ref_arr_c) + nzix = (ref_arr != 0) + + rel_diff = np.abs(out_arr-ref_arr) + # only compute rel diff for non zero values + rel_diff[nzix] = np.divide(rel_diff[nzix], np.abs(ref_arr[nzix])) diff = np.any(rel_diff >= self.diff_rel_eps) diff --git a/pykat/testing/web/web_interface.py b/pykat/testing/web/web_interface.py index cf71f11..5edf2e4 100644 --- a/pykat/testing/web/web_interface.py +++ b/pykat/testing/web/web_interface.py @@ -17,7 +17,7 @@ from CodernityDB.database_thread_safe import ThreadSafeDatabase from CodernityDB.database import RecordNotFound import numpy as np from pykat.testing.web.database_indices import TestIDIndex, SrcCommitIndex, KatTestIndex -import re +import re, gzip import os, sys, traceback global current_test, scheduled_tests, schedule_lock,enabled_suites @@ -637,13 +637,12 @@ def finesse_view_out(test_id,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() + contents = gzip.open(OUT_FILE, 'rb').read() else: contents = "out file not found" response = make_response(contents) response.headers["Content-type"] = "text/plain" - response.headers["Content-encoding"] = "gzip" return response @@ -668,13 +667,13 @@ def finesse_view_log(test_id,suite, kat): 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() + file = gzip.open(OUT_FILE, 'rb') + contents = file.read() else: - contents = "log file not found" + contents = "log file not found" response = make_response(contents) response.headers["Content-type"] = "text/plain" - response.headers["Content-encoding"] = "gzip" return response -- GitLab