From b73c4fc5af4e261a5970beb2fb990fe926b04ef7 Mon Sep 17 00:00:00 2001
From: Cosmin Mogos <cosmin.mogos@spirent.com>
Date: Tue, 20 Feb 2018 13:24:47 +0100
Subject: [PATCH] Fix for component allready running (AE2)

Always wait for the AE2 component to finish before continuing.

Affected test cases:
OneM2M_Testcases_CSE_Release_1
TC_CSE_SUB_CRE_001_SUB
TC_CSE_SUB_CRE_004
TC_CSE_SUB_CRE_005
TC_CSE_SUB_UPD_001
TC_CSE_SUB_DEL_001
OneM2M_Testcases_CSE_Release_2
TC_CSE_SUB_UPD_007
TC_CSE_SUB_NTF_001
TC_CSE_SUB_NTF_002
TC_CSE_SUB_NTF_003
TC_CSE_SUB_UPD_002
TC_CSE_SUB_DEL_002
TC_CSE_SUB_DEL_003
TC_CSE_SUB_UPD_003
TC_CSE_SUB_UPD_004
TC_CSE_SUB_UPD_005
TC_CSE_SUB_UPD_008
TC_CSE_SUB_UPD_009
TC_CSE_SUB_UPD_006
---
 LibOneM2M/OneM2M_Functions.ttcn | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index 22c64e0..634065e 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -421,7 +421,8 @@ module OneM2M_Functions {
 					v_resourceIndex := f_setResource(v_resource.resource, v_resource.resourceType, v_resource.parentIndex, false);
 				}
 			}
-
+			p_component.done;
+			
 			f_disconnectInfoPort(p_component);
 			
 			return v_resourceIndex;
@@ -693,6 +694,7 @@ module OneM2M_Functions {
 						p_createRequestPrimitive.primitiveContent.subscription.notificationURI := {f_getResourceAddress(p_ae2Index)};
 					}
 					vc_ae2.start(f_cse_notifyProcedure_subscriptionVerificationHandler(p_responseStatusCode));
+					vc_ae2.done;
 				}
 			}
 		
@@ -3404,6 +3406,7 @@ module OneM2M_Functions {
 					tc_ac.stop;
 				}
 				[] tc_ac.timeout {
+					p_ae.stop;
 					setverdict(inconc, __SCOPE__ & "INFO: Component did not finish");
 				}
 			}			 
-- 
GitLab