Browse Source

Fixed tests for model_add

Yentl Van Tendeloo 7 years ago
parent
commit
f516560d02

+ 2 - 2
bootstrap/core_algorithm.alc

@@ -267,7 +267,6 @@ Void function new_task():
 				// Now create a folder for this user's models!
 				// Now create a folder for this user's models!
 				current_user_id = get_user_id("admin")
 				current_user_id = get_user_id("admin")
 				create_folders(user_id, "users/" + username)
 				create_folders(user_id, "users/" + username)
-				log("User folder created for " + username)
 				current_user_id = user_id
 				current_user_id = user_id
 				break!
 				break!
 			else:
 			else:
@@ -1173,6 +1172,7 @@ String function cmd_model_add(type : String, name : String, code : String):
 		if (allow_read(current_user_id, type_id)):
 		if (allow_read(current_user_id, type_id)):
 			// And is readable
 			// And is readable
 			mm = get_full_model(type_id, get_entry_id("formalisms/SimpleClassDiagrams"))
 			mm = get_full_model(type_id, get_entry_id("formalisms/SimpleClassDiagrams"))
+			log("Got mm: " + cast_id(mm))
 			if (element_neq(mm, read_root())):
 			if (element_neq(mm, read_root())):
 				if (element_neq(create_folders(current_user_id, get_foldername(name)), read_root())):
 				if (element_neq(create_folders(current_user_id, get_foldername(name)), read_root())):
 					if (allow_write(current_user_id, get_entry_id(get_foldername(name)))):
 					if (allow_write(current_user_id, get_entry_id(get_foldername(name)))):
@@ -1192,7 +1192,7 @@ String function cmd_model_add(type : String, name : String, code : String):
 				else:
 				else:
 					return "Write permission denied to: " + name!
 					return "Write permission denied to: " + name!
 			else:
 			else:
-				return "Type is not typed by formalisms/SimpleClassDiagrams: " + type!
+				return "Type cannot be typed as formalisms/SimpleClassDiagrams: " + type!
 		else:
 		else:
 			return "Read permission denied to: " + type!
 			return "Read permission denied to: " + type!
 	else:
 	else:

+ 0 - 1
bootstrap/task_manager.alc

@@ -19,7 +19,6 @@ Void function task_management():
 	while (True):
 	while (True):
 		while (True):
 		while (True):
 			if (bool_not(other_has_output("task_manager"))):
 			if (bool_not(other_has_output("task_manager"))):
-				log("Output is gone...")
 				while (dict_in(read_root(), taskname)):
 				while (dict_in(read_root(), taskname)):
 					taskname = cast_string(random_string(20))
 					taskname = cast_string(random_string(20))
 				break!
 				break!

+ 0 - 2
hybrid_server/classes/mvkcontroller.xml

@@ -150,8 +150,6 @@
                                     self.forward = (data["taskname"], "input", value)
                                     self.forward = (data["taskname"], "input", value)
                                     self.HTTP_reply = "OK"
                                     self.HTTP_reply = "OK"
                                 elif data["op"] == "get_output":
                                 elif data["op"] == "get_output":
-                                    if data["taskname"] == "task_manager":
-                                        print("Get output for " + str(data["taskname"]))
                                     self.forward = (data["taskname"], "output", self.source)
                                     self.forward = (data["taskname"], "output", self.source)
                                     self.HTTP_reply = None
                                     self.HTTP_reply = None
                                 elif data["op"] == "pause":
                                 elif data["op"] == "pause":

+ 0 - 1
hybrid_server/classes/socket.xml

@@ -133,7 +133,6 @@
                             try:
                             try:
                                 params = dict([p.split('=') for p in data.split('&')])
                                 params = dict([p.split('=') for p in data.split('&')])
                                 data = {k: unquote_plus(v) for k, v in params.items()}
                                 data = {k: unquote_plus(v) for k, v in params.items()}
-                                print("Received data: " + str(data))
                             except Exception as e:
                             except Exception as e:
                                 print("Problem receiving data in socket: ")
                                 print("Problem receiving data in socket: ")
                                 print(str(e))
                                 print(str(e))

+ 1 - 7
hybrid_server/classes/task.xml

