From fc93ea4fdaa9a243249c666a7b1b088c8d285319 Mon Sep 17 00:00:00 2001
From: Siddharth Trika <strikha@cdot.in>
Date: Thu, 20 Oct 2022 11:26:15 +0000
Subject: [PATCH] New Testcases added for Device Triggering
 OneM2M_Testcases_CSE_Release_3.ttcn

---
 OneM2M_Testcases_CSE_Release_3.ttcn | 1789 +++++++++++++++++++++++++++
 1 file changed, 1789 insertions(+)

diff --git a/OneM2M_Testcases_CSE_Release_3.ttcn b/OneM2M_Testcases_CSE_Release_3.ttcn
index c72ab26..156a2a6 100644
--- a/OneM2M_Testcases_CSE_Release_3.ttcn
+++ b/OneM2M_Testcases_CSE_Release_3.ttcn
@@ -18628,6 +18628,1795 @@ module OneM2M_Testcases_CSE_Release_3 {
 				
 			group device_trigerring {
 				
+
+				/* @desk Check that the IUT sends an explicit 3GPP Device Trigger Request when it receives a valid <triggerRequest> resource
+				 *	
+				 *	
+				 */
+				testcase TC_CSE_3GPP_TRIG_001_CON() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+						
+					v_scef.start(f_CSE_3GPP_TRIG_001_CON());
+					v_scef.done;
+						
+				} // end testcase TC_CSE_3GPP_TRIG_001_CON
+				
+				function f_CSE_3GPP_TRIG_001_CON() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1;
+					
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- triggerInfoOperation, triggerInfoAddress, targetedResourceType", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; 	//TriggerPurpose                   TriggerPayload            
+																//int1 establishConnection ---> resource address of the <remoteCSE> or <AE>
+																//int2 registrationRequest ---> the resource address (triggerInfoAddress) of the <MEFBase>
+																//int3 executeCRUD         ---> the resource address (triggerInfoAddress) of the <cseBase>
+																//int4 enrolmentRequest    ---> the type of CRUDN operation (triggerInfoOperation), the address of the resource that the operation should be performed on (triggerInfoAddress) and the resource type (targetedResourceType)
+
+					
+					// Test component configuration
+					f_cf05Up();
+										
+					// Test Body
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);
+
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Request(v_requestPrimitive)) {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 3GPP Device Triggering received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer");
+						}
+					}
+					
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+					
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_001_CON
+
+				/* @desk Check that the IUT sends an explicit 3GPP Device Trigger Request when it receives a valid <triggerRequest> resource
+				 *	
+				 *	
+				 */
+				testcase TC_CSE_3GPP_TRIG_001_REQ() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+						
+					v_scef.start(f_CSE_3GPP_TRIG_001_REQ());
+					v_scef.done;
+						
+				} // end testcase TC_CSE_3GPP_TRIG_001_REQ
+				
+				function f_CSE_3GPP_TRIG_001_REQ() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1;
+					
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- the resource address (triggerInfoAddress) of the <MEFBase>", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int2; 	//TriggerPurpose                   TriggerPayload            
+																//int1 establishConnection ---> resource address of the <remoteCSE> or <AE>
+																//int2 registrationRequest ---> the resource address (triggerInfoAddress) of the <MEFBase>
+																//int3 executeCRUD         ---> the resource address (triggerInfoAddress) of the <cseBase>
+																//int4 enrolmentRequest    ---> the type of CRUDN operation (triggerInfoOperation), the address of the resource that the operation should be performed on (triggerInfoAddress) and the resource type (targetedResourceType)
+
+					
+					// Test component configuration
+					f_cf05Up();
+										
+					// Test Body
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);
+
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Request(v_requestPrimitive)) {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 3GPP Device Triggering received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer");
+						}
+					}
+					
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+					
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_001_REQ
+
+				/* @desk Check that the IUT sends an explicit 3GPP Device Trigger Request when it receives a valid <triggerRequest> resource
+				 *	
+				 *	
+				 */
+				testcase TC_CSE_3GPP_TRIG_001_EXE() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+						
+					v_scef.start(f_CSE_3GPP_TRIG_001_EXE());
+					v_scef.done;
+						
+				} // end testcase TC_CSE_3GPP_TRIG_001_EXE
+				
+				function f_CSE_3GPP_TRIG_001_EXE() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1;
+					
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- the resource address (triggerInfoAddress) of the <cseBase>", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int3; 	//TriggerPurpose                   TriggerPayload            
+																//int1 establishConnection ---> resource address of the <remoteCSE> or <AE>
+																//int2 registrationRequest ---> the resource address (triggerInfoAddress) of the <MEFBase>
+																//int3 executeCRUD         ---> the resource address (triggerInfoAddress) of the <cseBase>
+																//int4 enrolmentRequest    ---> the type of CRUDN operation (triggerInfoOperation), the address of the resource that the operation should be performed on (triggerInfoAddress) and the resource type (targetedResourceType)
+
+					
+					// Test component configuration
+					f_cf05Up();
+										
+					// Test Body
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);
+
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Request(v_requestPrimitive)) {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 3GPP Device Triggering received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer");
+						}
+					}
+					
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+					
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_001_EXE
+		
+				/* @desk Check that the IUT sends an explicit 3GPP Device Trigger Request when it receives a valid <triggerRequest> resource
+				 *	
+				 *	
+				 */
+				testcase TC_CSE_3GPP_TRIG_001_ENR() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+						
+					v_scef.start(f_CSE_3GPP_TRIG_001_ENR());
+					v_scef.done;
+						
+				} // end testcase TC_CSE_3GPP_TRIG_001_ENR
+				
+				function f_CSE_3GPP_TRIG_001_ENR() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1;
+					
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- the resource address (triggerInfoAddress) of the <cseBase>", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int4; 	//TriggerPurpose                   TriggerPayload            
+																//int1 establishConnection ---> resource address of the <remoteCSE> or <AE>
+																//int2 registrationRequest ---> the resource address (triggerInfoAddress) of the <MEFBase>
+																//int3 executeCRUD         ---> the resource address (triggerInfoAddress) of the <cseBase>
+																//int4 enrolmentRequest    ---> the type of CRUDN operation (triggerInfoOperation), the address of the resource that the operation should be performed on (triggerInfoAddress) and the resource type (targetedResourceType)
+
+					
+					// Test component configuration
+					f_cf05Up();
+										
+					// Test Body
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);
+
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Request(v_requestPrimitive)) {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 3GPP Device Triggering received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer");
+						}
+					}
+					
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+					
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_001_ENR
+
+
+				/* @desk Check that the IUT sends an implicit 3GPP Device Trigger Request 
+				 *		when it receives a valid <notification> from an AE
+				 *
+				 */
+				testcase TC_CSE_3GPP_TRIG_002() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+						
+					v_scef.start(f_CSE_3GPP_TRIG_002());
+					v_scef.done;
+						
+				} // end testcase TC_CSE_3GPP_TRIG_002
+				
+				function f_CSE_3GPP_TRIG_002() runs on ScefSimu system ScefSystem{
+					
+					var template RequestPrimitive v_createContainer := m_createContainerBase;
+					var template RequestPrimitive v_updateContainer := m_updateContainerBase;
+					var template RequestPrimitive v_createRequestSubscription;						
+			
+					var integer v_aeIndex := -1, v_containerIndex := -1;
+					var RequestPrimitive v_request;
+
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+																	
+					var template T8Request v_requestPrimitive;
+					
+					var Labels v_labels_1:= {"VALUE_1"};
+					var Labels v_labels_2:= {"VALUE_2"};	
+					
+					// 3GPP device trigger request with TriggerPayload null
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, -, "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+										
+					var template NiddConfiguration v_niddConfiguration := mw_niddConfiguration();
+					var template RequestBodyT8 v_niddConfig := {individualNiddConfiguration := v_niddConfiguration};
+
+					v_createContainer.primitiveContent.container.labels := v_labels_1;			
+					v_updateContainer.primitiveContent.container.labels := v_labels_2;
+					
+					// Test component configuration
+					f_cf05Up();
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// Container under AE
+					vc_ae1.start(f_cse_createResource(int3, v_createContainer, v_aeIndex));					
+					v_containerIndex := f_getLatestResourceIndex(vc_ae1);
+			
+					// Create Subscription
+					v_createRequestSubscription := m_createSubscriptionAdvanced(f_getResourceAddress(v_containerIndex), -, {f_getResourceAddress(v_aeIndex)}, m_eventNotificationCriteria({int1}), -, omit, omit, omit, -, omit);
+					vc_ae1.start(f_cse_createResource(int23, v_createRequestSubscription, v_containerIndex));
+					
+					// Test Body
+					vc_ae1.start(f_cse_updateResource(int3, v_containerIndex, v_updateContainer));
+				
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -, v_3GPPDeviceTriggeringRequest);
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Request(v_requestPrimitive)) {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 3GPP device Triggering received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer");
+						}
+					}
+					
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+					
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_NIDD_002
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> to ERROR_NSE_NOT_FOUND 
+				 *	when the SCEF does not respond to the Device Trigger Request prior to the timeout period
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_003() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_003());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_003
+				
+						
+				function f_CSE_3GPP_TRIG_003() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					// SCEF does not send a reponse to IUT
+					
+						//mcnPort.send();	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to ERROR_NSE_NOT_FOUND
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int2))) {// ERROR_NSE_NOT_FOUND
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to ERROR_NSE_NOT_FOUND");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_003
+			
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_1() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_1());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_1
+				
+						
+				function f_CSE_3GPP_TRIG_004_1() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(SUCCESS, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER_DELIEVERED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int4))) {// TRIGGER_DELIEVERED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER_DELIEVERED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_1
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_2() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_2());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_2
+				
+						
+				function f_CSE_3GPP_TRIG_004_2() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(UNKNOWN, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-FAILED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// TRIGGER-FAILED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-FAILED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_2
+
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_3() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_3());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_3
+				
+						
+				function f_CSE_3GPP_TRIG_004_3() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(FAILURE, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-FAILED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// TRIGGER-FAILED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-FAILED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_3
+
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_4() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_4());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_4
+				
+						
+				function f_CSE_3GPP_TRIG_004_4() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(TRIGGERED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-TRIGGERED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// FixME: TRIGGER-TRIGGERED not defined in enum
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-TRIGGERED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_4
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_5() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_5());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_5
+				
+						
+				function f_CSE_3GPP_TRIG_004_5() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(EXPIRED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-EXPIRED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int5))) {// TRIGGER-EXPIRED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-EXPIRED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_5
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_6() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_6());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_6
+				
+						
+				function f_CSE_3GPP_TRIG_004_6() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(UNCONFIRMED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-UNCONFIRMED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int5))) {// Fixme: TRIGGER-UNCONFIRMED not defined in enum
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-UNCONFIRMED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_6
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_7() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_7());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_7
+				
+						
+				function f_CSE_3GPP_TRIG_004_7() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(REPLACED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-FAILED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// TRIGGER-FAILED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-FAILED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_7
+
+				/* @desk Check that the IUT sets the triggerStatus attribute of the <triggerRequest> 
+				 *		to the proper value when the SCEF responds to the Device Trigger Request
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_004_8() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_004_8());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_004_8
+				
+						
+				function f_CSE_3GPP_TRIG_004_8() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "link");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(TERMINATE, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends Device Triggering response 				
+					mcnPort.send(mw_t8Response(mw_t8_response_201_created(-, mw_response_body_individualDeviceTriggering(v_deviceTriggeringResponse))));	
+					
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-TERMINATED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// Fixme: TRIGGER-TERMINATED not in enum
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-TERMINATED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_004_8
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_1() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_1());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_1
+				
+						
+				function f_CSE_3GPP_TRIG_005_1() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(SUCCESS, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER_DELIEVERED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int4))) {// TRIGGER_DELIEVERED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER_DELIEVERED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_1
+
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_2() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_2());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_2
+				
+						
+				function f_CSE_3GPP_TRIG_005_2() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(UNKNOWN, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-FAILED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// TRIGGER-FAILED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-FAILED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_2
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_3() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_3());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_3
+				
+						
+				function f_CSE_3GPP_TRIG_005_3() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(FAILURE, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER-FAILED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// TRIGGER-FAILED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER-FAILED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_3
+
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_4() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_4());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_4
+				
+						
+				function f_CSE_3GPP_TRIG_005_4() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(TRIGGERED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER_TRIGGERED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int4))) {// Fixme: TRIGGER_TRIGGERED not in enum
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER_TRIGGERED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_4
+
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_5() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_5());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_5
+				
+						
+				function f_CSE_3GPP_TRIG_005_5() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(EXPIRED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER_EXPIRED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int5))) {// TRIGGER_EXPIRED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER_EXPIRED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_5
+
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_6() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_6());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_6
+				
+						
+				function f_CSE_3GPP_TRIG_005_6() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(UNCONFIRMED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER_UNCONFIRMED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int4))) {//Fixme:  TRIGGER_UNCONFIRMED not in enum
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER_UNCONFIRMED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_6
+
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_7() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_7());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_7
+				
+						
+				function f_CSE_3GPP_TRIG_005_7() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(REPLACED, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER_FAILED
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int6))) {// TRIGGER_FAILED
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER_FAILED");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_7
+
+
+				/* @desk Check that the IUT returns a HTTP response when it receives a valid 
+				 *		DeviceTriggeringDeliveryReportNotification Report message 
+				 *
+				 */
+
+				testcase TC_CSE_3GPP_TRIG_005_8() runs on Tester system ScefSystem {
+						
+					var ScefSimu v_scef := ScefSimu.create("SCEF") alive;
+								
+					v_scef.start(f_CSE_3GPP_TRIG_005_8());
+					v_scef.done;
+								
+				} // end testcase TC_CSE_3GPP_TRIG_005_8
+				
+						
+				function f_CSE_3GPP_TRIG_005_8() runs on ScefSimu system ScefSystem{
+
+					var integer v_aeIndex := -1, v_triggerRequestIndex := -1;
+					var PrimitiveContent v_contentTriggerRequest;
+					var RequestPrimitive v_request;
+					
+					//{apiRoot}/3gpp-device-triggering/v1/{scsAsId}/transactions
+					var OneM2M_Types_3GPP_T8.URI v_requestResourceURI := m_uri_3gpp_device_triggering(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.tsAddress & ":" & int2str(vc_scefSimuDesc.mcnPort.t8PortDesc.binding.httpBindingDesc.bindingDesc.remotePort), oct2char(unichar2oct(vc_scefSimuDesc.scefId)) & "/transactions");
+									
+					var template T8Request v_requestPrimitive;
+
+					var template DeviceTriggering v_deviceTriggering := m_deviceTriggering_externalId("externl_id", -, -, 30123, "This is Trigger payload- CAFEDECA", "notificationDestination");
+					var template RequestBodyT8 v_3GPPDeviceTriggeringRequest := {individualDeviceTriggeringTransaction := v_deviceTriggering};
+
+					var template DeviceTriggering v_deviceTriggeringResponse := m_deviceTriggering_response_delieveryResult(TERMINATE, "URI to the resource created by the SCEF",-,-,-,-,-,-);
+					
+					var template RequestPrimitive v_createTriggerRequestResource := m_createTriggerRequest;
+					
+					v_createTriggerRequestResource.primitiveContent.triggerRequest.triggerPurpose := int1; //int1 establishConnection
+																
+					// Test component configuration
+					f_cf05Up();
+						
+					//Preamble
+					
+					// Register AE1
+					vc_ae1.start(f_cse_preamble_registerAe());
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_aeIndex := f_getLatestResourceIndex(vc_ae1);
+
+					// TriggerRequest under AE
+					vc_ae1.start(f_cse_createResource(int47, v_createTriggerRequestResource, v_aeIndex));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					v_triggerRequestIndex := f_getLatestResourceIndex(vc_ae1);
+
+					//IUT sent a 3GPP Device Trigger Request
+					v_requestPrimitive := mw_t8_request_post(v_requestResourceURI, -,  v_3GPPDeviceTriggeringRequest);		
+					mcnPortIn.receive(mw_t8Request(v_requestPrimitive));					
+
+					// Test Body		
+					
+					// SCEF sends DeviceTriggeringDeliveryReportNotification
+					mcnPort.send(mw_t8Request(mw_t8_request_post(mw_uri_3gpp_device_triggering(-, "notificationDestination", omit), -, 
+						mw_request_body_deviceTriggeringDeliveryReportNotification(mw_deviceTriggeringDeliveryReportNotification(v_requestResourceURI + "/cf_001" , SUCCESS)))));  // deliveryResult SUCCESS, cf_001: Uri of deviceTriggeringTransaction 
+					
+					tc_ac.start;
+					alt{
+						[] mcnPortIn.receive(mw_t8Response(mw_t8_response_204_no_content)) { //Check if 204 no content is received from IUT
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": 204 no content is received.");
+						}
+						[] mcnPortIn.receive(mw_t8Request(?)){
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Other operation received");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No Answer");
+						}
+					}
+
+					// Verifiy that the <triggerRequest> resource containing triggerStatus attribute set to TRIGGER_TERMINATE
+					v_contentTriggerRequest := f_cse_retrieveResource(v_triggerRequestIndex);
+
+					if(not(match(valueof(v_contentTriggerRequest.triggerRequest.triggerStatus), int4))) {// Fixme: TRIGGER_TERMINATE not in enum
+						setverdict(fail, __SCOPE__&":INFO: <triggerRequest> resource doesn't contain triggerStatus attribute set to TRIGGER_TERMINATE");
+					} else {
+						setverdict(pass, __SCOPE__ & ": Retrived triggerRequest matched with updated content.");
+					}
+							
+					// Postamble: NOTE This needs to be done.
+					//f_cse_postamble_deleteResourcesCSE();
+							
+					//Tear Down
+					f_cf05Down();
+				} // end of function f_CSE_3GPP_TRIG_005_8
+
+
+
+
+
 				// GET all transactons from an SCEF
 				testcase TC_CSE_3GPP_SCEF_T8_007() runs on ScefSimu system ScefSystem {
 					f_cf05Up();
-- 
GitLab