Sfoglia il codice sorgente

Cleaned up test_powerwindow and fixed debug test

Yentl Van Tendeloo 8 anni fa
parent
commit
68142835fd
1 ha cambiato i file con 37 aggiunte e 98 eliminazioni
  1. 37 98
      integration/test_powerwindow.py

+ 37 - 98
integration/test_powerwindow.py

@@ -78,53 +78,22 @@ class TestPowerWindow(unittest.TestCase):
         global called
         called = 0
 
-        def cb_req():
-            global called
-            if called > len(callbacks):
-                raise Exception("Seemingly called some operation twice!")
-            else:
-                called += 1
-            model_overwrite(None, open("models/requirements_model.mvc", 'r').read())
-
-        def cb_plant():
-            global called
-            if called > len(callbacks):
-                raise Exception("Seemingly called some operation twice!")
-            else:
-                called += 1
-            model_overwrite(None, open("models/plant_model.mvc", 'r').read())
-
-        def cb_env():
-            global called
-            if called > len(callbacks):
-                raise Exception("Seemingly called some operation twice!")
-            else:
-                called += 1
-            model_overwrite(None, open("models/environment_model.mvc", 'r').read())
-
-        def cb_ctrl():
-            global called
-            if called > len(callbacks):
-                raise Exception("Seemingly called some operation twice!")
-            else:
-                called += 1
-            model_overwrite(None, open("models/control_model.mvc", 'r').read())
-
-        def cb_query():
-            global called
-            if called > len(callbacks):
-                raise Exception("Seemingly called some operation twice!")
-            else:
-                called += 1
-            model_overwrite(None, open("models/query_model.mvc", 'r').read())
-
-        def cb_arch():
-            global called
-            if called > len(callbacks):
-                raise Exception("Seemingly called some operation twice!")
-            else:
-                called += 1
-            model_overwrite(None, open("models/architecture_model.mvc", 'r').read())
+        def get_function(filename):
+            def func():
+                global called
+                if called > len(callbacks):
+                    raise Exception("Seemingly called some operation twice!")
+                else:
+                    called += 1
+                model_overwrite(None, open(filename, "r").read())
+            return func
+
+        cb_req = get_function("models/requirements_model.mvc")
+        cb_plant = get_function("models/plant_model.mvc")
+        cb_env = get_function("models/environment_model.mvc")
+        cb_ctrl = get_function("models/control_model.mvc")
+        cb_query = get_function("models/query_model.mvc")
+        cb_arch = get_function("models/architecture_model.mvc")
 
         callbacks = {
                 "revise_req": cb_req,
@@ -201,55 +170,24 @@ class TestPowerWindow(unittest.TestCase):
         global called
         called = 0
 
-        def cb_req():
-            global called
-            if called > len(callbacks) * 2:
-                raise Exception("Seemingly called some operation twice!")
-            if called < len(callbacks):
-                model_overwrite(None, open("models/requirements_model.mvc", 'r').read())
-            called += 1
-
-        def cb_plant():
-            global called
-            if called > len(callbacks) * 2:
-                raise Exception("Seemingly called some operation twice!")
-            if called < len(callbacks):
-                model_overwrite(None, open("models/plant_model.mvc", 'r').read())
-            called += 1
-
-        def cb_env():
-            global called
-            if called > len(callbacks) * 2:
-                raise Exception("Seemingly called some operation twice!")
-            if called < len(callbacks):
-                model_overwrite(None, open("models/environment_model.mvc", 'r').read())
-            called += 1
-
-        def cb_ctrl():
-            global called
-            if called > len(callbacks) * 2:
-                raise Exception("Seemingly called some operation twice!")
-            if called < len(callbacks):
-                model_overwrite(None, open("models/control_model_wrong.mvc", 'r').read())
-            else:
-                model_overwrite(None, open("models/control_model.mvc", 'r').read())
-            called += 1
-
-        def cb_query():
-            global called
-            if called > len(callbacks) * 2:
-                raise Exception("Seemingly called some operation twice!")
-            if called < len(callbacks):
-                model_overwrite(None, open("models/query_model.mvc", 'r').read())
-            called += 1
-
-        def cb_arch():
-            global called
-            if called > len(callbacks) * 2:
-                raise Exception("Seemingly called some operation twice!")
-            if called < len(callbacks):
-                model_overwrite(None, open("models/architecture_model.mvc", 'r').read())
-            called += 1
+        def get_function(filename, fixed=None):
+            def func():
+                global called
+                if called > len(callbacks) * 2:
+                    raise Exception("Seemingly called some operation twice!")
+                called += 1
+                if called > len(callbacks) and fixed is not None:
+                    model_overwrite(None, open(fixed, "r").read())
+                else:
+                    model_overwrite(None, open(filename, "r").read())
+            return func
+
+        cb_req = get_function("models/requirements_model.mvc")
+        cb_plant = get_function("models/plant_model.mvc")
+        cb_env = get_function("models/environment_model.mvc")
+        cb_ctrl = get_function("models/control_model_wrong.mvc", "models/control_model.mvc")
+        cb_query = get_function("models/query_model.mvc")
+        cb_arch = get_function("models/architecture_model.mvc")
 
         callbacks = {
                 "revise_req": cb_req,
@@ -262,5 +200,6 @@ class TestPowerWindow(unittest.TestCase):
 
         process_execute("pm_powerwindow", "pm_", callbacks)
 
-        if called != 12:
-            raise Exception("Not iterated twice!")
+        if called != 11:
+            print(called)
+            raise Exception("Not executed sufficiently:" + str(called))