@@ -140,19 +140,13 @@
                                 <transition cond="self.unlocked" target="../processing"/>
                                 <transition cond="self.unlocked" target="../processing"/>
                             </state>
                             </state>
 
 
-                            <state id="failed">
-                                <script>
-                                    print("TODO: task has failed")
-                                </script>
-                            </state>
+                            <state id="failed"/>
                         </state>
                         </state>
 
 
                         <state id="output">
                         <state id="output">
                             <state id="output">
                             <state id="output">
                                 <onentry>
                                 <onentry>
                                     <script>
                                     <script>
-                                        if self.taskname == "task_manager":
-                                            print("Output queue: " + str(self.output_queue))
                                         if self.output_queue:
                                         if self.output_queue:
                                             if self.execute_modelverse(self.taskname, "get_output", []):
                                             if self.execute_modelverse(self.taskname, "get_output", []):
                                                 if self.mvk.success:
                                                 if self.mvk.success:

+ 12 - 2
unit/test_all.py

@@ -269,13 +269,23 @@ class TestModelverse(unittest.TestCase):
         except WritePermissionDenied:
         except WritePermissionDenied:
             assert model_list("users/") == set(["user/", "admin/", "LoLA/", "pypdevs_batch_service/", "HUTN/", "JSON/", "file/", "pypdevs_service/"])
             assert model_list("users/") == set(["user/", "admin/", "LoLA/", "pypdevs_batch_service/", "HUTN/", "JSON/", "file/", "pypdevs_service/"])
 
 
-        model_add("users/user/test/c", "users/user/test/a")
+        model_add("users/user/test/c", "users/user/test/b", """
+            A a {}
+            """)
         try:
         try:
-            model_add("users/user/test/d", "users/user/test/c")
+            # Cannot add this model, as it cannot be auto-typecasted to formalisms/SimpleClassDiagrams
+            model_add("users/user/test/d", "users/user/test/c", """
+                a c {}
+                """)
             self.fail()
             self.fail()
         except UnknownM3:
         except UnknownM3:
             assert model_list("users/user/test") == set(["a", "b", "c"])
             assert model_list("users/user/test") == set(["a", "b", "c"])
 
 
+        # We can add this model for multiple levels, as it can be automatically typecasted to formalisms/SimpleClassDiagrams, since it is empty
+        model_add("users/user/test/d", "users/user/test/b")
+        model_add("users/user/test/e", "users/user/test/d")
+        model_add("users/user/test/f", "users/user/test/e")
+
     """
     """
     def test_op_model_move(self):
     def test_op_model_move(self):
     def test_op_model_delete(self):
     def test_op_model_delete(self):

+ 1 - 8
wrappers/classes/http_client.xml

@@ -54,9 +54,6 @@
                         <parameter expr="self.socket"/>
                         <parameter expr="self.socket"/>
                         <parameter expr="self.address"/>
                         <parameter expr="self.address"/>
                     </raise>
                     </raise>
-                    <script>
-                        print("Connecting ...")
-                    </script>
                 </onentry>
                 </onentry>
 
 
                 <transition port="socket_in" event="error_socket" target="../cooldown"/>
                 <transition port="socket_in" event="error_socket" target="../cooldown"/>
@@ -68,11 +65,7 @@
             </state>
             </state>
 
 
             <state id="cooldown">
             <state id="cooldown">
-                <transition after="0.1" target="../connecting">
-                    <script>
-                        print("COOLDOWN")
-                    </script>
-                </transition>
+                <transition after="0.1" target="../connecting"/>
             </state>
             </state>
 
 
             <transition after="self.timeout" target="../waiting">
             <transition after="self.timeout" target="../waiting">

+ 0 - 7
wrappers/classes/modelverse.xml

@@ -160,7 +160,6 @@
                             #print("Got input (%s): %s" % (self.taskname, data))
                             #print("Got input (%s): %s" % (self.taskname, data))
                             if self.taskname == "task_manager":
                             if self.taskname == "task_manager":
                                 self.controller.taskname = self.taskname = json.loads(data)
                                 self.controller.taskname = self.taskname = json.loads(data)
