Преглед изворни кода

Fix a load of remaining bugs

Yentl Van Tendeloo пре 8 година
родитељ
комит
2581e258dc
4 измењених фајлова са 11 додато и 11 уклоњено
  1. 0 1
      bootstrap/core_algorithm.alc
  2. 6 5
      unit/test_all.py
  3. 2 2
      wrappers/classes/modelverse.xml
  4. 3 3
      wrappers/modelverse_SCCD.py

+ 0 - 1
bootstrap/core_algorithm.alc

@@ -920,7 +920,6 @@ Void function enact_PM(pm : Element, prefix : String):
 			set_add_node(worklist, create_tuple(next, result))
 
 	// Reached a finish element, so stop
-	output("Success")
 	return !
 
 String function cmd_help():

+ 6 - 5
unit/test_all.py

@@ -94,9 +94,9 @@ class TestModelverse(unittest.TestCase):
         folder_create("type mappings/test")
 
     def tearDown(self):
-        #model_delete("test")
-        #model_delete("type mappings/test")
-        #verify_clean()
+        model_delete("test")
+        model_delete("type mappings/test")
+        verify_clean()
         pass
 
     def test_list_full(self):
@@ -286,11 +286,12 @@ class TestModelverse(unittest.TestCase):
         model_add("test/MM_rendered_graphical", "formalisms/SimpleClassDiagrams", open("models/MM_rendered_graphical.mvc", 'r').read())
         model_add("test/my_CBD", "test/CausalBlockDiagrams", open("integration/code/my_cbd.mvc", 'r').read())
 
-        def add_tracability():
-            instantiate(None, "Association", ("abstract/Block", "rendered/Group"), ID="TracabilityLink")
+        def add_tracability(context):
+            instantiate(None, "Association", ("abstract/Block", "rendered/Group"), ID="TracabilityLink", context=context)
 
         transformation_add_MT({"abstract": "test/CausalBlockDiagrams", "rendered": "test/MM_rendered_graphical"}, {"abstract": "test/CausalBlockDiagrams", "rendered": "test/MM_rendered_graphical"}, "test/render_graphical_CBD", open("models/CBD_mapper.mvc", 'r').read(), add_tracability)
         result = model_render("test/my_CBD", "test/render_graphical_CBD")
+
         assert len(result) == 23
 
         model_delete("RAMified")

+ 2 - 2
wrappers/classes/modelverse.xml

@@ -462,7 +462,7 @@
 
                         <transition cond="self.expect_response_partial('Success: ', pop=False)" target="../../wait_for_action/history">
                             <raise event="result">
-                                <parameter expr="self.split_response(self.responses.pop(0))[0]"/>
+                                <parameter expr="json.loads(self.split_response(self.responses.pop(0))[0])"/>
                             </raise>
                         </transition>
                     </state>
@@ -1715,7 +1715,7 @@
 
                     <history id="history" type="deep"/>
 
-                    <transition cond="self.actions[None]" target="history">
+                    <transition cond="self.context is None and self.actions[None]" target="history">
                         <script>
                             print("Got unknown operation: " + str(self.actions[None].pop(0)))
                         </script>

+ 3 - 3
wrappers/modelverse_SCCD.py

@@ -1,7 +1,7 @@
 """
 Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
 
-Date:   Wed Sep  6 10:13:32 2017
+Date:   Wed Sep  6 11:00:01 2017
 
 Model author: Yentl Van Tendeloo
 Model name:   MvK Server
@@ -1934,7 +1934,7 @@ class Modelverse(RuntimeClassBase):
         self.raiseInternalEvent(Event("exception", None, ['UnknownOperation', 'Operation is unknown']))
     
     def _initialized_behaviour_wait_for_action_0_guard(self, parameters):
-        return self.actions[None]
+        return self.context is None and self.actions[None]
     
     def _initialized_behaviour_wait_for_action_modelling_0_exec(self, parameters):
         print("Got unexpected operation: " + str(self.actions[self.context].pop(0)))
@@ -2218,7 +2218,7 @@ class Modelverse(RuntimeClassBase):
         return self.expect_response('Success')
     
     def _initialized_behaviour_operations_model_render_0_exec(self, parameters):
-        self.raiseInternalEvent(Event("result", None, [self.split_response(self.responses.pop(0))[0]]))
+        self.raiseInternalEvent(Event("result", None, [json.loads(self.split_response(self.responses.pop(0))[0])]))
     
     def _initialized_behaviour_operations_model_render_0_guard(self, parameters):
         return self.expect_response_partial('Success: ', pop=False)