From 2bec02d8a5a51a63ee1eece0022ea22fa9d8038e Mon Sep 17 00:00:00 2001
From: Daniel Brown <ddb@star.sr.bham.ac.uk>
Date: Sat, 9 Nov 2013 19:06:03 +0000
Subject: [PATCH] changing exception case

---
 pykat/testing/test.py | 79 +++++++++++++++++++++++--------------------
 1 file changed, 42 insertions(+), 37 deletions(-)

diff --git a/pykat/testing/test.py b/pykat/testing/test.py
index f8ae75e..2981561 100644
--- a/pykat/testing/test.py
+++ b/pykat/testing/test.py
@@ -27,50 +27,55 @@ def initProcess(dkats):
     done_kats = dkats
 
 def run_kat_file(item):
-    #print os.getpid(),"getting kat...",item["kat"]
-    global done_kats
-    
     kat = item["kat"]
     suite = item["suite"]
-    FINESSE_EXE = item["FINESSE_EXE"]
-    SUITE_PATH = item["SUITE_PATH"]
-    SUITE_OUTPUT_DIR  = item["SUITE_OUTPUT_DIR"]
-    basename = os.path.splitext(kat)[0]
     
-    if item["run_fast"] and ('map ' in open(kat).read()):
-        print "skipping " + kat			
-    else:
-        exp = None
+    try:
+        #print os.getpid(),"getting kat...",item["kat"]
+        global done_kats
         
-        try:
-            start = time.time()
-            
-            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)
-            
-        except utils.RunException as e:
+        FINESSE_EXE = item["FINESSE_EXE"]
+        SUITE_PATH = item["SUITE_PATH"]
+        SUITE_OUTPUT_DIR  = item["SUITE_OUTPUT_DIR"]
+        basename = os.path.splitext(kat)[0]
         
-            print "STDERR: " + e.out
-            print "STDOUT: " + e.err
+        if item["run_fast"] and ('map ' in open(kat).read()):
+            print "skipping " + kat			
+        else:
+            exp = None
             
-            print "Error running " + kat + ": " + e.err
+            try:
+                start = time.time()
+                
+                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)
+                
+            except utils.RunException as e:
             
-            exp = e
-        finally:
-            done_kats.value += 1
-            return [time.time()-start, suite, kat, exp]
-    
+                print "STDERR: " + e.out
+                print "STDOUT: " + e.err
+                
+                print "Error running " + kat + ": " + e.err
+                
+                exp = e
+            finally:
+                done_kats.value += 1
+                return [time.time()-start, suite, kat, exp]
+                
+    except Exception as e:
+        print "main error in kat call",e
+        return [0,suite,kat,NULL]
 
 class DiffException(Exception):
 	def __init__(self, msg, outfile):
-- 
GitLab