-                                print("Got taskname: " + data)
                             else:
                             else:
                                 self.responses.append(json.loads(data))
                                 self.responses.append(json.loads(data))
                         </script>
                         </script>
@@ -176,7 +175,6 @@
                             #print("Got input (%s): %s" % (self.taskname, data))
                             #print("Got input (%s): %s" % (self.taskname, data))
                             if self.taskname == "task_manager":
                             if self.taskname == "task_manager":
                                 self.controller.taskname = self.taskname = json.loads(data)
                                 self.controller.taskname = self.taskname = json.loads(data)
-                                print("Got taskname: " + data)
                             else:
                             else:
                                 self.responses.append(json.loads(data))
                                 self.responses.append(json.loads(data))
                         </script>
                         </script>
@@ -213,9 +211,6 @@
                                 <parameter expr="self.address"/>
                                 <parameter expr="self.address"/>
                                 <parameter expr="self.timeout"/>
                                 <parameter expr="self.timeout"/>
                             </raise>
                             </raise>
-                            <script>
-                                print("CONNECT HTTP")
-                            </script>
                         </transition>
                         </transition>
 
 
                         <transition cond="self.i == 2 and self.taskname != 'task_manager'" target="../../wait_for_action/connected">
                         <transition cond="self.i == 2 and self.taskname != 'task_manager'" target="../../wait_for_action/connected">
@@ -230,14 +225,12 @@
                         <transition event="http_client_ready" cond="self.i == 0" target="../connect_http_client">
                         <transition event="http_client_ready" cond="self.i == 0" target="../connect_http_client">
                             <script>
                             <script>
                                 self.i += 1
                                 self.i += 1
-                                print("Got first HTTP ready")
                             </script>
                             </script>
                         </transition>
                         </transition>
 
 
                         <transition event="http_client_ready" cond="self.i == 1" target="../connect_http_client">
                         <transition event="http_client_ready" cond="self.i == 1" target="../connect_http_client">
                             <script>
                             <script>
                                 self.i += 1
                                 self.i += 1
-                                print("RAISE get output")
                             </script>
                             </script>
                             <raise event="HTTP_input" target="self.http_clients[1]">
                             <raise event="HTTP_input" target="self.http_clients[1]">
                                 <parameter expr='urlencode({"op": "get_output", "taskname": self.taskname})'/>
                                 <parameter expr='urlencode({"op": "get_output", "taskname": self.taskname})'/>

+ 0 - 12
wrappers/modelverse_SCCD.py

@@ -1,8 +1,6 @@
 """
 """
 Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
 Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
 
 
-Date:   Thu Jun  7 16:50:26 2018
-
 Model author: Yentl Van Tendeloo
 Model author: Yentl Van Tendeloo
 Model name:   MvK Server
 Model name:   MvK Server
 Model description:
 Model description:
@@ -2463,7 +2461,6 @@ class Modelverse(RuntimeClassBase):
         #print("Got input (%s): %s" % (self.taskname, data))
         #print("Got input (%s): %s" % (self.taskname, data))
         if self.taskname == "task_manager":
         if self.taskname == "task_manager":
             self.controller.taskname = self.taskname = json.loads(data)
             self.controller.taskname = self.taskname = json.loads(data)
-            print("Got taskname: " + data)
         else:
         else:
             self.responses.append(json.loads(data))
             self.responses.append(json.loads(data))
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[1], Event("HTTP_input", None, [urlencode({"op": "get_output", "taskname": self.taskname}), "parent"])]))
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[1], Event("HTTP_input", None, [urlencode({"op": "get_output", "taskname": self.taskname}), "parent"])]))
@@ -2477,7 +2474,6 @@ class Modelverse(RuntimeClassBase):
         #print("Got input (%s): %s" % (self.taskname, data))
         #print("Got input (%s): %s" % (self.taskname, data))
         if self.taskname == "task_manager":
         if self.taskname == "task_manager":
             self.controller.taskname = self.taskname = json.loads(data)
             self.controller.taskname = self.taskname = json.loads(data)
