From 87346dd9c1eca691429742d061afeda1c45f9b31 Mon Sep 17 00:00:00 2001
From: Daniel Brown <ddb@star.sr.bham.ac.uk>
Date: Thu, 8 Aug 2013 00:37:12 +0100
Subject: [PATCH] added ref and out file viewing

---
 .../web/templates/finesse_test_view.html      |  6 ++--
 pykat/testing/web/web_interface.py            | 30 +++++++++++++++++++
 2 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/pykat/testing/web/templates/finesse_test_view.html b/pykat/testing/web/templates/finesse_test_view.html
index d59784b..7e95314 100644
--- a/pykat/testing/web/templates/finesse_test_view.html
+++ b/pykat/testing/web/templates/finesse_test_view.html
@@ -23,8 +23,10 @@
                 <li>{{ suite }}</li>
                 <ul>
                     {% for item in kats[suite] %}
-                    <li><span style="display:inline-block;width: 300px">
-                    {{item[0]}}</span> <a href="/finesse/kat/{{suite}}/{{item[0]}}">Kat</a>
+                    <li><span style="display:inline-block;width: 300px">{{item[0]}}</span>
+                                &nbsp; <a href="/finesse/kat/{{suite}}/{{item[0]}}">Kat</a>
+                                &nbsp; <a href="/finesse/out/{{view_test_id}}/{{suite}}/{{item[0]}}">Out</a> 
+                                &nbsp; <a href="/finesse/ref/{{suite}}/{{item[0]}}">Ref</a> 
                                 &nbsp; <a href="/finesse/view/{{view_test_id}}/diff/{{suite}}/{{item[0]}}">Diff</a> 
                                 &nbsp; <a href="/finesse/kat_history/{{suite}}/{{item[0]}}">History</a>
                                 &nbsp; Max rel diff = {{item[1]}}</li> 
diff --git a/pykat/testing/web/web_interface.py b/pykat/testing/web/web_interface.py
index a994e61..ff2fbca 100644
--- a/pykat/testing/web/web_interface.py
+++ b/pykat/testing/web/web_interface.py
@@ -610,6 +610,36 @@ def finesse_view_kat(suite, kat):
         
     return response
 
+@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)
+    
+    if os.path.exists(OUT_FILE):
+        contents = open(OUT_FILE).read()
+    else:
+        contents = "out file not found"
+        
+    response = make_response(contents)
+    response.headers["Content-type"] = "text/plain"
+        
+    return response
+    
+@app.route('/finesse/ref/<suite>/<out>', methods=["GET"])
+def finesse_view_ref(suite, out):
+    out = str(out).replace(".kat",".out")
+    OUT_FILE = os.path.join(app.instance_path,"finesse_test","kat_test",suite,"reference",out)
+    
+    if os.path.exists(OUT_FILE):
+        kat_contents = open(OUT_FILE).read()
+    else:
+        kat_contents = "out file not found"
+        
+    response = make_response(kat_contents)
+    response.headers["Content-type"] = "text/plain"
+        
+    return response
+    
 @app.route('/finesse/kat_history/<suite>/<kat>', methods=["GET"])
 def finesse_view_kat_history(suite, kat):
     
-- 
GitLab