-            print("Got taskname: " + data)
         else:
         else:
             self.responses.append(json.loads(data))
             self.responses.append(json.loads(data))
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[1], Event("HTTP_input", None, [urlencode({"op": "get_output", "taskname": self.taskname}), "parent"])]))
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[1], Event("HTTP_input", None, [urlencode({"op": "get_output", "taskname": self.taskname}), "parent"])]))
@@ -2488,7 +2484,6 @@ class Modelverse(RuntimeClassBase):
     
     
     def _initialized_behaviour_init_connect_http_client_0_exec(self, parameters):
     def _initialized_behaviour_init_connect_http_client_0_exec(self, parameters):
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[self.i], Event("connect", None, [self.address, self.timeout])]))
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[self.i], Event("connect", None, [self.address, self.timeout])]))
-        print("CONNECT HTTP")
     
     
     def _initialized_behaviour_init_connect_http_client_0_guard(self, parameters):
     def _initialized_behaviour_init_connect_http_client_0_guard(self, parameters):
         return self.i < 2
         return self.i < 2
@@ -2501,14 +2496,12 @@ class Modelverse(RuntimeClassBase):
     
     
     def _initialized_behaviour_init_waiting_http_client_0_exec(self, parameters):
     def _initialized_behaviour_init_waiting_http_client_0_exec(self, parameters):
         self.i += 1
         self.i += 1
-        print("Got first HTTP ready")
     
     
     def _initialized_behaviour_init_waiting_http_client_0_guard(self, parameters):
     def _initialized_behaviour_init_waiting_http_client_0_guard(self, parameters):
         return self.i == 0
         return self.i == 0
     
     
     def _initialized_behaviour_init_waiting_http_client_1_exec(self, parameters):
     def _initialized_behaviour_init_waiting_http_client_1_exec(self, parameters):
         self.i += 1
         self.i += 1
-        print("RAISE get output")
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[1], Event("HTTP_input", None, [urlencode({"op": "get_output", "taskname": self.taskname}), "parent"])]))
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[1], Event("HTTP_input", None, [urlencode({"op": "get_output", "taskname": self.taskname}), "parent"])]))
     
     
     def _initialized_behaviour_init_waiting_http_client_1_guard(self, parameters):
     def _initialized_behaviour_init_waiting_http_client_1_guard(self, parameters):
@@ -3596,7 +3589,6 @@ class HTTPClient(RuntimeClassBase):
         
         
         # transition /connecting/cooldown
         # transition /connecting/cooldown
         _connecting_cooldown_0 = Transition(self, self.states["/connecting/cooldown"], [self.states["/connecting/connecting"]])
         _connecting_cooldown_0 = Transition(self, self.states["/connecting/cooldown"], [self.states["/connecting/connecting"]])
-        _connecting_cooldown_0.setAction(self._connecting_cooldown_0_exec)
         _connecting_cooldown_0.setTrigger(Event("_1after"))
         _connecting_cooldown_0.setTrigger(Event("_1after"))
         self.states["/connecting/cooldown"].addTransition(_connecting_cooldown_0)
         self.states["/connecting/cooldown"].addTransition(_connecting_cooldown_0)
         
         
@@ -3671,7 +3663,6 @@ class HTTPClient(RuntimeClassBase):
     
     
     def _connecting_connecting_enter(self):
     def _connecting_connecting_enter(self):
         self.big_step.outputEvent(Event("connect_socket", "socket_out", [self.socket, self.address]))
         self.big_step.outputEvent(Event("connect_socket", "socket_out", [self.socket, self.address]))
-        print("Connecting ...")
     
     
     def _connecting_cooldown_enter(self):
     def _connecting_cooldown_enter(self):
         self.addTimer(1, 0.1)
         self.addTimer(1, 0.1)
@@ -3712,9 +3703,6 @@ class HTTPClient(RuntimeClassBase):
         socket = parameters[0]
         socket = parameters[0]
         return self.socket == socket
         return self.socket == socket
     
     
-    def _connecting_cooldown_0_exec(self, parameters):
-        print("COOLDOWN")
-    
     def _connected_listening_listen_0_exec(self, parameters):
     def _connected_listening_listen_0_exec(self, parameters):
         socket = parameters[0]
         socket = parameters[0]
         data = parameters[1]
         data = parameters[1]