diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn index e6677ed1f32f9abee96534876cb4b2142703a4d2..31b82c3df12917a3257227667a0bee5974b16156 100644 --- a/LibOneM2M/OneM2M_Functions.ttcn +++ b/LibOneM2M/OneM2M_Functions.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Functions.ttcn $ - * $Id: OneM2M_Functions.ttcn 319 2017-07-14 15:20:23Z reinaortega $ + * $Id: OneM2M_Functions.ttcn 334 2017-07-31 08:11:48Z reinaortega $ * @desc Module containing functions for oneM2M * */ @@ -212,8 +212,7 @@ module OneM2M_Functions { f_checkAttributesToBeSaved(int2, v_request, v_response.primitive.responsePrimitive); - v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_aeAuxIndex}; + v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2); if(ispresent(vc_aeAux.aE_ID)){ f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(vc_aeAux.aE_ID))); @@ -281,8 +280,7 @@ module OneM2M_Functions { if(ischosen(v_response.primitive.responsePrimitive.primitiveContent.aE)) { vc_aeAux := v_response.primitive.responsePrimitive.primitiveContent.aE; - v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_aeAuxIndex}; + v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2); if(ispresent(vc_aeAux.aE_ID)){ f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(vc_aeAux.aE_ID))); @@ -357,11 +355,13 @@ module OneM2M_Functions { //For deletion of AEs, priority is to use AE-ID in From parameter //For other resources PX_SUPER_USER should be able to do DELETE operation - if(PX_FROM_IS_AE_ID){ - if(ischosen(vc_resourcesList[vc_resourcesIndexToBeDeleted[i]].resource.aE)) { - v_request.from_ := vc_resourcesList[vc_resourcesIndexToBeDeleted[i]].resource.aE.aE_ID; - } - } + //TODO Replace below code by f_getOriginator + v_request.from_ := f_getOriginator(vc_resourcesIndexToBeDeleted[i]); +// if(PX_USE_RESOURCE_ID_AS_ORIGINATOR){ +// if(ischosen(vc_resourcesList[vc_resourcesIndexToBeDeleted[i]].resource.aE)) { +// v_request.from_ := vc_resourcesList[vc_resourcesIndexToBeDeleted[i]].resource.aE.aE_ID; +// } +// } mcaPort.send(m_request(v_request)); @@ -401,7 +401,7 @@ module OneM2M_Functions { tc_ac.stop; } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Notify verification not received"); + setverdict(inconc, __SCOPE__ & "INFO: Notify verification not received"); } } } //end f_is_component_done @@ -434,10 +434,7 @@ module OneM2M_Functions { tc_ac.stop; setverdict(pass, __SCOPE__&":INFO: Resource type " & int2str(enum2int(p_resourceType)) & " created successfuly"); f_checkAttributesToBeSaved(p_resourceType, v_request, v_response.primitive.responsePrimitive); - v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_parentIndex); - if(match(int2, p_resourceType) or match(-1, p_parentIndex)) {//If created resource is an AE or created under CSEBase, it needs to be added to the resourceToBeDeleted list - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_resourceIndex}; - } + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_resourceType, p_parentIndex); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; @@ -481,9 +478,8 @@ module OneM2M_Functions { tc_ac.stop; setverdict(pass, __SCOPE__&":INFO: Resource type " & int2str(1) & " created successfuly"); f_checkAttributesToBeSaved(int1, v_request, v_response.primitive.responsePrimitive); - v_acpAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent); + v_acpAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int1); vc_acpAuxIndex := v_acpAuxIndex; - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_acpAuxIndex}; } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; @@ -546,11 +542,11 @@ module OneM2M_Functions { } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, __SCOPE__&":ERROR: Error while updating resource"); + setverdict(inconc, __SCOPE__&":INFO: Error while updating resource"); } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, __SCOPE__&":ERROR: Unexpected message received"); + setverdict(inconc, __SCOPE__&":INFO: Unexpected message received"); } [] tc_ac.timeout { setverdict(inconc, __SCOPE__&":INFO: No answer while updating resource"); @@ -578,11 +574,11 @@ module OneM2M_Functions { } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, __SCOPE__&":ERROR: Error while retrieving resource"); + setverdict(inconc, __SCOPE__&":INFO: Error while retrieving resource"); } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, __SCOPE__&":ERROR: Unexpected message received"); + setverdict(inconc, __SCOPE__&":INFO: Unexpected message received"); } [] tc_ac.timeout { setverdict(inconc, __SCOPE__&":INFO: No answer while retrieving resource"); @@ -609,14 +605,14 @@ module OneM2M_Functions { alt { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(pass, __SCOPE__&" INFO: Resource" & p_requestPrimitive.to_ & " deleted"); + setverdict(pass, __SCOPE__&"INFO: Resource" & p_requestPrimitive.to_ & " deleted"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(inconc, __SCOPE__&" INFO: Error while deleting resource " & p_requestPrimitive.to_); + setverdict(inconc, __SCOPE__&"INFO: Error while deleting resource " & p_requestPrimitive.to_); } [] tc_ac.timeout { - setverdict(inconc, __SCOPE__&" INFO: No answer while deleting resource " & p_requestPrimitive.to_); + setverdict(inconc, __SCOPE__&"INFO: No answer while deleting resource " & p_requestPrimitive.to_); } } @@ -624,6 +620,72 @@ module OneM2M_Functions { }// end f_cse_deleteResource + /** + * @desc Check that a resource is present in the IUT (resourceId is known) + * @param p_resourceIndex Resource index + * @return boolean + */ + function f_isResourcePresent (integer p_resourceIndex) runs on CseTester return boolean { + + var ResponseStatusCode v_responseStatusCode; + + //Check to see if the resource is present or not + mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(p_resourceIndex), f_getOriginator(p_resourceIndex)))); + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) { + tc_ac.stop; + setverdict(pass, testcasename() & ": Resource present: " & f_getResourceAddress(p_resourceIndex)); + return true; + } + [] mcaPort.receive(mw_response(mw_responsePrimitive(?, -))) { + tc_ac.stop; + setverdict(inconc, testcasename() & ": Wrong response status code in the response"); + return false; + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + return false; + } + } + } + + /** + * @desc Check that a resource is not present in the IUT (resourceId is NOT known) + * @param p_parentIndex Index of the parent resource + * @param p_resourceName Resource name (Hierarchical method is used) + * @return boolean + */ + function f_isResourceNotPresent (integer p_parentIndex, XSD.String p_resourceName) runs on CseTester return boolean { + + var ResponseStatusCode v_responseStatusCode; + + log(testcasename() & "Hierarchical method is required to check the non presence of the resource"); + vc_addressingMethod := e_hierarchical; + //Check to see if the resource has NOT been created + mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(p_parentIndex) & "/" & p_resourceName, f_getOriginator(p_parentIndex)))); + tc_ac.start; + alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) { + tc_ac.stop; + setverdict(pass, testcasename() & ": Resource not present"); + vc_addressingMethod := PX_ADDRESSING_METHOD; + return true; + } + [] mcaPort.receive(mw_response(mw_responsePrimitive(?))) { + tc_ac.stop; + setverdict(inconc, testcasename() & ": Wrong response status code in the response"); + vc_addressingMethod := PX_ADDRESSING_METHOD; + return false; + } + [] tc_ac.timeout { + setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + vc_addressingMethod := PX_ADDRESSING_METHOD; + return false; + } + } + } + /** * @desc Update of the auxiliar ACP resource * @param p_allowedOperations New allowed operations @@ -655,7 +717,7 @@ module OneM2M_Functions { } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, __SCOPE__&":ERROR: Error while updating " & v_request.to_ & " resource"); + setverdict(inconc, __SCOPE__&":INFO: Error while updating " & v_request.to_ & " resource"); } [] tc_ac.timeout { setverdict(inconc, __SCOPE__&":INFO: No answer while updating " & v_request.to_ & " resource" ); @@ -684,16 +746,16 @@ module OneM2M_Functions { alt { [] mcaPort.receive(mw_request(mw_create(p_from, p_to))) -> value v_request { tc_ac.stop; - setverdict(pass, testcasename() & ": Announcement received"); + setverdict(pass, __SCOPE__ & ":INFO: Announcement received"); v_responsePrimitive := f_getCreateResponsePrimitive(v_request.primitive.requestPrimitive.resourceType, v_request.primitive.requestPrimitive); mcaPort.send(m_response(v_responsePrimitive)); } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ":ERROR: Unexpected message received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No announcement received"); + setverdict(fail, __SCOPE__ & ":ERROR: No announcement received"); } } @@ -724,30 +786,30 @@ module OneM2M_Functions { alt { [] mcaPort.receive(mw_request(mw_notify(v_notificationRequest))) -> value v_request { tc_ac.stop; - setverdict(pass, testcasename() & ": Notification received"); + setverdict(pass, __SCOPE__ & ":INFO: Notification received"); v_responsePrimitive.requestIdentifier := v_request.primitive.requestPrimitive.requestIdentifier; // if(f_isHierarchical(v_request.primitive.requestPrimitive.primitiveContent.notification.creator)) { -// setverdict(fail, testcasename() & ": Creator cannot contain a hierarchical address"); +// setverdict(fail, __SCOPE__ & ": Creator cannot contain a hierarchical address"); // v_responsePrimitive.responseStatusCode := int4000; // } // if(f_compareURIs(p_creatorIndex, v_request.primitive.requestPrimitive.primitiveContent.notification.creator)) { -// setverdict(pass, testcasename() & ": Creator set to originator of the subscription creation primitive"); +// setverdict(pass, __SCOPE__ & ": Creator set to originator of the subscription creation primitive"); // } else { -// setverdict(fail, testcasename() & ": Creator not set to originator of the subscription creation primitive"); +// setverdict(fail, __SCOPE__ & ": Creator not set to originator of the subscription creation primitive"); // v_responsePrimitive.responseStatusCode := int4000; // } mcaPort.send(m_httpResponse(v_responsePrimitive)); } [] mcaPort.receive(mw_request(mw_notify(mw_contentNotification(?)))) -> value v_request { tc_ac.stop; - setverdict(fail, testcasename() & ": Notification received but verificationRequest isn't set to TRUE"); + setverdict(fail, __SCOPE__ & ":ERROR: Notification received but verificationRequest isn't set to TRUE"); } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ":ERROR: unexpected message received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No notification received"); + setverdict(fail, __SCOPE__ & ":ERROR: No notification received"); } } @@ -764,63 +826,63 @@ module OneM2M_Functions { if(isvalue(p_response.primitiveContent.accessControlPolicy) and not(ispresent(p_response.primitiveContent.accessControlPolicy.resourceName))) { p_response.primitiveContent.accessControlPolicy.resourceName := p_request.primitiveContent.accessControlPolicy.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.accessControlPolicy.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.accessControlPolicy.resourceName) } } case (int2) { if(isvalue(p_response.primitiveContent.aE) and not(ispresent(p_response.primitiveContent.aE.resourceName))) { p_response.primitiveContent.aE.resourceName := p_request.primitiveContent.aE.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.aE.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.aE.resourceName) } } case (int3) { if(isvalue(p_response.primitiveContent.container) and not(ispresent(p_response.primitiveContent.container.resourceName))) { p_response.primitiveContent.container.resourceName := p_request.primitiveContent.container.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.container.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.container.resourceName) } } case (int4) { if(isvalue(p_response.primitiveContent.contentInstance) and not(ispresent(p_response.primitiveContent.contentInstance.resourceName))) { p_response.primitiveContent.contentInstance.resourceName := p_request.primitiveContent.contentInstance.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.contentInstance.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.contentInstance.resourceName) } } case (int15) { if (isvalue(p_response.primitiveContent.pollingChannel) and not(ispresent(p_response.primitiveContent.pollingChannel.resourceName))) { p_response.primitiveContent.pollingChannel.resourceName := p_request.primitiveContent.pollingChannel.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.pollingChannel.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.pollingChannel.resourceName) } } case (int16) { if (isvalue(p_response.primitiveContent.remoteCSE) and not(ispresent(p_response.primitiveContent.remoteCSE.resourceName))) { p_response.primitiveContent.remoteCSE.resourceName := p_request.primitiveContent.remoteCSE.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.remoteCSE.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.remoteCSE.resourceName) } } case (int18) { if (isvalue(p_response.primitiveContent.schedule) and not(ispresent(p_response.primitiveContent.schedule.resourceName))) { p_response.primitiveContent.schedule.resourceName := p_request.primitiveContent.schedule.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.schedule.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.schedule.resourceName) } } case (int23) { if (isvalue(p_response.primitiveContent.subscription) and not(ispresent(p_response.primitiveContent.subscription.resourceName))) { p_response.primitiveContent.subscription.resourceName := p_request.primitiveContent.subscription.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.subscription.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.subscription.resourceName) } } case (int9) { if (isvalue(p_response.primitiveContent.group_) and not(ispresent(p_response.primitiveContent.group_.resourceName))) { p_response.primitiveContent.group_.resourceName := p_request.primitiveContent.group_.resourceName; - log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.group_.resourceName) + log(__SCOPE__ & ":INFO: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.group_.resourceName) } } case else { @@ -923,19 +985,19 @@ module OneM2M_Functions { [] mcaPort.receive(mw_request(mw_notify(mw_contentNotification(?)))) -> value v_request { tc_ac.stop; if(f_check_notificationContent(v_request.primitive.requestPrimitive, p_primitiveContent)){ - setverdict(pass, testcasename() & ": Notification received"); + setverdict(pass, __SCOPE__ & ":INFO: Notification received"); mcaPort.send(m_response(valueof(m_responseNotification(int2001)))); } else{ - setverdict(fail, testcasename() & ": Notification received but the content doesn't match"); + setverdict(fail, __SCOPE__ & ":ERROR: Notification received but the content doesn't match"); } } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ":ERROR: unexpected message received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No notification received"); + setverdict(fail, __SCOPE__ & ":ERROR: No notification received"); } } @@ -957,29 +1019,28 @@ module OneM2M_Functions { tc_ac.stop; mcaPort.send(m_response(valueof(m_responseNotification(int2001)))); if(not(match(v_response.primitive.requestPrimitive.primitiveContent.notification.subscriptionDeletion, true))) { - setverdict(fail, testcasename() & ": subscriptionDeletion attribute have to be set to TRUE"); + setverdict(fail, __SCOPE__ & ":ERROR: subscriptionDeletion attribute have to be set to TRUE"); } if(f_check_notificationContent(v_response.primitive.requestPrimitive, p_primitiveContent)){ - setverdict(pass, testcasename() & ": Notification received"); + setverdict(pass, __SCOPE__ & ":INFO: Notification received"); } else{ - setverdict(fail, testcasename() & ": Notification received but the content doesn't match"); + setverdict(fail, __SCOPE__ & ":ERROR: Notification received but the content doesn't match"); } } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ":ERROR: unexpected message received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No notification received"); + setverdict(fail, __SCOPE__ & ":ERROR: No notification received"); } } unmap(self:mcaPort, system:mcaPort); unmap(self:acPort, system:acPort); - } //end f_cse_notifyProcedure_subscriptionDeletion - + } //end f_cse_notifyProcedure_subscriptionDeletion /** * @desc It determines whether the addressing method of the given address is non-hierarchical. Not valid for CSE-Base as target @@ -1092,8 +1153,7 @@ module OneM2M_Functions { tc_ac.stop; setverdict(pass, __SCOPE__&":INFO: Resource type RemoteCSE created successfuly"); f_checkAttributesToBeSaved(int16, v_request, v_response.primitive.responsePrimitive); - v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, -1); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_resourceIndex}; + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int16, -1); } [] mccPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; @@ -1246,7 +1306,7 @@ module OneM2M_Functions { p_resource.aE := v_ae; p_modifiedResource.aE := v_aeModified; - return f_setResource(p_resource, p_parentIndex); + return f_setResource(p_resource, p_resourceType, p_parentIndex); } @@ -1270,13 +1330,13 @@ module OneM2M_Functions { var MsgIn v_request; [] mcaPort.receive(mw_request(?)) -> value v_request { - log("a_default: WARNING: Unexpected request received"); + log(__SCOPE__ & ":WARNING: Unexpected request received"); mcaPort.send(m_response(m_responsePrimitive(int5000, v_request.primitive.requestPrimitive.requestIdentifier))); repeat; } [] mcaPort.receive { - log("a_ae_default: WARNING: Unexpected message received"); + log(__SCOPE__ & ":WARNING: Unexpected message received"); repeat; } } @@ -1339,7 +1399,7 @@ module OneM2M_Functions { if (p_resourceType == int9) {//group if(match(valueof(p_request.primitiveContent.group_.memberIDs), v_defaultListOfURIs )){ - p_request.primitiveContent.group_.memberIDs := {f_getResourceAddress(p_parentIndex)}; + p_request.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[p_parentIndex].resource)}; } } @@ -1508,7 +1568,7 @@ module OneM2M_Functions { if(ischosen(p_contentResource.serviceSubscribedAppRule)) { return f_resourceIdCleaner(p_contentResource.serviceSubscribedAppRule.resourceID); } - log(""&__SCOPE__&":WARNING: Primitive Content Kind not implemented"); + log(__SCOPE__&":WARNING: Primitive Content Kind not implemented"); return "resourceIDNotFound"; @@ -1567,11 +1627,16 @@ module OneM2M_Functions { return PX_SUPER_USER; } - if(PX_FROM_IS_AE_ID) { - if(ischosen(vc_resourcesList[p_targetResourceIndex].resource.aE)) { - return vc_resourcesList[p_targetResourceIndex].resource.aE.aE_ID; + if(PX_USE_RESOURCE_ID_AS_ORIGINATOR) { + if(vc_resourcesList[p_targetResourceIndex].parentIndex == -1) { + return f_getResourceId(vc_resourcesList[p_targetResourceIndex].resource); } else { return f_getOriginator(vc_resourcesList[p_targetResourceIndex].parentIndex); +// if(ischosen(vc_resourcesList[p_targetResourceIndex].resource.aE)) { +// return vc_resourcesList[p_targetResourceIndex].resource.aE.aE_ID; +// } else { +// return f_getOriginator(vc_resourcesList[p_targetResourceIndex].parentIndex); +// } } } else { return PX_SUPER_USER; @@ -1718,14 +1783,20 @@ module OneM2M_Functions { * @return Internal resource index of the saved resource * @verdict */ - function f_setResource(PrimitiveContent p_resource, integer p_parentIndex := -1) runs on Tester return integer { - + function f_setResource(PrimitiveContent p_resource, ResourceType p_resourceType, integer p_parentIndex := -1) runs on Tester return integer { + var integer v_newIndex := -1; if(isbound(vc_resourcesList)) { - vc_resourcesList[lengthof(vc_resourcesList)] := {p_parentIndex, p_resource}; + vc_resourcesList[lengthof(vc_resourcesList)] := {p_parentIndex, p_resourceType, p_resource}; } else { - vc_resourcesList[0] := {p_parentIndex, p_resource}; + vc_resourcesList[0] := {p_parentIndex, p_resourceType, p_resource}; + } + + v_newIndex := lengthof(vc_resourcesList)-1; + if(match(int2, p_resourceType) or match(-1, p_parentIndex)) {//If created resource is an AE or created under CSEBase, it needs to be added to the resourceToBeDeleted list + vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_newIndex}; } - return lengthof(vc_resourcesList)-1; + + return v_newIndex; } @@ -1770,7 +1841,7 @@ module OneM2M_Functions { return vc_resourcesList[p_targetResourceIndex].resource.aE.aE_ID; } - log("f_getAeId: WARNING: p_targetResourceIndex does not refer to AE resource"); + log(__SCOPE__ & ":WARNING: p_targetResourceIndex does not refer to AE resource"); return ""; } // end f_getAeId @@ -1835,10 +1906,10 @@ module OneM2M_Functions { altstep a_default() runs on Tester { [] tc_wait.timeout { - setverdict(inconc,"a_default: ERROR: Timeout while awaiting reaction of the IUT prior to Upper Tester action"); + setverdict(inconc, __SCOPE__&":INFO: Timeout while awaiting reaction of the IUT prior to Upper Tester action"); } [] tc_ac.timeout { - setverdict(inconc,"a_default: ERROR: Timeout while awaiting the reception of a message"); + setverdict(inconc, __SCOPE__&":INFO: Timeout while awaiting the reception of a message"); } } @@ -2152,7 +2223,7 @@ module OneM2M_Functions { v_response := p_responsePrimitiveContent; v_primitiveContent := f_getTemplateFromPrimitiveContent(p_requestPrimitiveContent); if(not(match(v_response, v_primitiveContent))){ - setverdict(inconc, "Preamble: Error resource incomplete, some attribute missing "); + setverdict(inconc, __SCOPE__&":INFO: Resource incomplete, some attribute missing "); } } diff --git a/LibOneM2M/OneM2M_Pixits.ttcn b/LibOneM2M/OneM2M_Pixits.ttcn index bac687216a0a489ae4f29a7d4557303bd2105db4..7c4a97bef0d034ac52c0b8842b44aa279c196698 100644 --- a/LibOneM2M/OneM2M_Pixits.ttcn +++ b/LibOneM2M/OneM2M_Pixits.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Pixits.ttcn $ - * $Id: OneM2M_Pixits.ttcn 317 2017-07-12 18:07:15Z reinaortega $ + * $Id: OneM2M_Pixits.ttcn 325 2017-07-24 16:17:05Z reinaortega $ * @desc Module containing Pixits for oneM2M * */ @@ -64,7 +64,7 @@ module OneM2M_Pixits { modulepar charstring PX_PROTOCOL_BINDING := "HTTP"; - modulepar boolean PX_FROM_IS_AE_ID := true; + modulepar boolean PX_USE_RESOURCE_ID_AS_ORIGINATOR := true; //for checking whether the locationPolicy creation request is originated from a ASN-AE //NOTE: Apply to Device-based location request, and this requires Test System (TS) to activate ASN-AE mode to test IUT diff --git a/LibOneM2M/OneM2M_Ports.ttcn b/LibOneM2M/OneM2M_Ports.ttcn index 9eb619a21d132d98a6da154fe53ba424c64a3639..5da6c3b8186ce4022f61dee06603569fcb10f134 100644 --- a/LibOneM2M/OneM2M_Ports.ttcn +++ b/LibOneM2M/OneM2M_Ports.ttcn @@ -5,7 +5,7 @@ * © 2016, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC). * All rights reserved. * - * @author KETI & EGM + * @author oneM2M * @version * @desc Port modules for oneM2M Test System * diff --git a/LibOneM2M/OneM2M_Templates.ttcn b/LibOneM2M/OneM2M_Templates.ttcn index 0e51a9d6bde8d84e5278f96e2bb07643f23c9569..37dcb1ed269856f083a9488893dc13cd25fbd9ce 100644 --- a/LibOneM2M/OneM2M_Templates.ttcn +++ b/LibOneM2M/OneM2M_Templates.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Templates.ttcn $ - * $Id: OneM2M_Templates.ttcn 317 2017-07-12 18:07:15Z reinaortega $ + * $Id: OneM2M_Templates.ttcn 334 2017-07-31 08:11:48Z reinaortega $ * @desc Module containing templates for oneM2M * */ @@ -3312,7 +3312,7 @@ module OneM2M_Templates { * @param p_statusCode Status code * @param p_requestId Request ID of the corresponding request */ - template (value) ResponsePrimitive m_responsePrimitive(in ResponseStatusCode p_statusCode, in RequestID p_requestId, in template (omit) PrimitiveContent p_content := omit) := { + template (value) ResponsePrimitive m_responsePrimitive(in template ResponseStatusCode p_statusCode, in RequestID p_requestId, in template (omit) PrimitiveContent p_content := omit) := { responseStatusCode := p_statusCode, requestIdentifier := p_requestId, primitiveContent := p_content, @@ -3332,14 +3332,14 @@ module OneM2M_Templates { * @param p_statusCode Status code * @param p_requestId Request ID of the corresponding request */ - template (value) ResponsePrimitive m_responsePrimitive_content(in ResponseStatusCode p_statusCode, in RequestID p_requestId, in template (value) PrimitiveContent p_content) modifies m_responsePrimitive := { + template (value) ResponsePrimitive m_responsePrimitive_content(in template ResponseStatusCode p_statusCode, in RequestID p_requestId, in template (value) PrimitiveContent p_content) modifies m_responsePrimitive := { primitiveContent := p_content } - template ResponsePrimitive mw_responsePrimitive(ResponseStatusCode p_statusCode) := { + template ResponsePrimitive mw_responsePrimitive(in template ResponseStatusCode p_statusCode, in template PrimitiveContent p_content := *) := { responseStatusCode := p_statusCode, requestIdentifier := ?, - primitiveContent := *, + primitiveContent := p_content, to_ := *, from_ := *, originatingTimestamp := *, diff --git a/LibOneM2M/OneM2M_Types.ttcn b/LibOneM2M/OneM2M_Types.ttcn index e9ae4bd76913a1d6caf5ddcbf9609f30b2afb4f5..8ae10a563154f395e06bc9f1106f619c5440706c 100644 --- a/LibOneM2M/OneM2M_Types.ttcn +++ b/LibOneM2M/OneM2M_Types.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Types.ttcn $ - * $Id: OneM2M_Types.ttcn 318 2017-07-13 12:35:45Z berge $ + * $Id: OneM2M_Types.ttcn 329 2017-07-26 07:03:27Z reinaortega $ * @desc OneM2M data types module * */ @@ -7871,10 +7871,18 @@ group InvalidTypes { group OtherTypes { + type enumerated Configurations { + e_cf01, + e_cf02, + e_cf03, + e_cf04 + }; + type NhURI ParentID; type record MyResource { integer parentIndex, + ResourceType resourceType, PrimitiveContent resource }; diff --git a/LibOneM2M/OneM2M_TypesAndValues.ttcn b/LibOneM2M/OneM2M_TypesAndValues.ttcn index 33f7119d0abcf370b29cd6602173fb3f37b0c42d..c4e71cca18fc23c421c18e4e378e311f49667b1e 100644 --- a/LibOneM2M/OneM2M_TypesAndValues.ttcn +++ b/LibOneM2M/OneM2M_TypesAndValues.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_TypesAndValues.ttcn $ - * $Id: OneM2M_TypesAndValues.ttcn 306 2017-06-20 16:19:04Z reinaortega $ + * $Id: OneM2M_TypesAndValues.ttcn 329 2017-07-26 07:03:27Z reinaortega $ * @desc Module containing types and values for oneM2M * */ @@ -43,6 +43,7 @@ module OneM2M_TypesAndValues { const charstring c_invalid_location_update_period := "-PT30M10S" ;//duration set to invalid value (minus value) const XSD.ID c_resourceShortNameLatest := "la"; //<latest> const XSD.ID c_resourceShortNameOldest := "ol"; //<oldest> + const XSD.ID c_resourceShortNameFanOutPoint := "fopt"; //<fanOutPoint> //AccessControlOperations const XSD.Integer c_C := 1; @@ -107,19 +108,7 @@ module OneM2M_TypesAndValues { const XSD.Integer c_UDNDi := 60; const XSD.Integer c_CUDNDi := 61; const XSD.Integer c_RUDNDi := 62; - const XSD.Integer c_CRUDNDi := 63; - - type NhURI ParentID; - type record length(0 .. infinity) of RequestPrimitive RequestPrimitiveList; - type record length(1 .. infinity) of RequestPrimitiveList RequestPrimitiveMatrix; - - type enumerated Configurations { - e_cf01, - e_cf02, - e_cf03, - e_cf04 - }; - + const XSD.Integer c_CRUDNDi := 63; } // end of module diff --git a/OneM2M_Testcases.ttcn b/OneM2M_Testcases.ttcn index cc06ece388d2402608437a1098c5b432f5a7b74b..d7f3925b45705e3d2c11ecea50a3261fa43e58e0 100644 --- a/OneM2M_Testcases.ttcn +++ b/OneM2M_Testcases.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/OneM2M_Testcases.ttcn $ - * $Id: OneM2M_Testcases.ttcn 323 2017-07-18 07:32:04Z reinaortega $ + * $Id: OneM2M_Testcases.ttcn 334 2017-07-31 08:11:48Z reinaortega $ * @desc Module containing test cases for oneM2M * */ @@ -51,21 +51,21 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { t_ac.stop; - log("Postamble: Resource deleted"); + log(__SCOPE__ & ":Resource deleted"); setverdict(pass); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { t_ac.stop; - log("Postamble: Error while deleting resource"); + log(__SCOPE__ & ":Error while deleting resource"); setverdict(fail); } [] mcaPort.receive { t_ac.stop; - log("Postamble: Unexpected message received"); + log(__SCOPE__ & ":Unexpected message received"); setverdict(inconc); } [] t_ac.timeout { - log("Postamble: No answer while deleting resource"); + log(__SCOPE__ & ":No answer while deleting resource"); setverdict(inconc); } } @@ -117,7 +117,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -142,18 +142,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource created using non-hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource created using non-hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating container resource using non-hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while creating container resource using non-hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -203,7 +203,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -228,18 +228,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource created using hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource created using hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating container resource using hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while creating container resource using hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -291,7 +291,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -315,18 +315,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource retrieved using non-hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource retrieved using non-hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving container resource using non-hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while retrieving container resource using non-hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -375,7 +375,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -398,18 +398,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource retrieved using hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource retrieved using hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving container resource using hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while retrieving container resource using hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -461,7 +461,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -489,18 +489,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource updated using non-hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource updated using non-hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating container resource using non-hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while updating container resource using non-hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while updating resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); } } @@ -549,7 +549,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -577,18 +577,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource updated using hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource updated using hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating container resource using hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while updating container resource using hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while updating resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); } } @@ -641,7 +641,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_UNSTRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Unstructured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -667,18 +667,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource deleted using non-hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource deleted using non-hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting container resource using non-hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while deleting container resource using non-hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while deleting resource"); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource"); } } @@ -728,7 +728,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_STRUCTURED_CSE_RELATIVE_RESOURCE_ID_FORMAT)) { - setverdict(inconc, testcasename() & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": Structured-CSE-Relative-Resource-ID format support is required to run this test case"); stop; } @@ -754,18 +754,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource deleted using hierarchical addressing method"); + setverdict(pass, __SCOPE__ & ": Container resource deleted using hierarchical addressing method"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code in the response"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting container resource using hierarchical addressing method"); + setverdict(fail, __SCOPE__ & ": Error while deleting container resource using hierarchical addressing method"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while deleting resource"); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource"); } } @@ -819,14 +819,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) { tc_ac.stop; - setverdict(pass, testcasename() & ": AE successfully created."); + setverdict(pass, __SCOPE__ & ": AE successfully created."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int2001))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -865,14 +865,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) { tc_ac.stop; - setverdict(pass, testcasename() & ": AE successfully created."); + setverdict(pass, __SCOPE__ & ": AE successfully created."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int2001))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -911,14 +911,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) { tc_ac.stop; - setverdict(pass, testcasename() & ": AE creation rejected."); + setverdict(pass, __SCOPE__ & ": AE creation rejected."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int4005))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -957,14 +957,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) { tc_ac.stop; - setverdict(pass, testcasename() & ": AE creation rejected."); + setverdict(pass, __SCOPE__ & ": AE creation rejected."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int4005))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -1004,14 +1004,14 @@ module OneM2M_Testcases { alt { [] mccPort.receive(mw_request(mw_createAEAnnc(-, -, -))) { tc_ac.stop; - setverdict(pass, testcasename() & ": AE creation redirected."); + setverdict(pass, __SCOPE__ & ": AE creation redirected."); } [] mccPort.receive { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE"); + setverdict(fail, __SCOPE__ & ": Error while creating AE"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -1054,14 +1054,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4105))) { tc_ac.stop; - setverdict(pass, testcasename() & ": AE creation rejected."); + setverdict(pass, __SCOPE__ & ": AE creation rejected."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int4105))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while creating AE with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -1101,14 +1101,14 @@ module OneM2M_Testcases { alt { [] mccPort.receive(mw_request(mw_createAEAnnc("/S", "CSE_ID", -))) { tc_ac.stop; - setverdict(pass, testcasename() & ": AE creation redirected."); + setverdict(pass, __SCOPE__ & ": AE creation redirected."); } [] mccPort.receive { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE"); + setverdict(fail, __SCOPE__ & ": Error while creating AE"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -1130,6 +1130,7 @@ module OneM2M_Testcases { var RequestPrimitive v_request; var integer v_cseBaseIndex := -1; var ResourceType v_resourceType := int2; + var PrimitiveContent v_primitiveContentRetrieveResource; // Test component configuration f_cf02Up(); @@ -1149,18 +1150,20 @@ module OneM2M_Testcases { alt { [] mccPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": AE creation redirected."); + setverdict(pass, __SCOPE__ & ": AE creation redirected."); //continue to test the content } [] mccPort.receive { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE"); + setverdict(fail, __SCOPE__ & ": Error while creating AE"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } + //v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -1195,15 +1198,15 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": AE creation success."); + setverdict(pass, __SCOPE__ & ": AE creation success."); //continue to test the content } [] mcaPort.receive { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating AE"); + setverdict(fail, __SCOPE__ & ": Error while creating AE"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating AE"); + setverdict(fail, __SCOPE__ & ": No answer while creating AE"); } } @@ -1246,14 +1249,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) { tc_ac.stop; - setverdict(pass, testcasename() & ": CSEBase creation rejected."); + setverdict(pass, __SCOPE__ & ": CSEBase creation rejected."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int4005))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating CSEBase with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while creating CSEBase with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating CSEBase"); + setverdict(fail, __SCOPE__ & ": No answer while creating CSEBase"); } } @@ -1269,7 +1272,7 @@ module OneM2M_Testcases { * @desc Check that the IUT accepts an create request of <remoteCSE> resource with attributes multiplicity equals to 1. * */ - testcase TC_CSE_REG_CRE_021() runs on CseTester system CseSystem { + testcase TC_CSE_REG_CRE_022() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; @@ -1292,16 +1295,20 @@ module OneM2M_Testcases { mccPort.send(m_request(v_request)); tc_ac.start; alt { - [] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mccPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource type remoteCSE created successfully"); + } + [] mccPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type remoteCSE created successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } [] mccPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource type remoteCSE"); + setverdict(fail, __SCOPE__ & ": Error while creating resource type remoteCSE"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type remoteCSE"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type remoteCSE"); } } @@ -1311,13 +1318,13 @@ module OneM2M_Testcases { // Tear down f_cf04Down(); - }//end TC_CSE_REG_CRE_BV_011 + }//end TC_CSE_REG_CRE_022 /** * @desc Check that the IUT accepts an create request of <remoteCSE> resource with attributes multiplicity equals to 1 without the preconfigured CSE-ID * */ - testcase TC_CSE_REG_CRE_022() runs on CseTester system CseSystem { + testcase TC_CSE_REG_CRE_023() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; @@ -1342,14 +1349,14 @@ module OneM2M_Testcases { alt { [] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type remoteCSE created successfully"); + setverdict(pass, __SCOPE__ & ": Resource type remoteCSE created successfully"); } [] mccPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource type remoteCSE"); + setverdict(fail, __SCOPE__ & ": Error while creating resource type remoteCSE"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type remoteCSE"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type remoteCSE"); } } @@ -1359,59 +1366,59 @@ module OneM2M_Testcases { // Tear down f_cf04Down(); - }//end TC_CSE_REG_CRE_022 + }//end TC_CSE_REG_CRE_023 - group g_CSE_REG_CRE_015{ + group g_CSE_REG_CRE_016{ /** * @desc Check that the IUT accepts a create request of <remoteCSE> resource with OPTIONAL_ATTRIBUTE. * */ - testcase TC_CSE_REG_CRE_015_LBL() runs on CseTester system CseSystem { + testcase TC_CSE_REG_CRE_016_LBL() runs on CseTester system CseSystem { // Local variables var template RequestPrimitive v_createRequest := m_createRemoteCSEBase; const AttributeAux c_optionalAttribute := {"labels", omit}; v_createRequest.primitiveContent.remoteCSE.labels := {"MyLabel"}; - f_CSE_REG_CRE_015(v_createRequest, c_optionalAttribute); + f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute); } - testcase TC_CSE_REG_CRE_015_CST() runs on CseTester system CseSystem { + testcase TC_CSE_REG_CRE_016_CST() runs on CseTester system CseSystem { // Local variables var template RequestPrimitive v_createRequest := m_createRemoteCSEBase; const AttributeAux c_optionalAttribute := {"cseType", omit}; v_createRequest.primitiveContent.remoteCSE.cseType := int1; - f_CSE_REG_CRE_015(v_createRequest, c_optionalAttribute); + f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute); } - testcase TC_CSE_REG_CRE_015_POA() runs on CseTester system CseSystem { + testcase TC_CSE_REG_CRE_016_POA() runs on CseTester system CseSystem { // Local variables var template RequestPrimitive v_createRequest := m_createRemoteCSEBase; const AttributeAux c_optionalAttribute := {"pointOfAccess", omit}; v_createRequest.primitiveContent.remoteCSE.pointOfAccess := {"http://" & PX_CSE1_ADDRESS & "/"}; - f_CSE_REG_CRE_015(v_createRequest, c_optionalAttribute); + f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute); } - testcase TC_CSE_REG_CRE_015_NL() runs on CseTester system CseSystem { + testcase TC_CSE_REG_CRE_016_NL() runs on CseTester system CseSystem { // Local variables var template RequestPrimitive v_createRequest := m_createRemoteCSEBase; const AttributeAux c_optionalAttribute := {"nodeLink", omit}; v_createRequest.primitiveContent.remoteCSE.nodeLink := c_defaultNodeID; - f_CSE_REG_CRE_015(v_createRequest, c_optionalAttribute); + f_CSE_REG_CRE_016(v_createRequest, c_optionalAttribute); } - function f_CSE_REG_CRE_015(template RequestPrimitive p_requestPrimitive, in AttributeAux p_optionalAttribute) runs on CseTester { + function f_CSE_REG_CRE_016(template RequestPrimitive p_requestPrimitive, in AttributeAux p_optionalAttribute) runs on CseTester { // Local variables var MsgIn v_response; @@ -1433,20 +1440,24 @@ module OneM2M_Testcases { mccPort.send(m_request(v_request)); tc_ac.start; alt { + [] mccPort.receive(mw_response(mw_responsePrimitive(int2001, f_getTemplateFromPrimitiveContent(v_request.primitiveContent)))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Accepted creation for resource type remoteCSE containing attribute " & p_optionalAttribute.name); + } [] mccPort.receive(mw_response(mw_responsePrimitiveOK(f_getTemplateFromPrimitiveContent(v_request.primitiveContent)))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Accepted creation for resource type remoteCSE containing attribute " & p_optionalAttribute.name); + setverdict(fail, __SCOPE__ & ": Wrong response status code in the response"); } - [] mccPort.receive(mw_response(mw_responsePrimitiveOK())) -> value v_response { + [] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation for resource type remoteCSE without containing attribute " & p_optionalAttribute.name); + setverdict(fail, __SCOPE__ & ": Accepted creation for resource type remoteCSE without containing attribute " & p_optionalAttribute.name); } [] mccPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Rejected creation of resource type remoteCSE containing attribute" & p_optionalAttribute.name); + setverdict(fail, __SCOPE__ & ": Rejected creation of resource type remoteCSE containing attribute" & p_optionalAttribute.name); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type remoteCSE"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type remoteCSE"); } } @@ -1491,20 +1502,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Response OK for retrieving"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Response OK for retrieving"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -1530,7 +1545,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_IN_CSE)) { - setverdict(inconc, testcasename() & ": IUT shall be IN-CSE to run this test case"); + setverdict(inconc, __SCOPE__ & ": IUT shall be IN-CSE to run this test case"); stop; } @@ -1549,29 +1564,33 @@ module OneM2M_Testcases { tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) -> value v_response { tc_ac.stop; if (ispresent(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType)){ if (v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType==int1){ - setverdict(pass, testcasename() & ": cseType attribute is set to 1 (IN_CSE)"); + setverdict(pass, __SCOPE__ & ": cseType attribute is set to 1 (IN_CSE)"); }else{ - setverdict(fail, testcasename() & ": Error, cseType attribute is set to " & int2str(enum2int(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType))); + setverdict(fail, __SCOPE__ & ": Error, cseType attribute is set to " & int2str(enum2int(v_response.primitive.responsePrimitive.primitiveContent.cSEBase.cseType))); } }else{ - setverdict(fail, testcasename() & ": Error, cseType attribute is not present"); + setverdict(fail, __SCOPE__ & ": Error, cseType attribute is not present"); } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -1612,32 +1631,36 @@ module OneM2M_Testcases { tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) -> value v_response { tc_ac.stop; if (v_response.primitive.responsePrimitive.primitiveContent.cSEBase.supportedResourceType == PX_SRT) { - setverdict(pass, testcasename() & ": supportedResourceTypes attribute is set according to PX_SRT"); + setverdict(pass, __SCOPE__ & ": supportedResourceTypes attribute is set according to PX_SRT"); }else{ - setverdict(fail, testcasename() & ": supportedResourceTypes attribute is not set according to PX_SRT"); + setverdict(fail, __SCOPE__ & ": supportedResourceTypes attribute is not set according to PX_SRT"); } if (v_response.primitive.responsePrimitive.primitiveContent.cSEBase.pointOfAccess==PX_POA){ - setverdict(pass, testcasename() & ": supportedResourceTypes attribute is set according to PX_POA"); + setverdict(pass, __SCOPE__ & ": supportedResourceTypes attribute is set according to PX_POA"); }else{ - setverdict(fail, testcasename() & ": supportedResourceTypes attribute is not set according to PX_POA"); + setverdict(fail, __SCOPE__ & ": supportedResourceTypes attribute is not set according to PX_POA"); } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -1684,14 +1707,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) { tc_ac.stop; - setverdict(pass, testcasename() & ": CSEBase update rejected."); + setverdict(pass, __SCOPE__ & ": CSEBase update rejected."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int4005))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating CSEBase with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while updating CSEBase with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while updating CSEBase"); + setverdict(fail, __SCOPE__ & ": No answer while updating CSEBase"); } } @@ -1734,14 +1757,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) { tc_ac.stop; - setverdict(pass, testcasename() & ": CSEBase deletion rejected."); + setverdict(pass, __SCOPE__ & ": CSEBase deletion rejected."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveInverse(int4005))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting CSEBase with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Error while deleting CSEBase with status code " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while deleting CSEBase"); + setverdict(fail, __SCOPE__ & ": No answer while deleting CSEBase"); } } @@ -1775,10 +1798,10 @@ module OneM2M_Testcases { v_createRequest.primitiveContent.container.resourceName := omit; v_responsePrimitive := f_CSE_DMR_CRE_001(int3, v_createRequest, -, v_notifyHandler); //Container - log(v_responsePrimitive); + if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.container.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1792,10 +1815,10 @@ module OneM2M_Testcases { v_createRequest.primitiveContent.group_.resourceName := omit; v_responsePrimitive := f_CSE_DMR_CRE_001(int3, v_createRequest, m_createAeAux(omit,omit),v_notifyHandler);//Container - log(v_responsePrimitive); + if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.group_.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1812,7 +1835,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int3, v_createRequest, m_createContainerBase, v_notifyHandler);//Container if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1829,7 +1852,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int9, v_createRequest, -, v_notifyHandler);//Group if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1846,7 +1869,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int9, v_createRequest, m_createAeAux(omit,omit), v_notifyHandler);//Group if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1863,7 +1886,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int1, v_createRequest, -, v_notifyHandler);//AccessControlPolicy if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1880,7 +1903,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int1, v_createRequest, m_createAeAux(omit,omit), v_notifyHandler);//AccessControlPolicy if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1897,7 +1920,7 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.schedule.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1914,7 +1937,7 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.schedule.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1931,7 +1954,7 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.schedule.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1949,7 +1972,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int15, v_createRequest, m_createAeAux(omit,omit), v_notifyHandler);//PollingChannel if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.pollingChannel.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1965,7 +1988,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int23, v_createRequest, -, v_notifyHandler);//Subscription if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1981,7 +2004,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int23, v_createRequest, m_createAeAux(omit,omit), v_notifyHandler);//Subscription if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -1997,7 +2020,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int23, v_createRequest, m_createContainerBase, v_notifyHandler);//Subscription if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2013,7 +2036,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int23, v_createRequest, m_createAcpBase, v_notifyHandler);//Subscription if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } } @@ -2028,7 +2051,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int23, v_createRequest, m_createScheduleBase, v_notifyHandler);//Subscription if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } } @@ -2043,7 +2066,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int23, v_createRequest, m_createGroupBase, v_notifyHandler);//Subscription if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } } @@ -2059,7 +2082,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int14, v_createRequest, -, v_notifyHandler);//Node if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.node.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2075,7 +2098,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int12, v_createRequest, -, v_notifyHandler);//Management Command if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.mgmtResource.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2091,7 +2114,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int10, v_createRequest, -, v_notifyHandler);//Location Policy if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.locationPolicy.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2101,14 +2124,13 @@ module OneM2M_Testcases { // Local variables var template RequestPrimitive v_createRequest := m_createStatsConfigBase; var ResponsePrimitive v_responsePrimitive; - var RequestPrimitiveMatrix v_requestPrimitivematrix; var CseTester v_notifyHandler := CseTester.create("NotifyHandler") alive; v_createRequest.primitiveContent.statsConfig.resourceName := omit; v_responsePrimitive := f_CSE_DMR_CRE_001(int22, v_createRequest, -, v_notifyHandler);//Stats Config if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.statsConfig.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } } @@ -2124,7 +2146,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int21, v_createRequest, -, v_notifyHandler);//Stats Collect if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.statsCollect.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2140,7 +2162,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int11, v_createRequest, -, v_notifyHandler);//Subscription Profile if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.m2mServiceSubscriptionProfile.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2156,7 +2178,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int19, v_createRequest, -, v_notifyHandler);//Service Subscribed App if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.serviceSubscribedAppRule.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2172,7 +2194,7 @@ module OneM2M_Testcases { v_responsePrimitive := f_CSE_DMR_CRE_001(int4, v_createRequest, m_createContainerBase, v_notifyHandler);//Subscription if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } } @@ -2220,23 +2242,33 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(p_resourceType)) & " created successfully"); + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_resourceType, v_parentIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type " & int2str(enum2int(p_resourceType)) & " created successfully"); - v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, v_parentIndex); - vc_resourcesIndexToBeDeleted := vc_resourcesIndexToBeDeleted & {v_resourceIndex}; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while creating resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); } } f_checkCseTesterStatus(); + //Check to see if the resource is present or not + if (f_isResourcePresent(v_resourceIndex)){ + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + // Postamble f_cse_postamble_deleteResources(); vc_resourcesIndexToBeDeleted := {}; @@ -2267,10 +2299,10 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.container.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } else { if(v_responsePrimitive.primitiveContent.container.resourceName != c_defaultContainerResourceName){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not correct"); } } } @@ -2284,10 +2316,10 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.group_.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } else { if(v_responsePrimitive.primitiveContent.group_.resourceName != c_defaultGroupResourceName){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not correct"); } } } @@ -2301,10 +2333,10 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } else { if(v_responsePrimitive.primitiveContent.accessControlPolicy.resourceName != c_defaultAccessControlPolicyResourceName){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not correct"); } } } @@ -2318,10 +2350,10 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.schedule.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } else { if(v_responsePrimitive.primitiveContent.schedule.resourceName != c_defaultScheduleResourceName){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not correct"); } } } @@ -2334,10 +2366,10 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.pollingChannel.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } else { if(v_responsePrimitive.primitiveContent.pollingChannel.resourceName != c_defaultPollingChannelResourceName){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not correct"); } } } @@ -2351,10 +2383,10 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.subscription.resourceName)){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not provided"); } else { if(v_responsePrimitive.primitiveContent.subscription.resourceName != c_defaultSubscriptionResourceName){ - setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, resourceName attribute not correct"); } } } @@ -2368,6 +2400,7 @@ module OneM2M_Testcases { var integer v_aeIndex := -1; var CseTester v_notifyHandler; var integer v_ae2Index := -1; + var integer v_resourceIndex := -1; // Test control @@ -2387,19 +2420,32 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(p_resourceType)) & " created successfully"); + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_resourceType, v_aeIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type " & int2str(enum2int(p_resourceType)) & " created successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while creating resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_resourceIndex)){ + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } // Postamble f_cse_postamble_deleteResources(); @@ -2489,18 +2535,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4105))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource already exists"); + setverdict(pass, __SCOPE__ & ": Resource already exists"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating an already existing resource"); + setverdict(fail, __SCOPE__ & ": Error while creating an already existing resource"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Creating a resource that already exists"); + setverdict(fail, __SCOPE__ & ": Creating a resource that already exists"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -2566,7 +2612,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -2592,21 +2638,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Access denied to create a resource"); + setverdict(pass, __SCOPE__ & ": Access denied to create a resource"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating a resource without privileges"); + setverdict(fail, __SCOPE__ & ": Error while creating a resource without privileges"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Resource created without creation privileges"); + setverdict(fail, __SCOPE__ & ": Resource created without creation privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -2681,23 +2736,33 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request, {p_invalidAttribute})); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Creation rejected for resource type " & int2str(enum2int(p_resourceType)) & " containing an invalid value for attribute " & p_invalidAttribute.name); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Creation rejected for resource type " & int2str(enum2int(p_resourceType)) & " containing an invalid value for attribute " & p_invalidAttribute.name); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation of resource type " & int2str(enum2int(p_resourceType)) & " containing an invalid value for attribute" & p_invalidAttribute.name); - } - [] mcaPort.receive { - tc_ac.stop; - setverdict(fail, testcasename() & ": Incorrect value received"); + setverdict(fail, __SCOPE__ & ": Accepted creation of resource type " & int2str(enum2int(p_resourceType)) & " containing an invalid value for attribute" & p_invalidAttribute.name); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + + // Postamble f_cse_postamble_deleteResources(); @@ -2723,7 +2788,7 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.container.maxNrOfInstances)){ - setverdict(fail, testcasename(), ": Error, maxNrOfInstances attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, maxNrOfInstances attribute not provided"); } } } @@ -2737,7 +2802,7 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.container.maxByteSize)){ - setverdict(fail, testcasename(), ": Error, maxByteSize attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, maxByteSize attribute not provided"); } } @@ -2752,7 +2817,7 @@ module OneM2M_Testcases { if(getverdict == pass){ if(not ispresent(v_responsePrimitive.primitiveContent.container.maxInstanceAge)){ - setverdict(fail, testcasename(), ": Error, maxInstanceAge attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, maxInstanceAge attribute not provided"); } } } @@ -2763,6 +2828,7 @@ module OneM2M_Testcases { var MsgIn v_response; var RequestPrimitive v_request; var integer v_aeIndex := -1; + var integer v_resourceIndex := -1; // Test control @@ -2780,19 +2846,33 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Accepted creation rejected for resource type " & int2str(enum2int(p_resourceType))); + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_resourceType, v_aeIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Accepted creation rejected for resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Creation rejected of resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Creation rejected of resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_resourceIndex)){ + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -2841,21 +2921,31 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5207))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Maximum number of instances exceeded"); + setverdict(pass, __SCOPE__ & ": Maximun number of instances exceeded"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Bad responseStatusCode in response"); + setverdict(fail, __SCOPE__ & ": Bad responseStatusCode in response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation of contentInstance exceding maximum number of instances"); + setverdict(fail, __SCOPE__ & ": Accepted creation of contentInstance exceding maximum number of instances"); + } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource type 4"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type 4"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_containerIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -2902,22 +2992,32 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5207))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Maximum byte size exceeded"); + setverdict(pass, __SCOPE__ & ": Maximun byte size exceeded"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Bad responseStatusCode in response"); + setverdict(fail, __SCOPE__ & ": Bad responseStatusCode in response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation of contentInstance exceding maximum byte size"); + setverdict(fail, __SCOPE__ & ": Accepted creation of contentInstance exceding maximum byte size"); + } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource type 4"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type 4"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourceNotPresent(v_containerIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -2965,25 +3065,29 @@ module OneM2M_Testcases { tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Response OK for retrieving"); + setverdict(pass, __SCOPE__ & ": Response OK for retrieving"); if(v_response.primitive.responsePrimitive.primitiveContent.container.stateTag == vc_resourcesList[v_containerIndex].resource.container.stateTag + 1) { - setverdict(pass, testcasename() & ": stateTag attribute increased after creation of contentInstance resource"); + setverdict(pass, __SCOPE__ & ": stateTag attribute increased after creation of contentInstance resource"); } else { - setverdict(fail, testcasename() & ": stateTag attribute not incremented correctly after creation of contentInstance resource"); + setverdict(fail, __SCOPE__ & ": stateTag attribute not incremented correctly after creation of contentInstance resource"); } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -3033,21 +3137,32 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Not allowed to create a contentInstance resource named 'la'"); + setverdict(pass, __SCOPE__ & ": Not allowed to create a contentInstance resource named 'la'"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Rejected creation of contentInstance named 'la' with wrong ResponseStatusCode"); + setverdict(fail, __SCOPE__ & ": Rejected creation of contentInstance named 'la' with wrong ResponseStatusCode"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation of contentInstance named 'la'"); + setverdict(fail, __SCOPE__ & ": Accepted creation of contentInstance named 'la'"); + } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type 4"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type 4"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_containerIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -3071,6 +3186,7 @@ module OneM2M_Testcases { var RequestPrimitive v_request; var integer v_aeIndex := -1; var integer v_containerIndex := -1; + var boolean v_resourceCreated := false; // Test control @@ -3094,21 +3210,32 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Not allowed to create a contentInstance resource named 'ol'"); + setverdict(pass, __SCOPE__ & ": Not allowed to create a contentInstance resource named 'ol'"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Rejected creation of contentInstance named 'ol' with wrong ResponseStatusCode"); + setverdict(fail, __SCOPE__ & ": Rejected creation of contentInstance named 'ol' with wrong ResponseStatusCode"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation of contentInstance named 'ol'"); + setverdict(fail, __SCOPE__ & ": Accepted creation of contentInstance named 'ol'"); + } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource type 4"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type 4"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_containerIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -3185,20 +3312,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001, omit))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No content provided with RC set to 0"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(omit))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No content provided with RC set to 0"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Content provided with RC set to 0"); + setverdict(fail, __SCOPE__ & ": Content provided with RC set to 0"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -3296,20 +3427,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No content provided with RC set to 0"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No content provided with RC set to 0"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Content provided with RC set to 0"); + setverdict(fail, __SCOPE__ & ": Content provided with RC set to 0"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -3407,20 +3542,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No content provided with RC set to 0"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No content provided with RC set to 0"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Content provided with RC set to 0"); + setverdict(fail, __SCOPE__ & ": Content provided with RC set to 0"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -3788,11 +3927,12 @@ module OneM2M_Testcases { var CseTester v_notifyHandler; var integer v_ae2Index := -1; const XSD.NCName c_accessControlPolicyIDs := "accessControlPolicyIDs"; + var integer v_resourceIndex := -1; // Test control if(match(c_accessControlPolicyIDs,p_optionalAttribute.name)) { if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } } @@ -3823,23 +3963,37 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001, f_getTemplateFromPrimitiveContent(v_request.primitiveContent)))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Accepted creation for resource type " & int2str(enum2int(p_resourceType)) & " containing attribute " & p_optionalAttribute.name); + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, p_resourceType, v_parentIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(f_getTemplateFromPrimitiveContent(v_request.primitiveContent)))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Accepted creation for resource type " & int2str(enum2int(p_resourceType)) & " containing attribute " & p_optionalAttribute.name); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK())) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation for resource type " & int2str(enum2int(p_resourceType)) & " without containing attribute " & p_optionalAttribute.name); + setverdict(fail, __SCOPE__ & ": Accepted creation for resource type " & int2str(enum2int(p_resourceType)) & " without containing attribute " & p_optionalAttribute.name); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Rejected creation of resource type " & int2str(enum2int(p_resourceType)) & " containing attribute" & p_optionalAttribute.name); + setverdict(fail, __SCOPE__ & ": Rejected creation of resource type " & int2str(enum2int(p_resourceType)) & " containing attribute" & p_optionalAttribute.name); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type " & int2str(enum2int(p_resourceType))); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_resourceIndex)) { + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -3967,18 +4121,14 @@ module OneM2M_Testcases { alt { [] mccPort.receive(mw_request(p_requestAnnc)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No content provided with RC set to 0"); + setverdict(pass, __SCOPE__ & ": Correct CREATE request for the resource announced variant"); } - [] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { - tc_ac.stop; - setverdict(fail, testcasename() & ": Content provided with RC set to 0"); - } - [] mccPort.receive(mw_response(mw_responsePrimitiveKO)) { + [] mccPort.receive(mw_request(?)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Wrong CREATE request received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -4014,12 +4164,12 @@ module OneM2M_Testcases { //Check if maxByteSize attribute has been announced if (ispresent(v_requestPrimitive.primitiveContent.containerAnnc.maxByteSize)){ if(v_requestPrimitive.primitiveContent.containerAnnc.maxByteSize != maxByteSize){ - setverdict(fail, testcasename() & ": Error: Value of maxByteSize has not been announced successfully"); + setverdict(fail, __SCOPE__ & ": Error: Value of maxByteSize has not been announced successfully"); }else{ - setverdict(pass, testcasename() & ": Value of maxByteSize has been announced successfully"); + setverdict(pass, __SCOPE__ & ": Value of maxByteSize has been announced successfully"); } }else{ - setverdict(fail, testcasename() & ": Error: maxByteSize has not been announced"); + setverdict(fail, __SCOPE__ & ": Error: maxByteSize has not been announced"); } } } @@ -4040,12 +4190,12 @@ module OneM2M_Testcases { //Check if contentSize attribute has been announced if (ispresent(v_requestPrimitive.primitiveContent.contentInstanceAnnc.contentSize)){ if(v_requestPrimitive.primitiveContent.contentInstanceAnnc.contentSize != v_contentSize){ - setverdict(fail, testcasename() & ": Error: Value of contentSize has not been announced successfully"); + setverdict(fail, __SCOPE__ & ": Error: Value of contentSize has not been announced successfully"); }else{ - setverdict(pass, testcasename() & ": Value of contentSize has been announced successfully"); + setverdict(pass, __SCOPE__ & ": Value of contentSize has been announced successfully"); } }else{ - setverdict(fail, testcasename() & ": Error: contentSize has not been announced"); + setverdict(fail, __SCOPE__ & ": Error: contentSize has not been announced"); } } } @@ -4066,12 +4216,12 @@ module OneM2M_Testcases { //Check if maxNrOfMembers attribute has been announced if (ispresent(v_requestPrimitive.primitiveContent.groupAnnc.maxNrOfMembers)){ if(v_requestPrimitive.primitiveContent.groupAnnc.maxNrOfMembers != maxNrOfMembers){ - setverdict(fail, testcasename() & ": Error: Value of maxNrOfMembers has not been announced successfully"); + setverdict(fail, __SCOPE__ & ": Error: Value of maxNrOfMembers has not been announced successfully"); }else{ - setverdict(pass, testcasename() & ": Value of maxNrOfMembers has been announced successfully"); + setverdict(pass, __SCOPE__ & ": Value of maxNrOfMembers has been announced successfully"); } }else{ - setverdict(fail, testcasename() & ": Error: maxNrOfMembers has not been announced"); + setverdict(fail, __SCOPE__ & ": Error: maxNrOfMembers has not been announced"); } } } @@ -4092,12 +4242,12 @@ module OneM2M_Testcases { //Check if locationSource attribute has been announced if (ispresent(v_requestPrimitive.primitiveContent.locationPolicyAnnc.locationSource)){ if(v_requestPrimitive.primitiveContent.locationPolicyAnnc.locationSource != locationSource){ - setverdict(fail, testcasename() & ": Error: Value of locationSource has not been announced successfully"); + setverdict(fail, __SCOPE__ & ": Error: Value of locationSource has not been announced successfully"); }else{ - setverdict(pass, testcasename() & ": Value of locationSource has been announced successfully"); + setverdict(pass, __SCOPE__ & ": Value of locationSource has been announced successfully"); } }else{ - setverdict(fail, testcasename() & ": Error: locationSource has not been announced"); + setverdict(fail, __SCOPE__ & ": Error: locationSource has not been announced"); } } } @@ -4118,12 +4268,12 @@ module OneM2M_Testcases { //Check if description attribute has been announced if (ispresent(v_requestPrimitive.primitiveContent.announcedMgmtResource.description)){ if(v_requestPrimitive.primitiveContent.announcedMgmtResource.description != description){ - setverdict(fail, testcasename() & ": Error: Value of description has not been announced successfully"); + setverdict(fail, __SCOPE__ & ": Error: Value of description has not been announced successfully"); }else{ - setverdict(pass, testcasename() & ": Value of description has been announced successfully"); + setverdict(pass, __SCOPE__ & ": Value of description has been announced successfully"); } }else{ - setverdict(fail, testcasename() & ": Error: description has not been announced"); + setverdict(fail, __SCOPE__ & ": Error: description has not been announced"); } } } @@ -4156,12 +4306,12 @@ module OneM2M_Testcases { //Check if scheduleElement attribute has been announced if (ispresent(v_requestPrimitive.primitiveContent.scheduleAnnc.scheduleElement)){ if(v_requestPrimitive.primitiveContent.scheduleAnnc.scheduleElement != scheduleElement){ - setverdict(fail, testcasename() & ": Error: Value of scheduleElement has not been announced successfully"); + setverdict(fail, __SCOPE__ & ": Error: Value of scheduleElement has not been announced successfully"); }else{ - setverdict(pass, testcasename() & ": Value of scheduleElement has been announced successfully"); + setverdict(pass, __SCOPE__ & ": Value of scheduleElement has been announced successfully"); } }else{ - setverdict(fail, testcasename() & ": Error: scheduleElement has not been announced"); + setverdict(fail, __SCOPE__ & ": Error: scheduleElement has not been announced"); } } } @@ -4197,18 +4347,14 @@ module OneM2M_Testcases { alt { [] mccPort.receive(mw_request(p_requestAnnc)) -> value v_anncRequest { tc_ac.stop; - setverdict(pass, testcasename() & ": No content provided with RC set to 0"); - } - [] mccPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_anncRequest { - tc_ac.stop; - setverdict(fail, testcasename() & ": Content provided with RC set to 0"); + setverdict(pass, __SCOPE__ & ": Correct CREATE request for the resource announced variant"); } - [] mccPort.receive(mw_response(mw_responsePrimitiveKO)) { + [] mccPort.receive(mw_request(?)) -> value v_anncRequest { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Wrong CREATE request received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -4222,7 +4368,7 @@ module OneM2M_Testcases { }//end f_CSE_DMR_CRE_017 - } // end g_CSE_DMR_CRE_017 + } // end g_CSE_DMR_CRE_017 group g_CSE_DMR_CRE_020{ @@ -4260,19 +4406,19 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5207))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Maximum byte size exceeded"); + setverdict(pass, __SCOPE__ & ": Maximum byte size exceeded"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Bad responseStatusCode in response"); + setverdict(fail, __SCOPE__ & ": Bad responseStatusCode in response"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted creation of contentInstance exceding maximum byte size"); + setverdict(fail, __SCOPE__ & ": Accepted creation of contentInstance exceding maximum byte size"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type 4"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type 4"); } } @@ -4328,18 +4474,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": ContentInstance resource created"); + setverdict(pass, __SCOPE__ & ": ContentInstance resource created"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error when creating contentInstance resource"); + setverdict(fail, __SCOPE__ & ": Error when creating contentInstance resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while creating resource type 4"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type 4"); } } @@ -4351,18 +4497,18 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; if(v_response.primitive.responsePrimitive.primitiveContent.container.currentByteSize == 8) { //Default content: "AnyValue" (8 bytes length) - setverdict(pass, testcasename() & ": CurrentByteSize attribute in content resource is incremented successfully"); + setverdict(pass, __SCOPE__ & ": CurrentByteSize attribute in content resource is incremented successfully"); } else{ - setverdict(fail, testcasename() & ": CurrentByteSize attribute in content resource not incremented successfully"); + setverdict(fail, __SCOPE__ & ": CurrentByteSize attribute in content resource not incremented successfully"); } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -4501,20 +4647,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Response OK for retrieving"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Response OK for retrieving"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -4572,18 +4722,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource not found"); + setverdict(pass, __SCOPE__ & ": Resource not found"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -4656,7 +4806,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - log(testcasename() & ":AccessControlPolicy support is required for executing this test case"); + log(__SCOPE__ & ":INFO: AccessControlPolicy support is required for executing this test case"); stop; } @@ -4683,18 +4833,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Access denied to retrieve attributes from resource type " & int2str(enum2int(p_resourceType))); + setverdict(pass, __SCOPE__ & ": Access denied to retrieve attributes from resource type " & int2str(enum2int(p_resourceType))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving attributes from resource without having privileges"); + setverdict(fail, __SCOPE__ & ": Error while retrieving attributes from resource without having privileges"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Retrieving attributes from resource without having privileges"); + setverdict(fail, __SCOPE__ & ": Retrieving attributes from resource without having privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -4804,20 +4954,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Requested attribute retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Requested attribute retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, not only requested attribute retrieved"); + setverdict(fail, __SCOPE__ & ": Error, not only requested attribute retrieved"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attribute"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attribute"); } } @@ -4927,20 +5081,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Requested attribute retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Requested attribute retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, not only requested attribute retrieved"); + setverdict(fail, __SCOPE__ & ": Error, not only requested attribute retrieved"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attribute"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attribute"); } } @@ -5057,20 +5215,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Requested attributes retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Requested attributes retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, not only requested attributes retrieved"); + setverdict(fail, __SCOPE__ & ": Error, not only requested attributes retrieved"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attributes"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } @@ -5162,14 +5324,14 @@ module OneM2M_Testcases { } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving non existing resource attribute"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error : attribute was retrieved while it doesn't exist"); + setverdict(fail, __SCOPE__ & ": Error : attribute was retrieved while it doesn't exist"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attribute"); } } @@ -5261,14 +5423,14 @@ module OneM2M_Testcases { } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving non existing resource attributes"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error : attribute was retrieved while it doesn't exist"); + setverdict(fail, __SCOPE__ & ": Error : attribute was retrieved while it doesn't exist"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } @@ -5314,18 +5476,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))){ tc_ac.stop; - setverdict(pass, testcasename() & ": Resource not found"); + setverdict(pass, __SCOPE__ & ": Resource not found"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -5378,20 +5540,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))) { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": resourceName attribute of <oldest> resource retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))){ tc_ac.stop; - setverdict(pass, testcasename() & ": resourceName attribute of <oldest> resource retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)){ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resourceName attribute of <oldest> resource value not expected"); + setverdict(fail, __SCOPE__ & ": Error, resourceName attribute of <oldest> resource value not expected"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)){ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving <oldest> resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving <oldest> resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving <oldest> resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving <oldest> resource"); } } @@ -5437,18 +5603,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))){ tc_ac.stop; - setverdict(pass, testcasename() & ": Resource not found"); + setverdict(pass, __SCOPE__ & ": Resource not found"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -5465,7 +5631,7 @@ module OneM2M_Testcases { group g_CSE_DMR_RET_012{ /** - * @desc Check that the IUT accepts the RETRIEVE Request of the latest contentInstance target to a <container> resource + * @desc Check that the IUT accepts the RETRIEVE Request of the latest contentInstance target to a <container> resource7 * */ testcase TC_CSE_DMR_RET_012() runs on CseTester system CseSystem { @@ -5502,20 +5668,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, v_contentResponse))){ + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": resourceName attribute of <latest> resource retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))){ tc_ac.stop; - setverdict(pass, testcasename() & ": resourceName attribute of <latest> resource retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)){ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resourceName attribute of <latest> resource value not expected"); + setverdict(fail, __SCOPE__ & ": Error, resourceName attribute of <latest> resource value not expected"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)){ tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving <latest> resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving <latest> resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving <latest> resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving <latest> resource"); } } @@ -5642,20 +5812,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Response OK for retrieving"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Response OK for retrieving"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -5728,7 +5902,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - log(testcasename() & ":AccessControlPolicy support is required for executing this test case"); + log(__SCOPE__ & ":INFO: AccessControlPolicy support is required for executing this test case"); stop; } @@ -5755,18 +5929,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Access denied to retrieve attributes from resource type " & int2str(enum2int(p_resourceType))); + setverdict(pass, __SCOPE__ & ": Access denied to retrieve attributes from resource type " & int2str(enum2int(p_resourceType))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving attributes from resource without having privileges"); + setverdict(fail, __SCOPE__ & ": Error while retrieving attributes from resource without having privileges"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Retrieving attributes from resource without having privileges"); + setverdict(fail, __SCOPE__ & ": Retrieving attributes from resource without having privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -5892,20 +6066,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Requested attribute retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Requested attribute retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, not only requested attribute retrieved"); + setverdict(fail, __SCOPE__ & ": Error, not only requested attribute retrieved"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attribute"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attribute"); } } @@ -6030,20 +6208,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Requested attribute retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Requested attribute retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, not only requested attribute retrieved"); + setverdict(fail, __SCOPE__ & ": Error, not only requested attribute retrieved"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attribute"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attribute"); } } @@ -6242,20 +6424,24 @@ module OneM2M_Testcases { tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Requested attributes retrieved successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Requested attributes retrieved successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, not only requested attributes retrieved"); + setverdict(fail, __SCOPE__ & ": Error, not only requested attributes retrieved"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attributes"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } @@ -6355,18 +6541,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Retrieved attribute does not exist"); + setverdict(pass, __SCOPE__ & ": Retrieved attribute does not exist"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving non existing resource attribute"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error : attribute was retrieved while it doesn't exist"); + setverdict(fail, __SCOPE__ & ": Error : attribute was retrieved while it doesn't exist"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attribute"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attribute"); } } @@ -6466,18 +6652,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Retrieved attribute does not exist"); + setverdict(pass, __SCOPE__ & ": Retrieved attribute does not exist"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving non existing resource attributes"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error : attribute was retrieved while it doesn't exist"); + setverdict(fail, __SCOPE__ & ": Error : attribute was retrieved while it doesn't exist"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } @@ -6540,18 +6726,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) { //BAD REQUEST tc_ac.stop; - setverdict(pass, testcasename() & ": Request successfully rejected"); + setverdict(pass, __SCOPE__ & ": Request successfully rejected"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, Result content set to " & int2str(enum2int(p_resultContent)) & " is impossible for a retrieve request "); + setverdict(fail, __SCOPE__ & ": Error, Result content set to " & int2str(enum2int(p_resultContent)) & " is impossible for a retrieve request "); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -6666,20 +6852,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -6795,20 +6985,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -6924,20 +7118,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -7052,20 +7250,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -7180,20 +7382,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000, p_contentResponse))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(p_contentResponse))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); + setverdict(fail, __SCOPE__ & ": Child resources provided with RC set to " & int2str(enum2int(v_request.resultContent))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -7221,25 +7427,30 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var Labels v_labels_2:= {"VALUE_2"}; var ResponsePrimitive v_responsePrimitive; - var template RequestPrimitive v_createRequest := m_createContainerBase; var template RequestPrimitive v_updateRequest := m_updateContainerBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.container.labels := v_labels_1; v_updateRequest.primitiveContent.container.labels := v_labels_2; v_responsePrimitive := f_CSE_DMR_UPD_001(int3, v_createRequest, v_updateRequest);//Container - if(getverdict == pass){ //Check attribute 1 if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.container)) { + if(v_primitiveContentRetrieveResource.container.labels != v_labels_2){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7250,6 +7461,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createGroupBase; var template RequestPrimitive v_updateRequest := m_updateGroupBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.group_.labels := v_labels_1; v_updateRequest.primitiveContent.group_.labels := v_labels_2; @@ -7261,10 +7473,16 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.group_)) { if(v_responsePrimitive.primitiveContent.group_.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.group_)) { + if(v_primitiveContentRetrieveResource.group_.labels != v_labels_2){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7275,6 +7493,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createAcpBase; var template RequestPrimitive v_updateRequest := m_updateAcpBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.accessControlPolicy.labels := v_labels_1; v_updateRequest.primitiveContent.accessControlPolicy.labels := v_labels_2; @@ -7286,10 +7505,16 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { if(v_responsePrimitive.primitiveContent.accessControlPolicy.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.accessControlPolicy)) { + if(v_primitiveContentRetrieveResource.accessControlPolicy.labels != v_labels_2){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7301,6 +7526,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createScheduleBase; var template RequestPrimitive v_updateRequest := m_updateScheduleBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.schedule.labels := v_labels_1; v_updateRequest.primitiveContent.schedule.labels := v_labels_2; @@ -7312,10 +7538,16 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.schedule)) { if(v_responsePrimitive.primitiveContent.schedule.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.schedule)) { + if(v_primitiveContentRetrieveResource.schedule.labels != v_labels_2){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7327,6 +7559,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createPollingChannelBase; var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.pollingChannel.labels := v_labels_1; v_updateRequest.primitiveContent.pollingChannel.labels := v_labels_2; @@ -7338,10 +7571,16 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.pollingChannel)) { if(v_responsePrimitive.primitiveContent.pollingChannel.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.pollingChannel)) { + if(v_primitiveContentRetrieveResource.pollingChannel.labels != v_labels_2){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7352,26 +7591,33 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createSubscriptionBase; var template RequestPrimitive v_updateRequest := m_updateSubscriptionBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.subscription.labels := v_labels_1; v_updateRequest.primitiveContent.subscription.labels := v_labels_2; - v_responsePrimitive := f_CSE_DMR_UPD_001(int23, v_createRequest, v_updateRequest);//Subscription + v_responsePrimitive := f_CSE_DMR_UPD_001(int23, v_createRequest, v_updateRequest, v_primitiveContentRetrieveResource);//Subscription if(getverdict == pass){ //Check attribute 1 if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.subscription)) { + if(v_primitiveContentRetrieveResource.subscription.labels != v_labels_2){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } - function f_CSE_DMR_UPD_001(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive) runs on CseTester return ResponsePrimitive{ + function f_CSE_DMR_UPD_001(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, out PrimitiveContent p_primitiveContentRetrievedResource) runs on CseTester return ResponsePrimitive{ // Local variables var MsgIn v_response; @@ -7401,19 +7647,28 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } + f_checkCseTesterStatus(); + + //Used to check that the resource has been updated + p_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -7437,6 +7692,7 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateContainerBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.container.labels := v_labels_1; @@ -7447,10 +7703,17 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.labels != v_labels_1){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.container)) { + if(v_primitiveContentRetrieveResource.container.labels != v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7459,6 +7722,7 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateGroupBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.group_.labels := v_labels_1; @@ -7469,10 +7733,17 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.group_)) { if(v_responsePrimitive.primitiveContent.group_.labels != v_labels_1){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.group_)) { + if(v_primitiveContentRetrieveResource.group_.labels != v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7481,6 +7752,7 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateAcpBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.accessControlPolicy.labels := v_labels_1; @@ -7491,10 +7763,17 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { if(v_responsePrimitive.primitiveContent.accessControlPolicy.labels != v_labels_1){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.accessControlPolicy)) { + if(v_primitiveContentRetrieveResource.accessControlPolicy.labels != v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7503,6 +7782,7 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateScheduleBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.schedule.labels := v_labels_1; @@ -7513,10 +7793,17 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.schedule)) { if(v_responsePrimitive.primitiveContent.schedule.labels != v_labels_1){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.schedule)) { + if(v_primitiveContentRetrieveResource.schedule.labels != v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7525,6 +7812,7 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.pollingChannel.labels := v_labels_1; @@ -7535,10 +7823,17 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.pollingChannel)) { if(v_responsePrimitive.primitiveContent.pollingChannel.labels != v_labels_1){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.pollingChannel)) { + if(v_primitiveContentRetrieveResource.pollingChannel.labels != v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } @@ -7547,6 +7842,7 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateSubscriptionBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.subscription.labels := v_labels_1; @@ -7557,14 +7853,21 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.labels != v_labels_1){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.subscription)) { + if(v_primitiveContentRetrieveResource.subscription.labels != v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") + } + } } } - function f_CSE_DMR_UPD_002(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive) runs on CseTester return ResponsePrimitive { + function f_CSE_DMR_UPD_002(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, out PrimitiveContent p_primitiveContentRetrievedResource) runs on CseTester return ResponsePrimitive { // Local variables var MsgIn v_response; @@ -7594,19 +7897,26 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } + //Used to check that the resource has been updated + p_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -7633,6 +7943,7 @@ module OneM2M_Testcases { var ResponsePrimitive v_responsePrimitive; var template RequestPrimitive v_createRequest := m_createContainerBase; var template RequestPrimitive v_updateRequest := m_updateContainerBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.container.labels := v_labels_1; v_updateRequest.primitiveContent.container.labels := v_labels_2; @@ -7647,11 +7958,20 @@ module OneM2M_Testcases { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(ispresent(v_responsePrimitive.primitiveContent.container.labels)){ if(not(match(v_responsePrimitive.primitiveContent.container.labels,{""}))) { - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly"); + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly"); } } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.container)) { + if(ispresent(v_primitiveContentRetrieveResource.container.labels)) { + if(not(match(v_primitiveContentRetrieveResource.container.labels,{""}))){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } + } } } @@ -7663,6 +7983,7 @@ module OneM2M_Testcases { var ResponsePrimitive v_responsePrimitive; var template RequestPrimitive v_createRequest := m_createGroupBase; var template RequestPrimitive v_updateRequest := m_updateGroupBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.group_.labels := v_labels_1; v_updateRequest.primitiveContent.group_.labels := v_labels_2; @@ -7676,10 +7997,19 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.group_)) { if(ispresent(v_responsePrimitive.primitiveContent.group_.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.group_)) { + if(ispresent(v_primitiveContentRetrieveResource.group_.labels)) { + if(not(match(v_primitiveContentRetrieveResource.group_.labels,{""}))){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } + } } } @@ -7691,6 +8021,7 @@ module OneM2M_Testcases { var ResponsePrimitive v_responsePrimitive; var template RequestPrimitive v_createRequest := m_createAcpBase; var template RequestPrimitive v_updateRequest := m_updateAcpBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.accessControlPolicy.labels := v_labels_1; v_updateRequest.primitiveContent.accessControlPolicy.labels := v_labels_2; @@ -7704,10 +8035,19 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { if(ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.accessControlPolicy)) { + if(ispresent(v_primitiveContentRetrieveResource.accessControlPolicy.labels)) { + if(not(match(v_primitiveContentRetrieveResource.accessControlPolicy.labels,{""}))){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } + } } } @@ -7719,6 +8059,7 @@ module OneM2M_Testcases { var ResponsePrimitive v_responsePrimitive; var template RequestPrimitive v_createRequest := m_createScheduleBase; var template RequestPrimitive v_updateRequest := m_updateScheduleBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.schedule.labels := v_labels_1; v_updateRequest.primitiveContent.schedule.labels := v_labels_2; @@ -7732,10 +8073,19 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.schedule)) { if(ispresent(v_responsePrimitive.primitiveContent.schedule.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.schedule)) { + if(ispresent(v_primitiveContentRetrieveResource.schedule.labels)) { + if(not(match(v_primitiveContentRetrieveResource.schedule.labels,{""}))){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } + } } } @@ -7747,6 +8097,7 @@ module OneM2M_Testcases { var ResponsePrimitive v_responsePrimitive; var template RequestPrimitive v_createRequest := m_createPollingChannelBase; var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.pollingChannel.labels := v_labels_1; v_updateRequest.primitiveContent.pollingChannel.labels := v_labels_2; @@ -7760,10 +8111,19 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.pollingChannel)) { if(ispresent(v_responsePrimitive.primitiveContent.pollingChannel.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.pollingChannel)) { + if(ispresent(v_primitiveContentRetrieveResource.pollingChannel.labels)) { + if(not(match(v_primitiveContentRetrieveResource.pollingChannel.labels,{""}))){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } + } } } @@ -7775,6 +8135,7 @@ module OneM2M_Testcases { var ResponsePrimitive v_responsePrimitive; var template RequestPrimitive v_createRequest := m_createSubscriptionBase; var template RequestPrimitive v_updateRequest := m_updateSubscriptionBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.subscription.labels := v_labels_1; v_updateRequest.primitiveContent.subscription.labels := v_labels_2; @@ -7788,14 +8149,23 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(ispresent(v_responsePrimitive.primitiveContent.subscription.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.subscription)) { + if(ispresent(v_primitiveContentRetrieveResource.subscription.labels)) { + if(not(match(v_primitiveContentRetrieveResource.subscription.labels,{""}))){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } + } } } - function f_CSE_DMR_UPD_003(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, template (omit) AttributeAux_list p_nullFields := omit) runs on CseTester return ResponsePrimitive { + function f_CSE_DMR_UPD_003(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, template (omit) AttributeAux_list p_nullFields := omit, out PrimitiveContent p_primitiveContentRetrievedResource) runs on CseTester return ResponsePrimitive { // Local variables var MsgIn v_response; @@ -7827,19 +8197,25 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request, p_nullFields)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } + p_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -7866,6 +8242,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_updateRequest := m_updateContainerBase; var ResponsePrimitive v_responsePrimitive; var AttributeAux_list v_nullFields; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.container.labels := v_labels_1;//Attribute 3 v_updateRequest.primitiveContent.container.expirationTime := "20301231T012345";//Attribute 1 @@ -7881,18 +8258,34 @@ module OneM2M_Testcases { if(ischosen(v_responsePrimitive.primitiveContent.container)) { //Check attribute 1 if(v_responsePrimitive.primitiveContent.container.expirationTime != valueof(v_updateRequest.primitiveContent.container.expirationTime)){ - setverdict(fail, testcasename() & ": Error: Expiration Time attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Expiration Time attribute not updated correctly") } //Check attribute 2 if(v_responsePrimitive.primitiveContent.container.maxNrOfInstances != valueof(v_updateRequest.primitiveContent.container.maxNrOfInstances)){ - setverdict(fail, testcasename() & ": Error: MaxNrOfInstances attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: MaxNrOfInstances attribute not updated correctly") } //Check attribute 3 if(ispresent(v_responsePrimitive.primitiveContent.container.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.container)) { + //Check attribute 1 + if(v_primitiveContentRetrieveResource.container.expirationTime != valueof(v_updateRequest.primitiveContent.container.expirationTime)){ + setverdict(fail, __SCOPE__ & ": Error: Expiration Time attribute not updated correctly") + } + //Check attribute 2 + if(v_primitiveContentRetrieveResource.container.maxNrOfInstances != valueof(v_updateRequest.primitiveContent.container.maxNrOfInstances)){ + setverdict(fail, __SCOPE__ & ": Error: MaxNrOfInstances attribute not updated correctly") + } + //Check attribute 3 + if(ispresent(v_primitiveContentRetrieveResource.container.labels)){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } } } @@ -7906,6 +8299,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createGroupBase; var template RequestPrimitive v_updateRequest := m_updateGroupBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.group_.labels := v_labels_1;//Attribute 3 v_updateRequest.primitiveContent.group_.expirationTime := "20301231T012345";//Attribute 1 @@ -7921,18 +8315,34 @@ module OneM2M_Testcases { if(ischosen(v_responsePrimitive.primitiveContent.group_)) { //Check attribute 1 if(not match(v_responsePrimitive.primitiveContent.group_.groupName, valueof(v_updateRequest.primitiveContent.group_.groupName))){ - setverdict(fail, testcasename() & ": Error: groupName attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: groupName attribute not updated correctly") } //Check attribute 2 if(not match(v_responsePrimitive.primitiveContent.group_.expirationTime, valueof(v_updateRequest.primitiveContent.group_.expirationTime))){ - setverdict(fail, testcasename() & ": Error: expirationTime attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: expirationTime attribute not updated correctly") } //Check attribute 3 if(ispresent(v_responsePrimitive.primitiveContent.group_.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.group_)) { + //Check attribute 1 + if(v_primitiveContentRetrieveResource.group_.groupName != valueof(v_updateRequest.primitiveContent.group_.groupName)){ + setverdict(fail, __SCOPE__ & ": Error: groupName attribute not updated correctly") + } + //Check attribute 2 + if(v_primitiveContentRetrieveResource.group_.expirationTime != valueof(v_updateRequest.primitiveContent.group_.expirationTime)){ + setverdict(fail, __SCOPE__ & ": Error: expirationTime attribute not updated correctly") + } + //Check attribute 3 + if(ispresent(v_primitiveContentRetrieveResource.group_.labels)){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } } } @@ -7955,6 +8365,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createAcpBase;// privileges set by default to 63 for * var template RequestPrimitive v_updateRequest := m_updateAcpBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.accessControlPolicy.labels := v_labels_1;//Attribute 3 v_updateRequest.primitiveContent.accessControlPolicy.privileges := v_privileges_2; //Attribute 1 @@ -7970,18 +8381,34 @@ module OneM2M_Testcases { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { //Check attribute 1 if(not match(v_responsePrimitive.primitiveContent.accessControlPolicy.privileges.accessControlRule_list[0].accessControlOperations, v_privileges_2.accessControlRule_list[0].accessControlOperations)){ - setverdict(fail, testcasename() & ": Error: Privileges attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Privileges attribute not updated correctly") } //Check attribute 2 if(not match(v_responsePrimitive.primitiveContent.accessControlPolicy.announceTo, valueof(v_updateRequest.primitiveContent.accessControlPolicy.announceTo))){ - setverdict(fail, testcasename() & ": Error: Announce_to attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Announce_to attribute not updated correctly") } //Check attribute 3 if(ispresent(v_responsePrimitive.primitiveContent.accessControlPolicy.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.accessControlPolicy)) { + //Check attribute 1 + if(not match (v_primitiveContentRetrieveResource.accessControlPolicy.privileges.accessControlRule_list[0].accessControlOperations, v_privileges_2.accessControlRule_list[0].accessControlOperations)){ + setverdict(fail, __SCOPE__ & ": Error: Privileges attribute not updated correctly") + } + //Check attribute 2 + if(not match (v_primitiveContentRetrieveResource.accessControlPolicy.announceTo, valueof(v_updateRequest.primitiveContent.accessControlPolicy.announceTo))){ + setverdict(fail, __SCOPE__ & ": Error: Announce_to attribute not updated correctly") + } + //Check attribute 3 + if(ispresent(v_primitiveContentRetrieveResource.accessControlPolicy.labels)){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } } } @@ -7993,6 +8420,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createScheduleBase; var template RequestPrimitive v_updateRequest := m_updateScheduleBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.schedule.scheduleElement := {{"0,0,0 1 2,1,1,*"}};//Attribute 1 v_updateRequest.primitiveContent.schedule.scheduleElement := {{"1,1,1 1 2,1,1,*"}}; //Attribute 1 @@ -8008,18 +8436,34 @@ module OneM2M_Testcases { if(ischosen(v_responsePrimitive.primitiveContent.schedule)) { //Check attribute 1 if(v_responsePrimitive.primitiveContent.schedule.scheduleElement != valueof(v_updateRequest.primitiveContent.schedule.scheduleElement)){ - setverdict(fail, testcasename() & ": Error: Expiration Time attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Schedule Element attribute not updated correctly") } //Check attribute 2 if(v_responsePrimitive.primitiveContent.schedule.announceTo != valueof(v_updateRequest.primitiveContent.schedule.announceTo)){ - setverdict(fail, testcasename() & ": Error: MaxNrOfInstances attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Announce_To attribute not updated correctly") } //Check attribute 3 if(ispresent(v_responsePrimitive.primitiveContent.schedule.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.schedule)) { + //Check attribute 1 + if(v_primitiveContentRetrieveResource.schedule.scheduleElement != valueof(v_updateRequest.primitiveContent.schedule.scheduleElement)){ + setverdict(fail, __SCOPE__ & ": Error: Schedule Element attribute not updated correctly") + } + //Check attribute 2 + if(v_primitiveContentRetrieveResource.schedule.announceTo != valueof(v_updateRequest.primitiveContent.schedule.announceTo)){ + setverdict(fail, __SCOPE__ & ": Error: Announce_To attribute not updated correctly") + } + //Check attribute 3 + if(ispresent(v_primitiveContentRetrieveResource.schedule.labels)){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } } } @@ -8032,6 +8476,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createPollingChannelBase; var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.pollingChannel.labels := v_labels_1;//Attribute 3 //No Attribute 1 @@ -8049,14 +8494,21 @@ module OneM2M_Testcases { //Check attribute 2 TODO once another alternative is found, activate this checking /*if(not match(v_responsePrimitive.primitiveContent.pollingChannel.accessControlPolicyIDs, valueof(v_updateRequest.primitiveContent.pollingChannel.accessControlPolicyIDs))){ - setverdict(fail, testcasename() & ": Error: ACPI attribute not added correctly") + setverdict(fail, __SCOPE__ & ": Error: ACPI attribute not added correctly") }*/ //Check attribute 3 if(ispresent(v_responsePrimitive.primitiveContent.pollingChannel.labels)){ - setverdict(fail, testcasename() & ": Error: Labels attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.pollingChannel)) { + if(ispresent (v_primitiveContentRetrieveResource.pollingChannel.labels)){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not deleted correctly") + } + } } } @@ -8067,6 +8519,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createSubscriptionBase; var template RequestPrimitive v_updateRequest := m_updateSubscriptionBase; var ResponsePrimitive v_responsePrimitive; + var PrimitiveContent v_primitiveContentRetrieveResource; v_createRequest.primitiveContent.subscription.expirationCounter := 10;//Attribute 3 v_updateRequest.primitiveContent.subscription.expirationTime := "20301231T012345";//Attribute 1 @@ -8082,22 +8535,38 @@ module OneM2M_Testcases { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { //Check attribute 1 if(not match(v_responsePrimitive.primitiveContent.subscription.labels, valueof(v_updateRequest.primitiveContent.subscription.labels))){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } //Check attribute 2 if(not match(v_responsePrimitive.primitiveContent.subscription.expirationTime, valueof(v_updateRequest.primitiveContent.subscription.expirationTime))){ - setverdict(fail, testcasename() & ": Error: expirationTime attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: expirationTime attribute not updated correctly") } //Check attribute 3 if(ispresent(v_responsePrimitive.primitiveContent.subscription.expirationCounter)){ - setverdict(fail, testcasename() & ": Error: expirationCounter attribute not deleted correctly") + setverdict(fail, __SCOPE__ & ": Error: expirationCounter attribute not deleted correctly") } } } + + //Check that the resource has been udpated correctly + if(ischosen(v_primitiveContentRetrieveResource.subscription)) { + //Check attribute 1 + if(not match (v_primitiveContentRetrieveResource.subscription.labels, valueof(v_updateRequest.primitiveContent.subscription.labels))){ + setverdict(fail, __SCOPE__ & ": Error: Label attribute not updated correctly") + } + //Check attribute 2 + if(not match (v_primitiveContentRetrieveResource.subscription.expirationTime, valueof(v_updateRequest.primitiveContent.subscription.expirationTime))){ + setverdict(fail, __SCOPE__ & ": Error: expirationTime attribute not updated correctly") + } + //Check attribute 3 + if(ispresent(v_primitiveContentRetrieveResource.subscription.expirationCounter)){ + setverdict(fail, __SCOPE__ & ": Error: expirationCounter attribute not deleted correctly") + } + } } } - function f_CSE_DMR_UPD_004(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, template (omit) AttributeAux_list p_nullFields := omit) runs on CseTester return ResponsePrimitive { + function f_CSE_DMR_UPD_004(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, template (omit) AttributeAux_list p_nullFields := omit, out PrimitiveContent p_primitiveContentRetrievedResource) runs on CseTester return ResponsePrimitive { // Local variables var MsgIn v_response; @@ -8127,19 +8596,25 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request, p_nullFields)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK())) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } + p_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -8257,18 +8732,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource " & c_defaultResourceName & " of type " & int2str(enum2int(p_resourceType)) & " not found"); + setverdict(pass, __SCOPE__ & ": Resource " & c_defaultResourceName & " of type " & int2str(enum2int(p_resourceType)) & " not found"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating an unexisting resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating an unexisting resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while updating an unexisting resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } @@ -8292,20 +8767,38 @@ module OneM2M_Testcases { // Local variables var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateContainerBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.container.labels := v_labels_1; f_CSE_DMR_UPD_006(int3, m_createContainerBase, v_updateRequest);//Container + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.container)) { + if(v_primitiveContentRetrieveResource.container.labels == v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_006_GRP_LBL() runs on CseTester system CseSystem { // Local variables var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateGroupBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.group_.labels := v_labels_1; f_CSE_DMR_UPD_006(int9, m_createGroupBase, v_updateRequest);//Group + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.group_)) { + if(v_primitiveContentRetrieveResource.group_.labels == v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_006_ACP_LBL() runs on CseTester system CseSystem { @@ -8313,45 +8806,81 @@ module OneM2M_Testcases { var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateAcpBase; var template RequestPrimitive v_requestPrimitive := m_createAcpBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_requestPrimitive.primitiveContent.accessControlPolicy.selfPrivileges.accessControlRule_list[0].accessControlOperations := int59; v_updateRequest.primitiveContent.accessControlPolicy.labels := v_labels_1; f_CSE_DMR_UPD_006(int1, v_requestPrimitive, v_updateRequest);//AccessControlPolicy + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.accessControlPolicy)) { + if(v_primitiveContentRetrieveResource.accessControlPolicy.labels == v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_006_SCH_LBL() runs on CseTester system CseSystem { // Local variables var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateScheduleBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.schedule.labels := v_labels_1; f_CSE_DMR_UPD_006(int18, m_createScheduleBase, v_updateRequest);//Schedule + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.schedule)) { + if(v_primitiveContentRetrieveResource.schedule.labels == v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_006_PCH_LBL() runs on CseTester system CseSystem { // Local variable var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.pollingChannel.labels := v_labels_1; f_CSE_DMR_UPD_006(int15, m_createPollingChannelBase, v_updateRequest);//PollingChannel + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.pollingChannel)) { + if(v_primitiveContentRetrieveResource.pollingChannel.labels == v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_006_SUB_LBL() runs on CseTester system CseSystem { // Local variables var Labels v_labels_1 := {"VALUE_1"}; var template RequestPrimitive v_updateRequest := m_updateSubscriptionBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.subscription.labels := v_labels_1; f_CSE_DMR_UPD_006(int23, m_createSubscriptionBase, v_updateRequest);//Subscription + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.subscription)) { + if(v_primitiveContentRetrieveResource.subscription.labels == v_labels_1){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } } - function f_CSE_DMR_UPD_006(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive) runs on CseTester { + function f_CSE_DMR_UPD_006(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, out PrimitiveContent p_primitiveContentRetrievedResource) runs on CseTester { // Local variables var MsgIn v_response; @@ -8364,7 +8893,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -8390,21 +8919,23 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Access denied to update attributes from resource type " & int2str(enum2int(p_resourceType))); + setverdict(pass, __SCOPE__ & ": Access denied to update attributes from resource type " & int2str(enum2int(p_resourceType))); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating attributes from resource without having privileges"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Updating attributes from resource without having privileges"); + setverdict(fail, __SCOPE__ & ": Updating attributes from resource without having privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } + p_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -8426,69 +8957,123 @@ module OneM2M_Testcases { // Local variables var Timestamp v_creationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateContainerBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent := {container_update_invalid := m_contentUpdateContainer_invalid}; v_updateRequest.primitiveContent.container_update_invalid.creationTime := v_creationTime; f_CSE_DMR_UPD_007(int3, m_createContainerBase, v_updateRequest);//Container + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.container_update_invalid)) { + if(v_primitiveContentRetrieveResource.container_update_invalid.creationTime == v_creationTime){ + setverdict(fail, __SCOPE__ & ": Error: Creation Time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_007_GRP_CT() runs on CseTester system CseSystem { // Local variables var Timestamp v_creationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateGroupBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent := {group_update_invalid := m_contentUpdateGroup_invalid}; v_updateRequest.primitiveContent.group_update_invalid.creationTime := v_creationTime; f_CSE_DMR_UPD_007(int9, m_createGroupBase, v_updateRequest);//Group + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.group_update_invalid)) { + if(v_primitiveContentRetrieveResource.group_update_invalid.creationTime == v_creationTime){ + setverdict(fail, __SCOPE__ & ": Error: Creation Time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_007_ACP_CT() runs on CseTester system CseSystem { // Local variables var Timestamp v_creationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateAcpBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent := {aCP_update_invalid := m_contentUpdateAcp_invalid}; v_updateRequest.primitiveContent.aCP_update_invalid.creationTime := v_creationTime; f_CSE_DMR_UPD_007(int1, m_createAcpBase, v_updateRequest);//AccessControlPolicy + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.aCP_update_invalid)) { + if(v_primitiveContentRetrieveResource.aCP_update_invalid.creationTime == v_creationTime){ + setverdict(fail, __SCOPE__ & ": Error: Creation Time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_007_SCH_CT() runs on CseTester system CseSystem { // Local variables var Timestamp v_creationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateScheduleBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent := {schedule_update_invalid := m_contentUpdateSchedule_invalid}; v_updateRequest.primitiveContent.schedule_update_invalid.creationTime := v_creationTime; f_CSE_DMR_UPD_007(int18, m_createScheduleBase, v_updateRequest);//Schedule + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.schedule_update_invalid)) { + if(v_primitiveContentRetrieveResource.schedule_update_invalid.creationTime == v_creationTime){ + setverdict(fail, __SCOPE__ & ": Error: Creation Time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_007_PCH_CT() runs on CseTester system CseSystem { // Local variables var Timestamp v_creationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent := {pollingChannel_update_invalid := m_contentUpdatePollingChannel_invalid}; v_updateRequest.primitiveContent.pollingChannel_update_invalid.creationTime := v_creationTime; f_CSE_DMR_UPD_007(int15, m_createPollingChannelBase, v_updateRequest);//PollingChannel + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.pollingChannel_update_invalid)) { + if(v_primitiveContentRetrieveResource.pollingChannel_update_invalid.creationTime == v_creationTime){ + setverdict(fail, __SCOPE__ & ": Error: Creation Time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_007_SUB_CT() runs on CseTester system CseSystem { // Local variables var Timestamp v_creationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateSubscriptionBase; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent := {subscription_update_invalid := m_contentUpdateSubscription_invalid}; v_updateRequest.primitiveContent.subscription_update_invalid.creationTime := v_creationTime; f_CSE_DMR_UPD_007(int23, m_createSubscriptionBase, v_updateRequest);//Subscription + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.subscription_update_invalid)) { + if(v_primitiveContentRetrieveResource.subscription_update_invalid.creationTime == v_creationTime){ + setverdict(fail, __SCOPE__ & ": Error: Creation Time attribute updated") + } + } + } } - function f_CSE_DMR_UPD_007(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive) runs on CseTester { + function f_CSE_DMR_UPD_007(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, out PrimitiveContent p_primitiveContentRetrievedResource) runs on CseTester { // Local variables var MsgIn v_response; @@ -8520,21 +9105,23 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Operation not allowed. RO attribute from resource type " & int2str(enum2int(p_resourceType)) ); + setverdict(pass, __SCOPE__ & ": Operation not allowed. RO attribute from resource type " & int2str(enum2int(p_resourceType)) ); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating RO attribute"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Updating RO attribute from resource"); + setverdict(fail, __SCOPE__ & ": Updating RO attribute from resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } + p_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -8556,12 +9143,21 @@ module OneM2M_Testcases { var Timestamp v_expirationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateContainerBase; var AttributeAux_list v_nullFields; + var PrimitiveContent v_primitiveContentRetrieveResource; v_nullFields := {{"expirationTime", omit}}; v_updateRequest.primitiveContent.container.expirationTime := v_expirationTime; f_CSE_DMR_UPD_008(int3, m_createContainerBase, v_updateRequest, v_nullFields);//Container + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.container)) { + if(v_primitiveContentRetrieveResource.container.expirationTime == v_expirationTime){ + setverdict(fail, __SCOPE__ & ": Error: Expiration time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_008_GRP_ET() runs on CseTester system CseSystem { @@ -8569,12 +9165,21 @@ module OneM2M_Testcases { var Timestamp v_expirationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateGroupBase; var AttributeAux_list v_nullFields; + var PrimitiveContent v_primitiveContentRetrieveResource; v_nullFields := {{"expirationTime", omit}}; v_updateRequest.primitiveContent.group_.expirationTime := v_expirationTime; f_CSE_DMR_UPD_008(int9, m_createGroupBase, v_updateRequest, v_nullFields);//Group + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.group_)) { + if(v_primitiveContentRetrieveResource.group_.expirationTime == v_expirationTime){ + setverdict(fail, __SCOPE__ & ": Error: Expiration time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_008_ACP_ET() runs on CseTester system CseSystem { @@ -8582,12 +9187,21 @@ module OneM2M_Testcases { var Timestamp v_expirationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateAcpBase; var AttributeAux_list v_nullFields; + var PrimitiveContent v_primitiveContentRetrieveResource; v_nullFields := {{"expirationTime", omit}}; v_updateRequest.primitiveContent.accessControlPolicy.expirationTime := v_expirationTime; f_CSE_DMR_UPD_008(int1, m_createAcpBase, v_updateRequest, v_nullFields);//AccessControlPolicy + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.accessControlPolicy)) { + if(v_primitiveContentRetrieveResource.accessControlPolicy.expirationTime == v_expirationTime){ + setverdict(fail, __SCOPE__ & ": Error: Expiration time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_008_SCH_ET() runs on CseTester system CseSystem { @@ -8595,12 +9209,21 @@ module OneM2M_Testcases { var Timestamp v_expirationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateScheduleBase; var AttributeAux_list v_nullFields; + var PrimitiveContent v_primitiveContentRetrieveResource; v_nullFields := {{"expirationTime", omit}}; v_updateRequest.primitiveContent.schedule.expirationTime := v_expirationTime; f_CSE_DMR_UPD_008(int18, m_createScheduleBase, v_updateRequest, v_nullFields);//Schedule + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.schedule)) { + if(v_primitiveContentRetrieveResource.schedule.expirationTime == v_expirationTime){ + setverdict(fail, __SCOPE__ & ": Error: Expiration time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_008_PCH_ET() runs on CseTester system CseSystem { @@ -8608,12 +9231,21 @@ module OneM2M_Testcases { var Timestamp v_expirationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase; var AttributeAux_list v_nullFields; + var PrimitiveContent v_primitiveContentRetrieveResource; v_nullFields := {{"expirationTime", omit}}; v_updateRequest.primitiveContent.pollingChannel.expirationTime := v_expirationTime; f_CSE_DMR_UPD_008(int15, m_createPollingChannelBase, v_updateRequest, v_nullFields);//PollingChannel + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.pollingChannel)) { + if(v_primitiveContentRetrieveResource.pollingChannel.expirationTime == v_expirationTime){ + setverdict(fail, __SCOPE__ & ": Error: Expiration time attribute updated") + } + } + } } testcase TC_CSE_DMR_UPD_008_SUB_ET() runs on CseTester system CseSystem { @@ -8621,15 +9253,24 @@ module OneM2M_Testcases { var Timestamp v_expirationTime := "20001231T012345"; var template RequestPrimitive v_updateRequest := m_updateSubscriptionBase; var AttributeAux_list v_nullFields; + var PrimitiveContent v_primitiveContentRetrieveResource; v_nullFields := {{"expirationTime", omit}}; v_updateRequest.primitiveContent.subscription.expirationTime := v_expirationTime; f_CSE_DMR_UPD_008(int23, m_createSubscriptionBase, v_updateRequest, v_nullFields);//Subscription + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.subscription)) { + if(v_primitiveContentRetrieveResource.subscription.expirationTime == v_expirationTime){ + setverdict(fail, __SCOPE__ & ": Error: Expiration time attribute updated") + } + } + } } - function f_CSE_DMR_UPD_008(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, template (omit) AttributeAux_list p_nullFields := omit) runs on CseTester { + function f_CSE_DMR_UPD_008(ResourceType p_resourceType, template RequestPrimitive p_createRequestPrimitive, template RequestPrimitive p_updateRequestPrimitive, template (omit) AttributeAux_list p_nullFields := omit, out PrimitiveContent p_primitiveContentRetrievedResource) runs on CseTester { // Local variables var MsgIn v_response; @@ -8661,21 +9302,23 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Operation not allowed. Mandatory RW attribute from resource type " & int2str(enum2int(p_resourceType)) ); + setverdict(pass, __SCOPE__ & ": Operation not allowed. Mandatory RW attribute from resource type " & int2str(enum2int(p_resourceType)) ); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting mandatory RW attribute"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Deleting a mandatory RW attribute from resource"); + setverdict(fail, __SCOPE__ & ": Deleting a mandatory RW attribute from resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } + p_primitiveContentRetrievedResource := f_cse_retrieveResource(v_resourceIndex); + // Postamble f_cse_postamble_deleteResources(); @@ -8725,24 +9368,24 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; if(v_response.primitive.responsePrimitive.primitiveContent.container.stateTag == 1) { //(Create and Delete) - setverdict(pass, testcasename() & ": The stateTag attribute is incremented"); + setverdict(pass, __SCOPE__ & ": The stateTag attribute is incremented"); } else{ - setverdict(fail, testcasename() & ": Error the stateTag attribute is not incremented"); + setverdict(fail, __SCOPE__ & ": Error the stateTag attribute is not incremented"); } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attributes"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } }//end if else{ - setverdict(fail, testcasename() & ": Error the stateTag attribute is empty"); + setverdict(fail, __SCOPE__ & ": Error the stateTag attribute is empty"); } // Postamble @@ -8770,6 +9413,7 @@ module OneM2M_Testcases { var integer v_contentInstanceIndex := -1; var template RequestPrimitive v_updateRequest := m_updateContentInstanceBase; var Labels v_labels:= {"LABEL"}; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.contentInstance.labels := v_labels; @@ -8795,21 +9439,31 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Not allowed to update a contentInstance with error OPERATION_NOT_ALLOWED"); + setverdict(pass, __SCOPE__ & ": Not allowed to update a contentInstance with error OPERATION_NOT_ALLOWED"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Not allowed to update a contentInstance with a wrong error code"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted update of contentInstance"); + setverdict(fail, __SCOPE__ & ": Accepted update of contentInstance"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating contentInstance"); + setverdict(fail, __SCOPE__ & ": No answer while updating contentInstance"); } } + v_primitiveContentRetrieveResource:=f_cse_retrieveResource(v_contentInstanceIndex); + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.contentInstance)) { + if(v_primitiveContentRetrieveResource.contentInstance.labels == v_labels){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } + // Postamble f_cse_postamble_deleteResources(); @@ -8835,6 +9489,7 @@ module OneM2M_Testcases { var integer v_contentInstanceIndex := -1; var template RequestPrimitive v_updateRequest := m_updateContentInstanceBase; var Labels v_labels := {"LABEL"}; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.contentInstance.labels := v_labels; @@ -8862,21 +9517,31 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Not allowed to update a latest resource with error OPERATION_NOT_ALLOWED"); + setverdict(pass, __SCOPE__ & ": Not allowed to update a latest resource with error OPERATION_NOT_ALLOWED"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Not allowed to update a latest resource with a wrong error code"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted update of a latest resource"); + setverdict(fail, __SCOPE__ & ": Accepted update of a latest resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating a latest resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating a latest resource"); } } + v_primitiveContentRetrieveResource:=f_cse_retrieveResource(v_contentInstanceIndex); + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.contentInstance)) { + if(v_primitiveContentRetrieveResource.contentInstance.labels == v_labels){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } + // Postamble f_cse_postamble_deleteResources(); @@ -8902,6 +9567,7 @@ module OneM2M_Testcases { var integer v_contentInstanceIndex := -1; var template RequestPrimitive v_updateRequest := m_updateContentInstanceBase; var Labels v_labels:= {"LABEL"}; + var PrimitiveContent v_primitiveContentRetrieveResource; v_updateRequest.primitiveContent.contentInstance.labels := v_labels; @@ -8929,21 +9595,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Not allowed to update an oldest resource with error OPERATION_NOT_ALLOWED"); + setverdict(pass, __SCOPE__ & ": Not allowed to update an oldest resource with error OPERATION_NOT_ALLOWED"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Not allowed to update an oldest resource with a wrong error code"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Accepted update of an oldest resource"); + setverdict(fail, __SCOPE__ & ": Accepted update of an oldest resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating an oldest resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating an oldest resource"); } } + v_primitiveContentRetrieveResource:=f_cse_retrieveResource(v_contentInstanceIndex); + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrieveResource.contentInstance)) { + if(v_primitiveContentRetrieveResource.contentInstance.labels == v_labels){ + setverdict(fail, __SCOPE__ & ": Error: Labels attribute updated") + } + } + } // Postamble f_cse_postamble_deleteResources(); @@ -8978,7 +9653,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { if(v_responsePrimitive.primitiveContent.accessControlPolicy.expirationTime != v_expirationTime_2){ - setverdict(fail, testcasename() & ": Error: ExpirationTime attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: ExpirationTime attribute not updated correctly") } } } @@ -9004,7 +9679,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { if(v_responsePrimitive.primitiveContent.accessControlPolicy.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } @@ -9033,7 +9708,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { if(v_responsePrimitive.primitiveContent.accessControlPolicy.privileges != v_privileges_2){ - setverdict(fail, testcasename() & ": Error: Privileges attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Privileges attribute not updated correctly") } } } @@ -9062,7 +9737,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.accessControlPolicy)) { if(v_responsePrimitive.primitiveContent.accessControlPolicy.selfPrivileges != v_selfPrivileges_2){ - setverdict(fail, testcasename() & ": Error: SelfPrivileges attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: SelfPrivileges attribute not updated correctly") } } } @@ -9090,7 +9765,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.accessControlPolicyIDs != v_accessControlPolicyIDs_2){ - setverdict(fail, testcasename() & ": Error: AccessControlPolicyIDs attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: AccessControlPolicyIDs attribute not updated correctly") } } } @@ -9117,7 +9792,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.expirationTime != v_expirationTime_2){ - setverdict(fail, testcasename() & ": Error: ExpirationTime attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: ExpirationTime attribute not updated correctly") } } } @@ -9144,7 +9819,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } @@ -9171,7 +9846,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.maxByteSize != v_maxByteSize_2){ - setverdict(fail, testcasename() & ": Error: MaxByteSize attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: MaxByteSize attribute not updated correctly") } } } @@ -9198,7 +9873,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.maxInstanceAge != v_maxInstanceAge_2){ - setverdict(fail, testcasename() & ": Error: MaxInstanceAge attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: MaxInstanceAge attribute not updated correctly") } } } @@ -9225,7 +9900,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.maxNrOfInstances != v_maxNrOfInstances_2){ - setverdict(fail, testcasename() & ": Error: MaxNrOfInstances attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: MaxNrOfInstances attribute not updated correctly") } } } @@ -9252,7 +9927,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.container)) { if(v_responsePrimitive.primitiveContent.container.ontologyRef != v_ontologyRef_2){ - setverdict(fail, testcasename() & ": Error: OntologyRef attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: OntologyRef attribute not updated correctly") } } } @@ -9277,7 +9952,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.accessControlPolicyIDs != v_accessControlPolicyIDs_2){ - setverdict(fail, testcasename() & ": Error: AccessControlPolicyIDs attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: AccessControlPolicyIDs attribute not updated correctly") } } } @@ -9303,7 +9978,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.batchNotify != v_batchNotify_2){ - setverdict(fail, testcasename() & ": Error: EventNotificationCriteria attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: EventNotificationCriteria attribute not updated correctly") } } } @@ -9329,7 +10004,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.eventNotificationCriteria != v_eventNotificationCriteria_2){ - setverdict(fail, testcasename() & ": Error: EventNotificationCriteria attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: EventNotificationCriteria attribute not updated correctly") } } } @@ -9355,7 +10030,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.expirationTime != v_expirationTime_2){ - setverdict(fail, testcasename() & ": Error: ExpirationTime attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: ExpirationTime attribute not updated correctly") } } } @@ -9381,7 +10056,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.expirationCounter != v_expirationCounter_2){ - setverdict(fail, testcasename() & ": Error: ExpirationCounter attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: ExpirationCounter attribute not updated correctly") } } } @@ -9407,7 +10082,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.groupID != v_groupID_2){ - setverdict(fail, testcasename() & ": Error: GroupID attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: GroupID attribute not updated correctly") } } } @@ -9433,7 +10108,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.labels != v_labels_2){ - setverdict(fail, testcasename() & ": Error: Labels attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: Labels attribute not updated correctly") } } } @@ -9459,7 +10134,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.latestNotify != v_latestNotify_2){ - setverdict(fail, testcasename() & ": Error: LatestNotify attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: LatestNotify attribute not updated correctly") } } } @@ -9485,7 +10160,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.notificationContentType != v_notificationContentType_2){ - setverdict(fail, testcasename() & ": Error: NotificationContentType attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: NotificationContentType attribute not updated correctly") } } } @@ -9511,7 +10186,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.notificationEventCat != v_notificationEventCat_2){ - setverdict(fail, testcasename() & ": Error: NotificationEventCat attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: NotificationEventCat attribute not updated correctly") } } } @@ -9537,7 +10212,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.notificationForwardingURI != v_notificationForwardingURI_2){ - setverdict(fail, testcasename() & ": Error: NotificationForwardingURI attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: NotificationForwardingURI attribute not updated correctly") } } } @@ -9563,7 +10238,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.notificationStoragePriority != v_notificationStoragePriority_2){ - setverdict(fail, testcasename() & ": Error: NotificationStoragePriority attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: NotificationStoragePriority attribute not updated correctly") } } } @@ -9589,7 +10264,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.pendingNotification != v_pendingNotification_2){ - setverdict(fail, testcasename() & ": Error: PendingNotification attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: PendingNotification attribute not updated correctly") } } } @@ -9615,7 +10290,7 @@ module OneM2M_Testcases { if(ispresent(v_responsePrimitive.primitiveContent)) { if(ischosen(v_responsePrimitive.primitiveContent.subscription)) { if(v_responsePrimitive.primitiveContent.subscription.rateLimit != v_rateLimit_2){ - setverdict(fail, testcasename() & ": Error: RateLimit attribute not updated correctly") + setverdict(fail, __SCOPE__ & ": Error: RateLimit attribute not updated correctly") } } } @@ -9653,16 +10328,16 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); + setverdict(pass, __SCOPE__ & ": Attribute of resource type " & int2str(enum2int(p_resourceType)) & " updated successfully"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while updating resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type " & int2str(enum2int(p_resourceType))); } } @@ -9772,16 +10447,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource" & int2str(enum2int(p_resourceType)) & " deleted successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource" & int2str(enum2int(p_resourceType)) & " deleted successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": Error while deleting resource type " & int2str(enum2int(p_resourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type " & int2str(enum2int(p_resourceType))); } } @@ -9854,7 +10533,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -9875,23 +10554,8 @@ module OneM2M_Testcases { v_setOfArcs.accessControlRule_list := {v_accessControlRule_1, v_accessControlRule_2}; v_updateRequest := valueof(m_updateAcpPrivileges(v_setOfArcs, -)); v_updateRequest := f_getUpdateRequestPrimitive(int1, vc_acpAuxIndex, v_updateRequest); + f_cse_updateResource(v_updateRequest); - mcaPort.send(m_request(v_updateRequest)); - tc_ac.start; - alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { - tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type int1 (Acp) updated successfully"); - } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { - tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type int1 (Acp)"); - } - [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type int1 (Acp)"); - } - } - //Adjustments for ACP resource type if(p_resourceType == int1) { p_createRequestPrimitive.primitiveContent.accessControlPolicy.selfPrivileges.accessControlRule_list := {v_accessControlRule_2};//{v_accessControlRule_1,v_accessControlRule_2}; @@ -9915,21 +10579,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Access denied to delete the resource " & int2str(enum2int(p_resourceType))); + setverdict(pass, __SCOPE__ & ": Access denied to delete the resource " & int2str(enum2int(p_resourceType))); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error resource deleted without having privileges"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting a resource "); + setverdict(fail, __SCOPE__ & ": Error resource deleted without having privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(p_resourceType))); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type " & int2str(enum2int(p_resourceType))); } } + f_checkCseTesterStatus(); + + //Check if the resource has been deleted or not + if(f_isResourcePresent(v_resourceIndex)) { + setverdict(pass, __SCOPE__ & ":INFO: Resource not deleted"); + } else { + setverdict(fail, __SCOPE__ & ":INFO: Resource deleted"); + } + // Postamble // We are forced to delete the Ae because the delete request in the postamble_deleteResources is sent by Ae itself, witch doesn't have privileges f_cse_deleteResource(valueof(m_deleteRequest(f_getResourceAddress(v_aeIndex)))); @@ -9977,18 +10650,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Unexisting resource cannot be deleted"); + setverdict(pass, __SCOPE__ & ": Unexisting resource cannot be deleted"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting non existing resource"); + setverdict(fail, __SCOPE__ & ": Error while deleting non existing resource"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting non existing resource"); + setverdict(fail, __SCOPE__ & ": Error while deleting non existing resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource"); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource"); } } @@ -10070,43 +10743,27 @@ module OneM2M_Testcases { v_childResourceIndex := f_cse_createResource(p_childResourceType, p_createRequestPrimitiveChildResource, v_resourceIndex); - // Test Body - v_request := valueof(m_deleteRequest(f_getResourceAddress(v_resourceIndex))); - - mcaPort.send(m_request(v_request)); - tc_ac.start; - alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { - tc_ac.stop; - setverdict(pass, testcasename() & ":Resource type " & int2str(enum2int(p_resourceType)) & " delete successfully"); - } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { - tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type " & int2str(enum2int(p_resourceType))); - } - [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(p_resourceType))); - } - } + f_cse_deleteResource(valueof(m_deleteRequest(f_getResourceAddress(v_resourceIndex)))); + // Test Body mcaPort.send(m_request(m_deleteRequest(f_getResourceAddress(v_childResourceIndex), f_getOriginator(v_childResourceIndex)))); tc_ac.start; alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Error while deleting non existing resource"); + setverdict(pass, __SCOPE__ & ": Error while deleting non existing resource"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting non existing resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting non existing resource"); + setverdict(fail, __SCOPE__ & ": Error while deleting non existing resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource"); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource"); } } @@ -10156,16 +10813,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " delete successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " delete successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": Error while deleting resource type " & int2str(enum2int(c_containerResourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); } } @@ -10178,24 +10839,24 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; if(v_response.primitive.responsePrimitive.primitiveContent.container.stateTag == 2) { //(Create and Delete) - setverdict(pass, testcasename() & ": The stateTag attribute is incremented"); + setverdict(pass, __SCOPE__ & ": The stateTag attribute is incremented"); } else{ - setverdict(fail, testcasename() & ": Error the stateTag attribute is not incremented"); + setverdict(fail, __SCOPE__ & ": Error the stateTag attribute is not incremented"); } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource attributes"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } }//end if else{ - setverdict(fail, testcasename() & ": Error the stateTag attribute is empty"); + setverdict(fail, __SCOPE__ & ": Error the stateTag attribute is empty"); } // Postamble @@ -10239,7 +10900,7 @@ module OneM2M_Testcases { v_attributesContainer := f_cse_retrieveResource(v_containerIndex); if(not(ispresent(v_attributesContainer.container.currentNrOfInstances))) { - setverdict(fail, testcasename() & ": Error the currentNrOfInstances attribute is empty"); + setverdict(fail, __SCOPE__ & ": Error the currentNrOfInstances attribute is empty"); f_checkCseTesterStatus(); } @@ -10249,15 +10910,15 @@ module OneM2M_Testcases { v_attributesContainer_afterDeletion := f_cse_retrieveResource(v_containerIndex); if(not(ispresent(v_attributesContainer.container.currentNrOfInstances))) { - setverdict(fail, testcasename() & ": Error the currentNrOfInstances attribute is empty"); + setverdict(fail, __SCOPE__ & ": Error the currentNrOfInstances attribute is empty"); f_checkCseTesterStatus(); } if((v_attributesContainer.container.currentNrOfInstances > v_attributesContainer_afterDeletion.container.currentNrOfInstances) and (v_attributesContainer.container.currentByteSize > v_attributesContainer_afterDeletion.container.currentByteSize)) { - setverdict(pass, testcasename() & ": The currentNrOfInstances and currentByteSize attributes are decreased"); + setverdict(pass, __SCOPE__ & ": The currentNrOfInstances and currentByteSize attributes are decreased"); } else { - setverdict(fail, testcasename() & ": currentNrOfInstances and/or currentByteSize attributes are not decreased"); + setverdict(fail, __SCOPE__ & ": currentNrOfInstances and/or currentByteSize attributes are not decreased"); } // Postamble @@ -10306,16 +10967,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " deleted successfuly"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " deleted successfuly"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": Error while deleting resource type " & int2str(enum2int(c_containerResourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); } } @@ -10327,14 +10992,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Resource type" & int2str(enum2int(c_containerResourceType)) & " has already been deleted"); + setverdict(fail, __SCOPE__ & ": Resource type" & int2str(enum2int(c_containerResourceType)) & " has already been deleted"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(pass, testcasename() & ": Error while retrieving resource attributes as" & int2str(enum2int(c_containerResourceType)) & " has been deleted"); + setverdict(pass, __SCOPE__ & ": Error while retrieving resource attributes as" & int2str(enum2int(c_containerResourceType)) & " has been deleted"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } @@ -10382,14 +11047,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " NOT FOUND"); + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " NOT FOUND"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " has not been created"); + setverdict(fail, __SCOPE__ & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " has not been created"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); } } @@ -10439,16 +11108,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " deleted successfuly"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type " & int2str(enum2int(c_containerResourceType)) & " deleted successfuly"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": Error while deleting resource type " & int2str(enum2int(c_containerResourceType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); } } @@ -10460,14 +11133,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Resource type" & int2str(enum2int(c_containerResourceType)) & "has already been deleted"); + setverdict(fail, __SCOPE__ & ": Resource type" & int2str(enum2int(c_containerResourceType)) & "has already been deleted"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(pass, testcasename() & ": Error while retrieving resource attributes as" & int2str(enum2int(c_containerResourceType)) & " has been deleted"); + setverdict(pass, __SCOPE__ & ": Error while retrieving resource attributes as" & int2str(enum2int(c_containerResourceType)) & " has been deleted"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource attributes"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource attributes"); } } @@ -10515,14 +11188,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type" & int2str(enum2int(c_containerResourceType)) & " NOT FOUND"); + setverdict(pass, __SCOPE__ & ": Resource type" & int2str(enum2int(c_containerResourceType)) & " NOT FOUND"); + } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Resource type" & int2str(enum2int(c_containerResourceType)) & " has not been created"); + setverdict(fail, __SCOPE__ & ": Resource type" & int2str(enum2int(c_containerResourceType)) & " has not been created"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type " & int2str(enum2int(c_containerResourceType))); } } @@ -10544,7 +11221,7 @@ module OneM2M_Testcases { testcase TC_CSE_LOC_BV_001() runs on CseTester system CseSystem { - var integer v_aeAuxIndex := -1; + var integer v_aeIndex := -1; var RequestPrimitive v_request; var MsgIn v_response; var LocationSource v_locationSource := int1;//Network-based @@ -10553,10 +11230,10 @@ module OneM2M_Testcases { f_cf01Up(); //Preamble - v_aeAuxIndex := f_cse_preamble_registerAe(); + v_aeIndex := f_cse_preamble_registerAe(); //Set requestPrimitive - v_request := f_getCreateRequestPrimitive(int10, m_createLocationPolicy(v_locationSource, omit, omit, omit, omit), v_aeAuxIndex); + v_request := f_getCreateRequestPrimitive(int10, m_createLocationPolicy(v_locationSource, omit, omit, omit, omit), v_aeIndex); //Test Body mcaPort.send(m_request(v_request)); @@ -10564,21 +11241,31 @@ module OneM2M_Testcases { alt{ [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) -> value v_response { //BAD REQUEST tc_ac.stop; - setverdict(pass, testcasename() & "Resource <locationPolicy> create request is rejected due to invalid request body message!!"); + setverdict(pass, __SCOPE__ & "Resource <locationPolicy> create request is rejected due to invalid request body message!!"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while handling an invalid locationPolicy resource create request with response status code:" & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Created a locationPolicy resource for an invalid create request with response status code:" & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); + setverdict(fail, __SCOPE__ & ": Created a locationPolicy resource for an invalid create request with response status code:" & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Timeout due to no response received from requested server!"); + setverdict(fail, __SCOPE__ & ": Timeout due to no response received from requested server!"); } } + + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -10599,6 +11286,7 @@ module OneM2M_Testcases { var XSD.AnyURI locationServerAddress := PX_LOCATION_SERVER_ADDRESS; var RequestPrimitive v_request; var MsgIn v_response; + var integer v_resourceIndex := -1; //Test component configuration f_cf01Up(); @@ -10613,19 +11301,33 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource locationPolicy is created successfully with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))&"!"); + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int10, v_aeAuxIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource locationPolicy is created successfully with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))&"!"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "while handling a valid locationPolicy resource create request!"); + setverdict(fail, __SCOPE__ & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "while handling a valid locationPolicy resource create request!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); + setverdict(fail, __SCOPE__ & ": Timeout due to no response from requested server!"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_resourceIndex)) { + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -10641,7 +11343,7 @@ module OneM2M_Testcases { testcase TC_CSE_LOC_BO_003() runs on CseTester system CseSystem {//the originator has no privileges to create a locationPolicy resource!! - var integer v_aeAuxIndex := -1; + var integer v_aeIndex := -1; var integer v_acpAuxIndex := -1; var LocationSource v_locationSource := int1;//Network-based var XSD.Duration locationUpdatePeriod := PX_LOCATION_UPDATE_PERIOD; @@ -10652,7 +11354,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -10662,10 +11364,10 @@ module OneM2M_Testcases { //Preamble v_acpAuxIndex := f_cse_preamble_createAcpAux(-, int62);//c_RUDNDi) //No resource creation privilege - v_aeAuxIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -); + v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -); //Set requestPrimitive - v_request := f_getCreateRequestPrimitive(int10, m_createLocationPolicy(v_locationSource,omit, locationUpdatePeriod, locationTargetID, locationServerAddress), v_aeAuxIndex); + v_request := f_getCreateRequestPrimitive(int10, m_createLocationPolicy(v_locationSource,omit, locationUpdatePeriod, locationTargetID, locationServerAddress), v_aeIndex); // Test Body mcaPort.send(m_request(v_request)); @@ -10673,17 +11375,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Access denied to create a resource including locationPolicy!"); + setverdict(pass, __SCOPE__ & ": Access denied to create a resource including locationPolicy!"); } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "due to IUT failed to check the access privilege of originator!"); + setverdict(fail, __SCOPE__ & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "due to IUT failed to check the access privilege of originator!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); + setverdict(fail, __SCOPE__ & ": Timeout due to no response from requested server!"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -10698,7 +11413,7 @@ module OneM2M_Testcases { group g_CSE_LOC_BO_004{ testcase TC_CSE_LOC_BO_004() runs on CseTester system CseSystem { - var integer v_aeAuxIndex := -1; + var integer v_aeIndex := -1; var LocationSource v_locationSource := int1;//Netwok-based var XSD.Duration locationUpdatePeriod := PX_LOCATION_UPDATE_PERIOD; var XSD.Token locationTargetID := PX_LOCATION_TARGET_ID; @@ -10710,10 +11425,10 @@ module OneM2M_Testcases { f_cf01Up(); //Preamble - v_aeAuxIndex := f_cse_preamble_registerAe(); + v_aeIndex := f_cse_preamble_registerAe(); //Set requestPrimitive - v_request := f_getCreateRequestPrimitive(int10, m_createLocationPolicy(v_locationSource, omit, locationUpdatePeriod, locationTargetID, locationServerAddress), v_aeAuxIndex); + v_request := f_getCreateRequestPrimitive(int10, m_createLocationPolicy(v_locationSource, omit, locationUpdatePeriod, locationTargetID, locationServerAddress), v_aeIndex); // Test Body mcaPort.send(m_request(v_request)); @@ -10721,17 +11436,29 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": The targeted resource is not found!!"); + setverdict(pass, __SCOPE__ & ": The targeted resource is not found!!"); } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error occurrs with response status code: "& int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "due to IUT created a locationPolicy resource under a non-existed parent resource!"); + setverdict(fail, __SCOPE__ & ": Error occurrs with response status code: "& int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "due to IUT created a locationPolicy resource under a non-existed parent resource!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); + setverdict(fail, __SCOPE__ & ": Timeout due to no response from requested server!"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } // Postamble f_cse_postamble_deleteResources(); @@ -10776,17 +11503,25 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Update locationPolicy resource is rejected!!"); + setverdict(pass, __SCOPE__ & ": Update locationPolicy resource is rejected!!"); } + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error occurrs with response status code: "& int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "due to IUT failed to handle an invalid locationPolicy update request"); + setverdict(fail, __SCOPE__ & ": Error occurrs with response status code: "& int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "due to IUT failed to handle an invalid locationPolicy update request"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); + setverdict(fail, __SCOPE__ & ": Timeout due to no response from requested server!"); } } + f_checkCseTesterStatus(); + + //TODO: Check to see if the resource has been updated or not + // Postamble f_cse_postamble_deleteResources(); @@ -10831,25 +11566,28 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response{ tc_ac.stop; if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.container.locationID)){ - setverdict(fail, testcasename() & "No locationID is included in the response!"); + setverdict(fail, __SCOPE__ & "No locationID is included in the response!"); }else{ - setverdict(pass, testcasename() & "Container resource associated with locationPolicy resource is successfully retrieved with locationID included in the response!"); + setverdict(pass, __SCOPE__ & "Container resource associated with locationPolicy resource is successfully retrieved with locationID included in the response!"); } } [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & "Requested container resource is not found!"); + setverdict(fail, __SCOPE__ & "Requested container resource is not found!"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource!"); } } + + f_checkCseTesterStatus(); + // Postamble f_cse_postamble_deleteResources(); @@ -10870,6 +11608,7 @@ module OneM2M_Testcases { var RequestPrimitive v_request; var MsgIn v_response; var LocationSource v_locationSource := int2;//Device-based + var integer v_resourceIndex := -1; //Test component configuration f_cf01Up(); @@ -10885,19 +11624,33 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource locationPolicy is created successfully with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))&"!"); + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int10, v_aeAuxIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource locationPolicy is created successfully with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))&"!"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "while handling a valid locationPolicy resource create request!"); + setverdict(fail, __SCOPE__ & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "while handling a valid locationPolicy resource create request!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); + setverdict(fail, __SCOPE__ & ": Timeout due to no response from requested server!"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_resourceIndex)) { + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -10918,6 +11671,7 @@ module OneM2M_Testcases { var LocationSource v_locationSource := int3;//Share-based var RequestPrimitive v_request; var MsgIn v_response; + var integer v_resourceIndex := -1; //Test component configuration f_cf01Up(); @@ -10934,19 +11688,33 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Resource locationPolicy is created successfully with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))&"!"); + v_resourceIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int10, v_aeAuxIndex); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource locationPolicy is created successfully with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode))&"!"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "while handling a valid locationPolicy resource create request!"); + setverdict(fail, __SCOPE__ & ": Error occurrs with response status code: " & int2str(enum2int(v_response.primitive.responsePrimitive.responseStatusCode)) & "while handling a valid locationPolicy resource create request!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); + setverdict(fail, __SCOPE__ & ": Timeout due to no response from requested server!"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_resourceIndex)) { + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -10997,22 +11765,22 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response{ tc_ac.stop; if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.notification.notificationEvent)){ - setverdict(fail, testcasename() & "No NotificationEvent is included in the response!"); + setverdict(fail, __SCOPE__ & "No NotificationEvent is included in the response!"); }else{ - setverdict(pass, testcasename() & "Location information is successfully sent!"); + setverdict(pass, __SCOPE__ & "Location information is successfully sent!"); } } [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & "Requested container resource is not found!"); + setverdict(fail, __SCOPE__ & "Requested container resource is not found!"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource!"); } } @@ -11060,22 +11828,22 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response{ tc_ac.stop; if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.notification.notificationEvent)){ - setverdict(fail, testcasename() & "No NotificationEvent is included in the response!"); + setverdict(fail, __SCOPE__ & "No NotificationEvent is included in the response!"); }else{ - setverdict(pass, testcasename() & "Location information is successfully sent!"); + setverdict(pass, __SCOPE__ & "Location information is successfully sent!"); } } [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & "Requested container resource is not found!"); + setverdict(fail, __SCOPE__ & "Requested container resource is not found!"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource!"); } } @@ -11122,22 +11890,22 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response{ tc_ac.stop; if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.notification.notificationEvent)){ - setverdict(fail, testcasename() & "No NotificationEvent is included in the response!"); + setverdict(fail, __SCOPE__ & "No NotificationEvent is included in the response!"); }else{ - setverdict(pass, testcasename() & "Location information is successfully sent!"); + setverdict(pass, __SCOPE__ & "Location information is successfully sent!"); } } [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & "Requested container resource is not found!"); + setverdict(fail, __SCOPE__ & "Requested container resource is not found!"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource!"); } } @@ -11196,16 +11964,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(valueof(f_getCreateRequestPrimitive(int23, v_subscription_request_preamble, v_locContainerResourceIndex)))); tc_ac.start; alt{ + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response{ + tc_ac.stop; + setverdict(pass, __SCOPE__ & "Subscription resource is successfully!"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response{ tc_ac.stop; - setverdict(pass, testcasename() & "Subscription resource is successfully!"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & "Requested container resource is not found!"); + setverdict(fail, __SCOPE__ & "Requested container resource is not found!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating subscription resource!"); + setverdict(fail, __SCOPE__ & ": No answer while creating subscription resource!"); } } @@ -11249,22 +12021,22 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response{ tc_ac.stop; if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.locationPolicy.locationContainerID)){ - setverdict(fail, testcasename() & "No locationContainerID is included in the response!"); + setverdict(fail, __SCOPE__ & "No locationContainerID is included in the response!"); }else{ - setverdict(pass, testcasename() & "LocationPolicy resource is successfully retrieved with locationContainerID included in the response!"); + setverdict(pass, __SCOPE__ & "LocationPolicy resource is successfully retrieved with locationContainerID included in the response!"); } } [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response{ tc_ac.stop; - setverdict(fail, testcasename() & "Requested locationPolicy is not found!"); + setverdict(fail, __SCOPE__ & "Requested locationPolicy is not found!"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource!"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource!"); } } @@ -11302,6 +12074,7 @@ module OneM2M_Testcases { var ListOfURIs v_memberIDs; var template RequestPrimitive v_createRequest; var ResponsePrimitive v_responsePrimitive; + var boolean v_resourceCreated := false; // Test control @@ -11329,21 +12102,31 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int6010))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Creation failed because member ID exceed max number of member"); + setverdict(pass, __SCOPE__ & ": Creation failed because member ID exceed max number of member"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error resource created while member ID exceed max number of member"); + setverdict(fail, __SCOPE__ & ": Error resource created while member ID exceed max number of member"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + + // Postamble f_cse_postamble_deleteResources(); @@ -11373,7 +12156,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -11399,21 +12182,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5105))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": creation failed due to lack of privilege"); + setverdict(pass, __SCOPE__ & ": creation failed due to lack of privilege"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error creation successful while doesn't have privileges for retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error creation successful while doesn't have privileges for retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + // Postamble f_cse_postamble_deleteResources(); @@ -11440,11 +12232,11 @@ module OneM2M_Testcases { var RequestPrimitive v_request; var template RequestPrimitive v_containerCreateRequest := m_createContainer_noResourceName; var template RequestPrimitive v_updateRequest := m_updateGroupBase; - var template RequestPrimitive v_createAcp := m_createAcp("NotInitialized", "MyACP", -, int61); //c_CUDNDi + var template RequestPrimitive v_createAcp := m_createAcp("NotInitialized", "MyAcp", -, int61); //c_CUDNDi // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -11458,8 +12250,8 @@ module OneM2M_Testcases { v_acpIndex := f_cse_createResource(int1, v_createAcp, v_aeIndex); // AE child resource v_containerCreateRequest.primitiveContent.container.accessControlPolicyIDs := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)}; v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource - v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource - v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource)}, omit, int3), v_aeIndex); + v_containerIndex_2 := f_cse_createResource(int3, v_containerCreateRequest, v_aeIndex); // AE child resource + v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource)}, omit, int3, -, - , -), v_aeIndex); v_updateRequest.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)}; v_request := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest); // creating group @@ -11471,18 +12263,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5105))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Update failed due to lack of privilege"); + setverdict(pass, __SCOPE__ & ": Update failed due to lack of privilege"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error update successful while doesn't have privileges for retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error update successful while doesn't have privileges for retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); } } @@ -11529,21 +12321,21 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource created successfully"); + setverdict(pass, __SCOPE__ & ": Resource created successfully"); if(not match({v_memberID}, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){ - setverdict(fail, testcasename(), ": Error, presence of duplicate member IDs "); + setverdict(fail, __SCOPE__, ": Error, presence of duplicate member IDs "); } if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs) != 1) { - setverdict(fail, testcasename() & ": Error, wrong number of memberIDs attribute"); + setverdict(fail, __SCOPE__ & ": Error, wrong number of memberIDs attribute"); } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -11588,22 +12380,22 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource created successfully"); + setverdict(pass, __SCOPE__ & ": Resource created successfully"); if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated)){ - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated == false){ - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not correct"); } } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource" ); + setverdict(fail, __SCOPE__ & ": No answer while creating resource" ); } } @@ -11649,33 +12441,33 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource created successfully"); + setverdict(pass, __SCOPE__ & ": Resource created successfully"); // check for memberTypeValidated if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated)){ - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated == false){ - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not correct"); } } // check for memberType (MIXED) if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberType)){ - setverdict(fail, testcasename(), ": Error, memberType attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberType attribute not provided"); } else { - if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberType != int0){ //Mixed is int0 in release 2 and int24 in release 1 - setverdict(fail, testcasename(), ": Error, memberType attribute not correct"); + if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberType != int0){ + setverdict(fail, __SCOPE__, ": Error, memberType attribute not correct"); } } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -11715,7 +12507,7 @@ module OneM2M_Testcases { v_containerIndex := f_cse_createResource(int3, m_createContainer("NotInitialized", "MyContainer"), v_aeIndex); v_groupIndex := f_cse_createResource(int9, m_createGroupBase, v_aeIndex); v_memberIDs := {f_getResourceId(vc_resourcesList[v_groupIndex].resource), f_getResourceId(vc_resourcesList[v_containerIndex].resource)}; - v_createRequest := valueof(m_createGroup(2, v_memberIDs, omit, int3, int2)); //Member type is set to container and consistencyStrategy is set to ABANDON GROUP + v_createRequest := valueof(m_createGroup(2, v_memberIDs, omit, int3, int2, -, -)); //Member type is set to container and consistencyStrategy is set to ABANDON GROUP v_createRequest := f_getCreateRequestPrimitive(int9, v_createRequest, v_aeIndex); // Test Body @@ -11724,18 +12516,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int6011))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": unsuccessful validation of the resource type during the creation of the group"); + setverdict(pass, __SCOPE__ & ": unsuccessful validation of the resource type during the creation of the group"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error create succesfull while the operation should be aborted"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error create succesfull while the operation should be aborted"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -11776,7 +12568,7 @@ module OneM2M_Testcases { v_containerIndex := f_cse_createResource(int3, m_createContainer("NotInitialized", "MyContainer"), v_aeIndex); v_groupIndex := f_cse_createResource(int9, m_createGroupBase, v_aeIndex); v_memberIDs := {f_getResourceId(vc_resourcesList[v_groupIndex].resource), f_getResourceId(vc_resourcesList[v_containerIndex].resource)}; - v_createRequest := valueof(m_createGroup(2, v_memberIDs, omit, int3, omit)); //Member type is set to container and consistencyStrategy is set to ABANDON MEMBER (default value) + v_createRequest := valueof(m_createGroup(2, v_memberIDs, omit, int3, -, -, -)); //Member type is set to container and consistencyStrategy is set to ABANDON MEMBER (default value) v_createRequest := f_getCreateRequestPrimitive(int9, v_createRequest, v_aeIndex); // Test Body @@ -11785,32 +12577,32 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource created successfully"); + setverdict(pass, __SCOPE__ & ": Resource created successfully"); // check for memberTypeValidated if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated)){ - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated == false){ - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not correct"); } } // check for membersId if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){ - setverdict(fail, testcasename(), ": Error, memberIDs attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not provided"); } else { if(not match({f_getResourceId(vc_resourcesList[v_containerIndex].resource)}, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){ - setverdict(fail, testcasename(), ": Error, memberIDs attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not correct"); } } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -11840,6 +12632,7 @@ module OneM2M_Testcases { var RequestPrimitive v_updateRequest := valueof(m_updateGroupBase); var XSD.AnyURI v_memberId_1; var XSD.AnyURI v_memberId_2; + var PrimitiveContent v_primitiveContentRetrievedResource; // Test control @@ -11854,7 +12647,7 @@ module OneM2M_Testcases { v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource v_memberId_1 := f_getResourceId(vc_resourcesList[v_containerIndex_1].resource); v_memberId_2 := f_getResourceId(vc_resourcesList[v_containerIndex_2].resource); - v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1, v_memberId_2}, omit, int3), v_aeIndex); // AE child resource + v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1, v_memberId_2}, omit, int3, -, -, -), v_aeIndex); // AE child resource v_updateRequest.primitiveContent.group_.memberIDs := {v_memberId_2, v_memberId_2}; v_updateRequest := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest); @@ -11865,30 +12658,43 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": update successful"); + setverdict(pass, __SCOPE__ & ": update successful"); // check for membersId if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){ - setverdict(fail, testcasename(), ": Error, memberIDs attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not provided"); } else { if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs) != 1) { - setverdict(fail, testcasename() & ": Error, wrong number of memberIDs attribute"); + setverdict(fail, __SCOPE__ & ": Error, wrong number of memberIDs attribute"); } if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0] != v_memberId_2){ - setverdict(fail, testcasename(), ": Error, memberIDs attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not correct"); } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource"); + setverdict(fail, __SCOPE__ & ": Error while updating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex); + if(getverdict == pass){ + if(ischosen(v_primitiveContentRetrievedResource.group_)){ + if(v_primitiveContentRetrievedResource.group_.memberIDs[0] != v_memberId_2){ + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not updated"); + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -11911,6 +12717,7 @@ module OneM2M_Testcases { var integer v_containerIndex_2 := -1; var integer v_groupIndex := -1; var RequestPrimitive v_updateRequest := valueof(m_updateGroupBase); + var PrimitiveContent v_primitiveContentRetrievedResource; // Test control @@ -11923,7 +12730,7 @@ module OneM2M_Testcases { v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource - v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource)}, omit, int3), v_aeIndex); + v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource)}, omit, int3, -, -, -), v_aeIndex); v_updateRequest.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)}; v_updateRequest := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest); @@ -11934,26 +12741,39 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": update successful"); + setverdict(pass, __SCOPE__ & ": update successful"); if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated)) { - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated == false) { - setverdict(fail, testcasename(), ": Error, memberTypeValidated wrong value"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated wrong value"); } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource"); + setverdict(fail, __SCOPE__ & ": Error while updating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex); + if(getverdict == pass){ + if(ischosen(v_primitiveContentRetrievedResource.group_)){ + if(v_primitiveContentRetrievedResource.group_.memberTypeValidated == false){ + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not updated"); + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -11978,6 +12798,7 @@ module OneM2M_Testcases { var integer v_subGroupIndex := -1; var XSD.AnyURI v_memberId_1; var XSD.AnyURI v_memberId_2; + var PrimitiveContent v_primitiveContentRetrievedResource; // Test control @@ -11992,7 +12813,7 @@ module OneM2M_Testcases { v_subGroupIndex := f_cse_createResource(int9, m_createGroupBase, v_aeIndex); v_memberId_1 := f_getResourceId(vc_resourcesList[v_containerIndex].resource); v_memberId_2 := f_getResourceId(vc_resourcesList[v_subGroupIndex].resource); - v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1}, omit, int3, int3), v_aeIndex); //Member type is set to Container (int3) and consistencyStrategy is set to MIXED (int3) + v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1}, omit, int3, int3, -, -), v_aeIndex); //Member type is set to Container (int3) and consistencyStrategy is set to MIXED (int3) v_updateRequest.primitiveContent.group_.memberIDs := {v_memberId_1, v_memberId_2}; v_updateRequest := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest); @@ -12003,38 +12824,55 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": update successful"); + setverdict(pass, __SCOPE__ & ": update successful"); //memberTypeValidated attribute set to FALSE if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated)) { - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated != false) { - setverdict(fail, testcasename(), ": Error, memberTypeValidated must be FALSE"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated must be FALSE"); } } //memberType attribute set to MIXED if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberType)) { - setverdict(fail, testcasename(), ": Error, memberType attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberType attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberType != int0) { //Mixed is int0 in release 2 and int24 in release 1 - setverdict(fail, testcasename(), ": Error, memberType was not set to MIXED"); + setverdict(fail, __SCOPE__, ": Error, memberType was not set to MIXED"); } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex); + if(getverdict == pass){ + if(ischosen(v_primitiveContentRetrievedResource.group_)){ + if(v_primitiveContentRetrievedResource.group_.memberTypeValidated == false){ + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not updated"); + } + + if(v_primitiveContentRetrievedResource.group_.memberType != int0){ + setverdict(fail, __SCOPE__, ": Error, memberType attribute not set to MIXED"); + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -12059,6 +12897,7 @@ module OneM2M_Testcases { var integer v_subGroupIndex := -1; var XSD.AnyURI v_memberId_1; var XSD.AnyURI v_memberId_2; + var PrimitiveContent v_primitiveContentRetrievedResource; // Test control @@ -12085,40 +12924,57 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": update successful"); + setverdict(pass, __SCOPE__ & ": update successful"); //memberTypeValidated attribute set to TRUE if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated)) { - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated != true) { - setverdict(fail, testcasename(), ": Error, memberTypeValidated must be TRUE"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated must be TRUE"); } } //memberIDs attribute set to v_memberID1 if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){ - setverdict(fail, testcasename(), ": Error, memberIDs attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not provided"); } else { if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs) != 1) { - setverdict(fail, testcasename() & ": Error, wrong number of memberIDs attribute"); + setverdict(fail, __SCOPE__ & ": Error, wrong number of memberIDs attribute"); } if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0] != v_memberId_1){ - setverdict(fail, testcasename(), ": Error, memberIDs attribute not correct"); + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not correct"); } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource"); + setverdict(fail, __SCOPE__ & ": Error while updating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex); + if(getverdict == pass){ + if(ischosen(v_primitiveContentRetrievedResource.group_)){ + if(v_primitiveContentRetrievedResource.group_.memberTypeValidated == false){ + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not updated"); + } + + if(v_primitiveContentRetrievedResource.group_.memberIDs[0] != v_memberId_1){ + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not correct"); + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -12168,18 +13024,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int6011))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": unsuccessful validation of the resource type during the creation of the group"); + setverdict(pass, __SCOPE__ & ": unsuccessful validation of the resource type during the creation of the group"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error create succesfull while the operation should be aborted"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error create succesfull while the operation should be aborted"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -12209,6 +13065,7 @@ module OneM2M_Testcases { var integer v_groupIndex, v_containerIndex_1, v_containerIndex_2, v_containerIndex_3 := -1; var ListOfURIs v_memberIDs; var template RequestPrimitive v_createRequest; + var PrimitiveContent v_primitiveContentRetrievedResource; var template RequestPrimitive v_updateRequest := m_updateGroupBase; var template RequestPrimitive v_createMember; @@ -12243,17 +13100,31 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int6010))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": operation is not allowed"); + setverdict(pass, __SCOPE__ & ": operation is not allowed"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Error update successful while maxNrOfMembers has exceeded"); + } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex); + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrievedResource.group_)) { + if(v_primitiveContentRetrievedResource.group_.memberIDs == v_memberIDs){ + setverdict(fail, __SCOPE__ & ": Error: MemberIDs attribute updated") + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -12278,6 +13149,7 @@ module OneM2M_Testcases { var integer v_groupIndex := -1; var ListOfURIs v_memberIDs; var XSD.PositiveInteger v_maxNrOfMembers:= 1; + var PrimitiveContent v_primitiveContentRetrievedResource; v_updateRequest.primitiveContent.group_.maxNrOfMembers := v_maxNrOfMembers; @@ -12303,21 +13175,31 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int6010))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": max number of member exceeded"); + setverdict(pass, __SCOPE__ & ": max number of member exceeded"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error update successful while operation is not allowed"); + setverdict(fail, __SCOPE__ & ": Error update successful while operation is not allowed"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex); + if(getverdict == pass){ + //Check that the resource has NOT been udpated + if(ischosen(v_primitiveContentRetrievedResource.group_)) { + if(v_primitiveContentRetrievedResource.group_.maxNrOfMembers == v_maxNrOfMembers){ + setverdict(fail, __SCOPE__ & ": Error: maxNrOfMembers attribute updated") + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -12353,6 +13235,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createGroupBase; var template RequestPrimitive v_updateRequest := m_updateGroupBase; var template RequestPrimitive v_createMember; + var PrimitiveContent v_primitiveContentRetrievedResource; // Test control @@ -12393,32 +13276,45 @@ module OneM2M_Testcases { tc_ac.stop; if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated)) { - setverdict(fail, testcasename(), ": Error, memberTypeValidated attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not provided"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberTypeValidated == false) { if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs) != 2) { - setverdict(fail, testcasename() & ": Error, wrong number of memberIDs attribute"); + setverdict(fail, __SCOPE__ & ": Error, wrong number of memberIDs attribute"); } else { if(v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[0] == c_memberResourceAddress1 and v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs[1] == c_memberResourceAddress2) { - setverdict(pass, testcasename() & ": update successful"); + setverdict(pass, __SCOPE__ & ": update successful"); } else { - setverdict(fail, testcasename(), ": Error, wrong memberIDs"); + setverdict(fail, __SCOPE__, ": Error, wrong memberIDs"); } } } else { - setverdict(fail, testcasename(), ": Error, memberTypeValidated must be set to FALSE"); + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated must be set to FALSE"); } } } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex); + if(getverdict == pass){ + if(ischosen(v_primitiveContentRetrievedResource.group_)){ + if(v_primitiveContentRetrievedResource.group_.memberTypeValidated != false){ + setverdict(fail, __SCOPE__, ": Error, memberTypeValidated attribute not updated"); + } + + if((v_primitiveContentRetrievedResource.group_.memberIDs[0] != c_memberResourceAddress1) and (v_primitiveContentRetrievedResource.group_.memberIDs[1] != c_memberResourceAddress2)){ + setverdict(fail, __SCOPE__, ": Error, memberIDs attribute not correct"); + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -12502,10 +13398,10 @@ module OneM2M_Testcases { } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -12525,25 +13421,25 @@ module OneM2M_Testcases { * @verdict */ testcase TC_CSE_GMG_003_CRE() runs on CseTester system CseSystem { //Create - f_CSE_GMG_003(m_createContainerBase); + f_CSE_GMG_003(m_createContainerBase, int2001); }//end TC_CSE_GMG_003_CRE testcase TC_CSE_GMG_003_UPD() runs on CseTester system CseSystem { //Update var template RequestPrimitive v_updateRequest := m_updateContainerBase; var Labels v_labels_1:= {"VALUE_1"}; v_updateRequest.primitiveContent.container.labels := v_labels_1; - f_CSE_GMG_003(v_updateRequest); + f_CSE_GMG_003(v_updateRequest, int2004); }//end TC_CSE_GMG_003_UPD testcase TC_CSE_GMG_003_RET() runs on CseTester system CseSystem { //Retrieve - f_CSE_GMG_003(m_retrieveResource("Temporary", "Temporary")); + f_CSE_GMG_003(m_retrieveResource("Temporary", "Temporary"), int2000); }//end TC_CSE_GMG_003_RET testcase TC_CSE_GMG_003_DEL() runs on CseTester system CseSystem { //Delete - f_CSE_GMG_003(m_deleteRequest("Temporary")); + f_CSE_GMG_003(m_deleteRequest("Temporary"), int2002); }//end TC_CSE_GMG_003_DEL - function f_CSE_GMG_003(template RequestPrimitive p_requestPrimitive) runs on CseTester { + function f_CSE_GMG_003(template RequestPrimitive p_requestPrimitive, in ResponseStatusCode p_responseStatusCode) runs on CseTester { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -12558,7 +13454,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -12584,27 +13480,31 @@ module OneM2M_Testcases { mcaPort.send(m_request(valueof(p_requestPrimitive))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(p_responseStatusCode))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": creation successfull by using fanOutPoint in group resource"); + setverdict(pass, __SCOPE__ & ": creation successfull by using fanOutPoint in group resource"); if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse attribute not provided"); } else { for(i:=0; i<lengthof(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list); i := i+1){ if(not match(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list[i], mw_responsePrimitiveOK)){ - setverdict(fail, testcasename(), ": Error, one responsePrimitve of aggregatedResponse_list is not successful"); + setverdict(fail, __SCOPE__, ": Error, one responsePrimitve of aggregatedResponse_list is not successful"); } } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -12657,7 +13557,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -12685,22 +13585,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Update failed due to lack of privilege"); + setverdict(pass, __SCOPE__ & ": Update failed due to lack of privilege"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error operation successful while doesn't have privileges"); - } - [] mcaPort.receive{ - tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error operation successful while doesn't have privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation"); } } @@ -12721,25 +13617,25 @@ module OneM2M_Testcases { * */ testcase TC_CSE_GMG_001_CRE() runs on CseTester system CseSystem { //Create - f_CSE_GMG_001(m_createContainerBase); + f_CSE_GMG_001(m_createContainerBase, int2001); }//end TC_CSE_GMG_001_CRE testcase TC_CSE_GMG_001_UPD() runs on CseTester system CseSystem { //Update var template RequestPrimitive v_updateRequest := m_updateContainerBase; var Labels v_labels_1:= {"VALUE_1"}; v_updateRequest.primitiveContent.container.labels := v_labels_1; - f_CSE_GMG_001(v_updateRequest); + f_CSE_GMG_001(v_updateRequest, int2004); }//end TC_CSE_GMG_001_UPD testcase TC_CSE_GMG_001_RET() runs on CseTester system CseSystem { //Retrieve - f_CSE_GMG_001(m_retrieveResource("Temporary", "Temporary")); + f_CSE_GMG_001(m_retrieveResource("Temporary", "Temporary"), int2000); }//end TC_CSE_GMG_001_RET testcase TC_CSE_GMG_001_DEL() runs on CseTester system CseSystem { //Delete - f_CSE_GMG_001(m_deleteRequest("Temporary")); + f_CSE_GMG_001(m_deleteRequest("Temporary"), int2002); }//end TC_CSE_GMG_001_DEL - function f_CSE_GMG_001(template RequestPrimitive p_requestPrimitive) runs on CseTester { + function f_CSE_GMG_001(template RequestPrimitive p_requestPrimitive, in ResponseStatusCode p_responseStatusCode) runs on CseTester { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -12754,7 +13650,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -12780,27 +13676,31 @@ module OneM2M_Testcases { mcaPort.send(m_request(valueof(p_requestPrimitive))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(p_responseStatusCode))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": creation successfull by using fanOutPoint in group resource"); + setverdict(pass, __SCOPE__ & ": creation successfull by using fanOutPoint in group resource"); if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse attribute not provided"); } else { for(i:=0; i<lengthof(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list); i := i+1){ if(not match(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list[i], mw_responsePrimitiveOK)){ - setverdict(fail, testcasename(), ": Error, one responsePrimitve of aggregatedResponse_list is not successful"); + setverdict(fail, __SCOPE__, ": Error, one responsePrimitve of aggregatedResponse_list is not successful"); } } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -12853,7 +13753,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -12881,22 +13781,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Update failed due to lack of privilege"); + setverdict(pass, __SCOPE__ & ": Update failed due to lack of privilege"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error operation successful while doesn't have privileges"); - } - [] mcaPort.receive{ - tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error operation successful while doesn't have privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation"); } } @@ -12920,7 +13816,7 @@ module OneM2M_Testcases { var template PrimitiveContent v_contentResponse; v_contentResponse.container := mw_contentContainer_rc1; - f_CSE_GMG_CRE_008(m_createContainerBase, v_contentResponse); + f_CSE_GMG_CRE_008(m_createContainerBase, v_contentResponse, int2001); }//end TC_CSE_GMG_CRE_008_CRE testcase TC_CSE_GMG_CRE_008_UPD() runs on CseTester system CseSystem { //Update @@ -12931,34 +13827,36 @@ module OneM2M_Testcases { v_contentResponse.aE.labels := ?; v_updateRequest.primitiveContent.aE.labels := v_labels_1; - f_CSE_GMG_CRE_008(v_updateRequest, v_contentResponse); + f_CSE_GMG_CRE_008(v_updateRequest, v_contentResponse, int2004); }//end TC_CSE_GMG_CRE_008_UPD testcase TC_CSE_GMG_CRE_008_RET() runs on CseTester system CseSystem { //Retrieve var template PrimitiveContent v_contentResponse; v_contentResponse.aE := mw_contentAeBase; - f_CSE_GMG_CRE_008(m_retrieveResource("Temporary", "Temporary"), v_contentResponse); + f_CSE_GMG_CRE_008(m_retrieveResource("Temporary", "Temporary"), v_contentResponse, int2000); }//end TC_CSE_GMG_CRE_008_RET testcase TC_CSE_GMG_CRE_008_DEL() runs on CseTester system CseSystem { //Delete var template PrimitiveContent v_contentResponse; v_contentResponse.aE := mw_contentAeBase;// TODO see with wath should it be matched - f_CSE_GMG_CRE_008(m_deleteRequest("Temporary"), v_contentResponse); + f_CSE_GMG_CRE_008(m_deleteRequest("Temporary"), v_contentResponse, int2002); }//end TC_CSE_GMG_CRE_008_DEL - function f_CSE_GMG_CRE_008(template RequestPrimitive p_requestPrimitive, template PrimitiveContent p_contentResponse) runs on CseTester { + function f_CSE_GMG_CRE_008(template RequestPrimitive p_requestPrimitive, template PrimitiveContent p_contentResponse, in ResponseStatusCode p_responseStatusCode) runs on CseTester { //Local constants const integer c_numberOfResponsePrimitive := 2; // Local variables var MsgIn v_response; - var integer v_aeIndex_1 := -1; - var integer v_aeIndex_2 := -1; + var integer v_aeIndex := -1; + var integer v_containerIndex_1 := -1; + var integer v_containerIndex_2 := -1; var integer v_groupIndex := -1; var ListOfURIs v_memberIDs; var integer i; + var RequestPrimitive v_createRequest := valueof(m_createContentInstance("NotInitialized", "Value1")); // Test control @@ -12968,45 +13866,50 @@ module OneM2M_Testcases { // Test adapter configuration // Preamble - v_aeIndex_1 := f_cse_preamble_registerAe(-, -); //c_CRUDNDi - v_aeIndex_2 := f_cse_createResource(int2, m_createAe(PX_APP_ID, -, PX_AE2_ID_STEM, "MyAe2", omit), -1); // AE2 is registred - v_memberIDs := {f_getResourceId(vc_resourcesList[v_aeIndex_1].resource), f_getResourceId(vc_resourcesList[v_aeIndex_2].resource)}; - v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int2), -1); + v_aeIndex := f_cse_preamble_registerAe(-, -); //c_CRUDNDi + v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource + v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource + v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)}; + v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int3, -, -), v_aeIndex); // AE child resource p_requestPrimitive.to_ := f_getResourceAddress(v_groupIndex) & "/fopt"; - p_requestPrimitive.from_ := f_getOriginator(v_aeIndex_1); //TODO see if it is correct or if we have to use PX_SUPER_ADMIN + p_requestPrimitive.from_ := f_getOriginator(v_aeIndex); // Test Body mcaPort.send(m_request(valueof(p_requestPrimitive))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(p_responseStatusCode))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": creation successfull by using fanOutPoint in group resource"); + setverdict(pass, __SCOPE__ & ": creation successfull by using fanOutPoint in group resource"); if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse attribute not provided"); } else{ if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list) != c_numberOfResponsePrimitive){ - setverdict(fail, testcasename(), ": Error, length of aggregatedResponse is not valid"); + setverdict(fail, __SCOPE__, ": Error, length of aggregatedResponse is not valid"); } else{ for(i:=0; i<c_numberOfResponsePrimitive; i:=i+1){ if(not match(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list[i].primitiveContent, p_contentResponse)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse doesn't match with template expected"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse doesn't match with template expected"); } } } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -13044,7 +13947,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -13057,46 +13960,50 @@ module OneM2M_Testcases { v_aeIndex_1 := f_cse_preamble_registerAe(-, -); //c_CRUDNDi v_aeIndex_2 := f_cse_createResource(int2, m_createAe(PX_APP_ID, -, PX_AE2_ID_STEM, "MyAe2", omit), -1); // AE2 is registred v_acpIndex := f_cse_createResource(int1, v_createAcp, -1); // AE child resource - v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex_1); // AE1 child resource - v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex_2); // AE2 child resource + v_containerIndex_1 := f_cse_createResource(int3, m_createContainerBase, v_aeIndex_1); // AE1 child resource + v_containerIndex_2 := f_cse_createResource(int3, m_createContainerBase, v_aeIndex_2); // AE2 child resource v_memberIDs := {f_getResourceId(vc_resourcesList[v_aeIndex_1].resource), f_getResourceId(vc_resourcesList[v_aeIndex_2].resource)}; v_membersAcpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)}; - v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int2, -, v_membersAcpIds), -1); + v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int2, -, v_membersAcpIds, -), -); - v_createRequest.to_ := f_getResourceAddress(v_groupIndex) & "/fopt" & "/myCon"; - v_createRequest.from_ := f_getOriginator(v_aeIndex_1); //TODO see if it is correct or if we have to use PX_SUPER_ADMIN + v_createRequest.to_ := f_getResourceAddress(v_groupIndex) & "/" & c_resourceShortNameFanOutPoint & "/" & c_defaultContainerResourceName; + v_createRequest.from_ := f_getOriginator(v_groupIndex); //TODO see if it is correct or if we have to use PX_SUPER_ADMIN // Test Body mcaPort.send(m_request(v_createRequest)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": creation successfull by using fanOutPoint in group resource"); + setverdict(pass, __SCOPE__ & ": creation successfull by using fanOutPoint in group resource"); if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse attribute not provided"); } else{ if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list) != c_numberOfResponsePrimitive){ - setverdict(fail, testcasename(), ": Error, length of aggregatedResponse is not valid"); + setverdict(fail, __SCOPE__, ": Error, length of aggregatedResponse is not valid"); } else{ for(i:=0; i<c_numberOfResponsePrimitive; i:=i+1){ if(not match(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list[i].primitiveContent, v_contentResponse)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse doesn't match with template expected"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse doesn't match with template expected"); } } } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -13122,7 +14029,7 @@ module OneM2M_Testcases { // Local variables var MsgIn v_response; - var integer v_aeIndex_1, v_aeIndex_2, v_acpIndex, v_containerIndex_1, v_containerIndex_2, v_groupIndex := -1; + var integer v_aeIndex_1, v_aeIndex_2, v_acpIndex, v_containerIndex_1, v_containerIndex_2, v_groupIndex, v_contentInstanceIndex_1, v_contentInstanceIndex_2 := -1; var integer i; var ListOfURIs v_memberIDs; var ListOfURIs v_membersAcpIds; @@ -13134,7 +14041,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -13147,44 +14054,50 @@ module OneM2M_Testcases { v_aeIndex_1 := f_cse_preamble_registerAe(-, -); //c_CRUDNDi v_aeIndex_2 := f_cse_createResource(int2, m_createAe(PX_APP_ID, -, PX_AE2_ID_STEM, "MyAe2", omit), -1); // AE2 is registred v_acpIndex := f_cse_createResource(int1, v_createAcp, -1); // AE child resource - v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex_1); // AE1 child resource - v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex_2); // AE2 child resource + v_containerIndex_1 := f_cse_createResource(int3, m_createContainerBase, v_aeIndex_1); // AE1 child resource + v_containerIndex_2 := f_cse_createResource(int3, m_createContainerBase, v_aeIndex_2); // AE2 child resource + v_contentInstanceIndex_1 := f_cse_createResource(int4, m_createContentInstanceBase, v_containerIndex_1); // Container_1 child resource + v_contentInstanceIndex_2 := f_cse_createResource(int4, m_createContentInstanceBase, v_containerIndex_2); // Container_2 child resource v_memberIDs := {f_getResourceId(vc_resourcesList[v_aeIndex_1].resource), f_getResourceId(vc_resourcesList[v_aeIndex_2].resource)}; v_membersAcpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)}; v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int2, -, v_membersAcpIds), -1); - v_fanoutPointAddress := f_getResourceAddress(v_groupIndex) & "/fopt" & "/myCon" & "/" & c_resourceShortNameLatest; + v_fanoutPointAddress := f_getResourceAddress(v_groupIndex) & "/" & c_resourceShortNameFanOutPoint & "/" & c_defaultContainerResourceName & "/" & c_resourceShortNameLatest; // Test Body mcaPort.send(m_request(m_retrieveResource(v_fanoutPointAddress, f_getOriginator(v_aeIndex_1)))); //TODO see if it is correct or if we have to use PX_SUPER_ADMIN tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": creation successfull by using fanOutPoint in group resource"); + setverdict(pass, __SCOPE__ & ": creation successfull by using fanOutPoint in group resource"); if(not ispresent(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse attribute not provided"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse attribute not provided"); } else{ if(lengthof(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list) != c_numberOfResponsePrimitive){ - setverdict(fail, testcasename(), ": Error, length of aggregatedResponse is not valid"); + setverdict(fail, __SCOPE__, ": Error, length of aggregatedResponse is not valid"); } else{ for(i:=0; i<c_numberOfResponsePrimitive; i:=i+1){ if(not match(v_response.primitive.responsePrimitive.primitiveContent.aggregatedResponse.responsePrimitive_list[i].primitiveContent, v_contentResponse)){ - setverdict(fail, testcasename(), ": Error, aggregatedResponse doesn't match with template expected"); + setverdict(fail, __SCOPE__, ": Error, aggregatedResponse doesn't match with template expected"); } } } } } + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { + tc_ac.stop; + setverdict(fail, __SCOPE__ & ": Wrong response status code"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } @@ -13234,18 +14147,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responseDiscovery)){ tc_ac.stop; - setverdict(pass, testcasename() & ": URI List Representation available"); + setverdict(pass, __SCOPE__ & ": URI List Representation available"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong responseStatusCode while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -13293,23 +14206,23 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response { tc_ac.stop; if(sizeof(v_response.primitive.responsePrimitive.primitiveContent.uRIList) == 0){ - setverdict(pass, testcasename() & ": No Content is present"); + setverdict(pass, __SCOPE__ & ": No Content is present"); } else { - setverdict(fail, testcasename() & ": Wrong content available in URIList element"); + setverdict(fail, __SCOPE__ & ": Wrong content available in URIList element"); } } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong responseStatusCode while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -13355,21 +14268,21 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response { tc_ac.stop; if (f_isNonHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[0])) { - setverdict(pass, testcasename() & ": Non-hierarchical address form present in URIList element"); + setverdict(pass, __SCOPE__ & ": Non-hierarchical address form present in URIList element"); } else { - setverdict(fail, testcasename() & ": Non-hierarchical address form absent in URIList representation"); + setverdict(fail, __SCOPE__ & ": Non-hierarchical address form absent in URIList representation"); } } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong responseStatusCode while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -13399,7 +14312,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - log(testcasename() & ":AccessControlPolicy support is required for executing this test case"); + log(__SCOPE__ & ":INFO: AccessControlPolicy support is required for executing this test case"); stop; } @@ -13421,18 +14334,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) { tc_ac.stop; - setverdict(pass, testcasename() & ": Access denied to discovery operation for resource " & f_getResourceAddress(v_resourceIndex)); + setverdict(pass, __SCOPE__ & ": Access denied to discovery operation for resource " & f_getResourceAddress(v_resourceIndex)); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code while discovering " & f_getResourceAddress(v_resourceIndex) & " without having privileges"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Discovering " & f_getResourceAddress(v_resourceIndex) & " without having privileges"); + setverdict(fail, __SCOPE__ & ": Discovering " & f_getResourceAddress(v_resourceIndex) & " without having privileges"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while discovering resource"); + setverdict(fail, __SCOPE__ & ": No answer while discovering resource"); } } @@ -13483,18 +14396,18 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource not found"); + setverdict(pass, __SCOPE__ & ": Resource not found"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -13543,18 +14456,18 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4102))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Contents Unacceptable"); + setverdict(pass, __SCOPE__ & ": Contents Unacceptable"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response status code while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code while retrieving resource"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Wrong response while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Wrong response while retrieving resource"); } [] tc_ac.timeout { - setverdict(fail, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -13608,21 +14521,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5203))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": <Subscription> Resource not subscribable"); + setverdict(pass, __SCOPE__ & ": <Subscription> Resource not subscribable"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while subscribing a ressource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Subsciption successful whereas <Subscription> resource is not subscribable"); + setverdict(fail, __SCOPE__ & ": Subsciption successful whereas <Subscription> resource is not subscribable"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_resourceIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -13663,21 +14585,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5203))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": <Subscription> Resource not subscribable"); + setverdict(pass, __SCOPE__ & ": <Subscription> Resource not subscribable"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while subscribing a ressource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Subsciption successful whereas <Subscription> resource is not subscribable"); + setverdict(fail, __SCOPE__ & ": Subsciption successful whereas <Subscription> resource is not subscribable"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_contentInstanceResourceIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -13704,7 +14635,7 @@ module OneM2M_Testcases { // Test control if(not(PICS_ACP_SUPPORT)) { - setverdict(inconc, testcasename() & ": AccessControlPolicy support is required to run this test case"); + setverdict(inconc, __SCOPE__ & ": AccessControlPolicy support is required to run this test case"); stop; } @@ -13726,21 +14657,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": No privilege for subscribing to the resource"); + setverdict(pass, __SCOPE__ & ": No privilege for subscribing to the resource"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while subscribing a ressource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Subsciption successful whereas it doesn't have privilege"); + setverdict(fail, __SCOPE__ & ": Subsciption successful whereas it doesn't have privilege"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -13783,21 +14723,30 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5204))) -> value v_response { //SUBSCRIPTION_VERIFICATION_INITIATION_FAILED tc_ac.stop; - setverdict(pass, testcasename() & ": OK : Subscription verification initiation failed"); + setverdict(pass, __SCOPE__ & ": OK : Subscription verification initiation failed"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while subscribing a ressource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Subsciption successful whereas subsciption verification failed"); + setverdict(fail, __SCOPE__ & ": Subsciption successful whereas subsciption verification failed"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -13819,7 +14768,7 @@ module OneM2M_Testcases { var MsgIn v_response; var integer v_aeIndex := -1; var template RequestPrimitive v_createRequest := m_createSubscriptionBase; - var template RequestPrimitive v_request; + var RequestPrimitive v_request; var CseTester v_notifyHandler; var integer v_ae2Index := -1; @@ -13838,27 +14787,36 @@ module OneM2M_Testcases { // Test Body v_request := f_getCreateRequestPrimitive(int23, v_createRequest, v_aeIndex);//Subscription - mcaPort.send(m_request(valueof(v_request))); + mcaPort.send(m_request(v_request)); tc_ac.start; alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4101))) -> value v_response { //SUBSCRIPTION_CREATOR_HAS_NO_PRIVILEGE tc_ac.stop; - setverdict(pass, testcasename() & ": OK : Subscription creator has no privilege"); + setverdict(pass, __SCOPE__ & ": OK : Subscription creator has no privilege"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while subscribing a ressource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Subsciption successful whereas subsciption creator has no privilege"); + setverdict(fail, __SCOPE__ & ": Subsciption successful whereas subsciption creator has no privilege"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -13880,7 +14838,7 @@ module OneM2M_Testcases { var MsgIn v_response; var integer v_aeIndex := -1; var template RequestPrimitive v_createRequest := m_createSubscriptionBase; - var template RequestPrimitive v_request; + var RequestPrimitive v_request; var CseTester v_notifyHandler; var integer v_ae2Index := -1; @@ -13899,27 +14857,36 @@ module OneM2M_Testcases { // Test Body v_request := f_getCreateRequestPrimitive(int23, v_createRequest, v_aeIndex);//Subscription - mcaPort.send(m_request(valueof(v_request))); + mcaPort.send(m_request(v_request)); tc_ac.start; alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int5205))) -> value v_response { //SUBSCRIPTION_CREATOR_HAS_NO_PRIVILEGE tc_ac.stop; - setverdict(pass, testcasename() & ": OK : Subscription creator has no privilege"); + setverdict(pass, __SCOPE__ & ": OK : Subscription creator has no privilege"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while subscribing a ressource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Subsciption successful whereas subsciption creator has no privilege"); + setverdict(fail, __SCOPE__ & ": Subsciption successful whereas subsciption creator has no privilege"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource"); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is NOT present + if(f_isResourceNotPresent(v_aeIndex, f_getResourceName(v_request.primitiveContent))){ + setverdict(pass, __SCOPE__ & ":INFO: Resource not created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -13978,20 +14945,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type int2 (Ae) updated successfully"); + setverdict(pass, __SCOPE__ & ": Attribute of resource type int2 (Ae) updated successfully"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while updating resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type int2 (Ae)"); } }; @@ -14007,13 +14974,13 @@ module OneM2M_Testcases { }//end group g_CSE_SUB_UPD_001 - group g_CSE_SUB_CRE_007{ + group g_CSE_SUB_CRE_005{ /** * @desc Check that the IUT sends a Notify request to the subscriber resource when eventType attribute is set to "Create_of_Direct_Child_Resource" and an create operation has been performed on the subscribed-to resource * */ - testcase TC_CSE_SUB_CRE_007() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_CRE_005() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; @@ -14053,20 +15020,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource type int3 (Container) created successfully"); + setverdict(pass, __SCOPE__ & ": Resource type int3 (Container) created successfully"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while creating resource type int3 (Container)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type int3 (Container)"); } } @@ -14077,17 +15044,17 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_CRE_007 + } // end TC_CSE_SUB_CRE_005 - }//end group g_CSE_SUB_CRE_007 + }//end group g_CSE_SUB_CRE_005 - group g_CSE_SUB_DEL_008 { + group g_CSE_SUB_DEL_002 { /** * @desc Check that the IUT sends a Notify request to the subscriber resource when eventType attribute is set to "Delete_of_Resource" and an delete operation has been performed the subscribed-to resource * */ - testcase TC_CSE_SUB_DEL_008() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_DEL_002() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -14126,22 +15093,22 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_deleteRequest)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) -> value v_response { tc_ac.stop; //Update vc_resourcesIndexToBeDeleted f_removeElementFromList (vc_resourcesIndexToBeDeleted, v_aeIndex); - setverdict(pass, testcasename() & ": resource type int2 (AE) deleted successfully"); + setverdict(pass, __SCOPE__ & ": resource type int2 (AE) deleted successfully"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type int2 (AE)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while deleting resource type int2 (AE)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type int2 (AE)"); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type int2 (AE)"); } } @@ -14153,17 +15120,17 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_DEL_008 + } // end TC_CSE_SUB_DEL_002 - }//end group g_CSE_SUB_DEL_008 + }//end group g_CSE_SUB_DEL_002 - group g_CSE_SUB_DEL_009 { + group g_CSE_SUB_DEL_003 { /** * @desc Check that the IUT sends a Notify request to the subscriber resource when eventType attribute is set to "Delete_of_Direct_Child_Resource" and an delete operation has been performed on a child resource of the subscribed-to resource * */ - testcase TC_CSE_SUB_DEL_009() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_DEL_003() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -14203,20 +15170,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_deleteRequest)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Container resource deleted successfully"); + setverdict(pass, __SCOPE__ & ": Container resource deleted successfully"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while deleting resource type int3 (Container)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type int3 (Container)"); } } @@ -14228,17 +15195,17 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_DEL_009 + } // end TC_CSE_SUB_DEL_003 - }//end group g_CSE_SUB_DEL_009 + }//end group g_CSE_SUB_DEL_003 - group g_CSE_SUB_CRE_010 { + group g_CSE_SUB_CRE_004 { /** * @desc Check that the IUT stores Originator ID in the notification creator attribute when a <SUBSCRIPTION> creation request which needs verification is received and the notificationURI is not the Originator. * */ - testcase TC_CSE_SUB_CRE_010() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_CRE_004() runs on CseTester system CseSystem { //Local variables var MsgIn v_response; var template RequestPrimitive v_request := m_createSubscriptionBase; @@ -14271,17 +15238,17 @@ module OneM2M_Testcases { // Tear down f_cf01Down(); - } // end TC_CSE_SUB_CRE_010 + } // end TC_CSE_SUB_CRE_004 - }//end group g_CSE_SUB_CRE_010 + }//end group g_CSE_SUB_CRE_004 - group g_CSE_SUB_UPD_011 { + group g_CSE_SUB_UPD_002 { /** * @desc Check that the IUT sends a Notify request to the subscriber resource when the notificationContentType attribute is set to “modified attributes†and an update operation has been performed on the subscribed-to resource * */ - testcase TC_CSE_SUB_UPD_011() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_002() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -14327,21 +15294,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type int2 (Ae) updated successfully"); + setverdict(pass, __SCOPE__ & ": Attribute of resource type int2 (Ae) updated successfully"); } - - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while updating resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type int2 (Ae)"); } } @@ -14353,16 +15319,16 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_011 - }//end group g_CSE_SUB_UPD_011 + } // end TC_CSE_SUB_UPD_002 + }//end group g_CSE_SUB_UPD_002 - group g_CSE_SUB_UPD_012 { + group g_CSE_SUB_UPD_003 { /** * @desc Check that the IUT sends a Notify request to the subscriber resource when the notificationContentType attribute is set to “ResourceID†and an update operation has been performed on the subscribed-to resource * */ - testcase TC_CSE_SUB_UPD_012() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_003() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -14405,20 +15371,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type int2 (Ae) updated successfully"); + setverdict(pass, __SCOPE__ & ": Attribute of resource type int2 (Ae) updated successfully"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while updating resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type int2 (Ae) or None notification received"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type int2 (Ae) or None notification received"); } } @@ -14428,16 +15394,16 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_012 - }//end group g_CSE_SUB_UPD_012 + } // end TC_CSE_SUB_UPD_003 + }//end group g_CSE_SUB_UPD_003 - group g_CSE_SUB_UPD_013 { + group g_CSE_SUB_UPD_004 { /** * @desc Check that the IUT decreases the expirationCounter attribute of a subscription resource when the Hosting CSE of the subscribed-to resource successfully sends the notification request to subscriber resource(s) * */ - testcase TC_CSE_SUB_UPD_013() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_004() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -14491,22 +15457,22 @@ module OneM2M_Testcases { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_retrieveContentResponse))) -> value v_response { tc_ac.stop; if(v_response.primitive.responsePrimitive.primitiveContent.subscription.expirationCounter == 2 ){ - setverdict(pass, testcasename() & ": expirationCounter has been successfully decreased by one"); + setverdict(pass, __SCOPE__ & ": expirationCounter has been successfully decreased by one"); } else{ - setverdict(fail, testcasename() & ": Error expirationCounter hasn't been decreased by one"); + setverdict(fail, __SCOPE__ & ": Error expirationCounter hasn't been decreased by one"); } } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(fail, __SCOPE__ & ": Error, resource elements provided not matching expected resource elements"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while retrieving resource"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving resource"); } } @@ -14518,17 +15484,17 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_013 + } // end TC_CSE_SUB_UPD_004 - }//end group g_CSE_SUB_UPD_013 + }//end group g_CSE_SUB_UPD_004 - group g_CSE_SUB_UPD_014 { + group g_CSE_SUB_UPD_005 { /** * @desc Check that the IUT deletes the subscription resource when the the expirationCounter meets zero * */ - testcase TC_CSE_SUB_UPD_014() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_005() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -14578,18 +15544,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Subscription Resource have been successfully deleted"); + setverdict(pass, __SCOPE__ & ": Subscription Resource have been successfully deleted"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving Subscription Resource"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; - setverdict(fail, testcasename() & ": Error Subscription Resource has not been deleted"); + setverdict(fail, __SCOPE__ & ": Error Subscription Resource has not been deleted"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving Subscription Resource"); + setverdict(fail, __SCOPE__ & ": No answer while retrieving Subscription Resource"); } } @@ -14601,17 +15567,17 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_014 + } // end TC_CSE_SUB_UPD_005 - }//end of group g_CSE_SUB_UPD_014 + }//end of group g_CSE_SUB_UPD_005 - group g_CSE_SUB_UPD_015 { + group g_CSE_SUB_UPD_009 { /** * @desc Check that the IUT sends a Notify request to the subscriber resource when the “attribute†condition tag of eventNotificationCriteria attribute is set to ATTRIBUTE_NAME and an update operation has been performed on the subscribed-to resource * */ - testcase TC_CSE_SUB_UPD_015() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_009() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var Labels v_labels_1:= {"VALUE_1"}; @@ -14656,20 +15622,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type int2 (Ae) updated successfully"); + setverdict(pass, __SCOPE__ & ": Attribute of resource type int2 (Ae) updated successfully"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while updating resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type int2 (Ae) or None notification received"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type int2 (Ae) or None notification received"); } } @@ -14681,17 +15647,17 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_015 + } // end TC_CSE_SUB_UPD_009 - }//end group g_CSE_SUB_UPD_015 + }//end group g_CSE_SUB_UPD_009 - group g_CSE_SUB_UPD_016 { + group g_CSE_SUB_UPD_006 { /** * @desc Check that the IUT doesn’t send a Notify request to the subscriber resource when the “attribute†condition tag of eventNotificationCriteria attribute is set to LIST_OF_ATTRIBUTE and doesn’t contain the ATTRIBUTE_NAME attribute updated. * */ - testcase TC_CSE_SUB_UPD_016() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_006() runs on CseTester system CseSystem { // Local variables var MsgIn v_response; var Labels v_labels_1:= {"VALUE_1"}; @@ -14729,21 +15695,25 @@ module OneM2M_Testcases { }; // Test Body - v_notifyHandler.start(f_CSE_SUB_UPD_016()); // check that no notification is received + v_notifyHandler.start(f_CSE_SUB_UPD_006()); // check that no notification is received mcaPort.send(m_request(v_request)); tc_ac.start; alt { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { + tc_ac.stop; + setverdict(pass, __SCOPE__ & ": Attribute of resource type int2 (Ae) updated successfully"); + } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Attribute of resource type int2 (Ae) updated successfully"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Error while updating resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while updating resource type int2 (Ae) or None notification received"); + setverdict(fail, __SCOPE__ & ": No answer while updating resource type int2 (Ae) or None notification received"); } } @@ -14755,9 +15725,9 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_016 + } // end TC_CSE_SUB_UPD_006 - function f_CSE_SUB_UPD_016() runs on CseTester { + function f_CSE_SUB_UPD_006() runs on CseTester { // Local variables var MsgIn v_response; @@ -14768,19 +15738,19 @@ module OneM2M_Testcases { alt { [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, Notification isn't expected "); + setverdict(fail, __SCOPE__ & ": Error, Notification isn't expected "); } [] tc_ac.timeout { - setverdict(pass, testcasename() & ": No notification received"); + setverdict(pass, __SCOPE__ & ": No notification received"); } } unmap(self:mcaPort, system:mcaPort); unmap(self:acPort, system:acPort); - } //end f_CSE_SUB_UPD_016 + } //end f_CSE_SUB_UPD_006 - }//end group g_CSE_SUB_UPD_016 + }//end group g_CSE_SUB_UPD_006 group g_CSE_SUB_DEL_001{ @@ -14825,20 +15795,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_request)); alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2002))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Subscription resource deleted successfully"); + setverdict(pass, __SCOPE__ & ": Subscription resource deleted successfully"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while deleting resource type int23 (Subscription)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while deleting resource type int23 (Subscription)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while deleting resource type int23 (Subscription)"); + setverdict(fail, __SCOPE__ & ": No answer while deleting resource type int23 (Subscription)"); } } @@ -14868,14 +15838,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_request(mw_notify(v_notificationRequest))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Notification received"); + setverdict(pass, __SCOPE__ & ": Notification received"); } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error, unexpected message received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No notification received"); + setverdict(fail, __SCOPE__ & ": No notification received"); } } @@ -14887,13 +15857,13 @@ module OneM2M_Testcases { }//end group g_CSE_SUB_DEL_001 - group g_CSE_SUB_UPD_018 { + group g_CSE_SUB_UPD_007 { /** * @desc Check that the IUT sends aggregated notification to the subscriber resource when the number value of the batchNotify attribute is set to GROUP_LIMIT and when this number have been reached * */ - testcase TC_CSE_SUB_UPD_018() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_007() runs on CseTester system CseSystem { // Local variables const integer numberOfAggregatedNotification := 3; var MsgIn v_response; @@ -14932,7 +15902,7 @@ module OneM2M_Testcases { }; // Test Body - v_notifyHandler.start(f_CSE_SUB_UPD_018(v_contentResponse, numberOfAggregatedNotification)); // check that no notification is received + v_notifyHandler.start(f_CSE_SUB_UPD_007(v_contentResponse, numberOfAggregatedNotification)); // check that no notification is received v_updateRequest.primitiveContent.aE.labels := v_labels_1; v_request:= f_getUpdateRequestPrimitive(int2, v_aeIndex, v_updateRequest); // Update request 1 @@ -14954,9 +15924,9 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_018 + } // end TC_CSE_SUB_UPD_007 - function f_CSE_SUB_UPD_018(template PrimitiveContent p_primitiveContent,in integer p_numberOfAggregatedNotification) runs on CseTester { + function f_CSE_SUB_UPD_007(template PrimitiveContent p_primitiveContent,in integer p_numberOfAggregatedNotification) runs on CseTester { // Local variables var MsgIn v_response; @@ -14969,31 +15939,31 @@ module OneM2M_Testcases { tc_ac.stop; if(p_numberOfAggregatedNotification == lengthof(v_response.primitive.requestPrimitive.primitiveContent.aggregatedNotification.notification_list)){ if(f_check_notificationContent(v_response.primitive.requestPrimitive, p_primitiveContent)){ - setverdict(pass, testcasename() & ": Notification received"); + setverdict(pass, __SCOPE__ & ": Notification received"); } else{ - setverdict(fail, testcasename() & ": Notification received but the content doesn't match"); + setverdict(fail, __SCOPE__ & ": Notification received but the content doesn't match"); } } else { - setverdict(fail, testcasename() & ": Number of Notification in Aggregatednotification isn't right"); + setverdict(fail, __SCOPE__ & ": Number of Notification in Aggregatednotification isn't right"); } } [] mcaPort.receive{ tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error, unexpected message received"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No notification received"); + setverdict(fail, __SCOPE__ & ": No notification received"); } } unmap(self:mcaPort, system:mcaPort); unmap(self:acPort, system:acPort); - } //end f_CSE_SUB_UPD_018 + } //end f_CSE_SUB_UPD_007 - }//end group g_CSE_SUB_UPD_018 + }//end group g_CSE_SUB_UPD_007 group g_CSE_SUB_NTF_003 { @@ -15039,7 +16009,7 @@ module OneM2M_Testcases { }; // Test Body - v_notifyHandler.start(f_CSE_SUB_UPD_018(v_contentResponse, 2)); // check that no notification is received + v_notifyHandler.start(f_CSE_SUB_UPD_007(v_contentResponse, 2)); // check that no notification is received v_updateRequest.primitiveContent.aE.labels := v_labels_1; v_request:= f_getUpdateRequestPrimitive(int2, v_aeIndex, v_updateRequest); // Update request 1 @@ -15061,13 +16031,13 @@ module OneM2M_Testcases { }//end group g_CSE_SUB_NTF_003 - group g_CSE_SUB_UPD_020 { + group g_CSE_SUB_UPD_008 { /** * @desc Check that the IUT sends the latest notification to the subscriber resource when latestNotify is set to TRUE, the number value of the batchNotify attribute is set to GROUP_LIMIT and when this number have been reached * */ - testcase TC_CSE_SUB_UPD_020() runs on CseTester system CseSystem { + testcase TC_CSE_SUB_UPD_008() runs on CseTester system CseSystem { // Local variables const integer numberOfAggregatedNotification := 3; var MsgIn v_response; @@ -15132,9 +16102,9 @@ module OneM2M_Testcases { //Tear down f_cf01Down(); - } // end TC_CSE_SUB_UPD_020 + } // end TC_CSE_SUB_UPD_008 - }//end group g_CSE_SUB_UPD_020 + }//end group g_CSE_SUB_UPD_008 }//end group Subscription_And_Notification @@ -15157,6 +16127,8 @@ module OneM2M_Testcases { var RequestPrimitive v_createRequest := valueof(m_createAcpBase); var AccessControlRule v_accessControlRule_1 := valueof(m_createAcr({PX_SUPER_USER}, int63)); var AccessControlRule v_accessControlRule_2 := valueof(m_createAcr({"wait"}, int55)); + const ResourceType c_accessControlPolicyType := int1; + // Test control // Test component configuration @@ -15175,29 +16147,34 @@ module OneM2M_Testcases { v_contentResponse.accessControlPolicy.privileges.accessControlRule_list[1].accessControlOriginators := {f_getOriginator(v_aeIndex)}; // Test Body - v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource + v_createRequest := f_getCreateRequestPrimitive(c_accessControlPolicyType, v_createRequest, -1); - mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(v_acpIndex), f_getOriginator(v_acpIndex)))); - + mcaPort.send(m_request(v_createRequest)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { - tc_ac.stop; - setverdict(pass, testcasename() & ": Response OK for retrieving"); - } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(c_accessControlPolicyType)) & " created successfully"); + v_acpIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int1); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource type " & int2str(enum2int(c_accessControlPolicyType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type " & int2str(enum2int(c_accessControlPolicyType))); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_acpIndex)) { + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -15222,6 +16199,8 @@ module OneM2M_Testcases { var RequestPrimitive v_createRequest := valueof(m_createAcpBase); var AccessControlRule v_accessControlRule_1 := valueof(m_createAcr({PX_SUPER_USER}, int63)); var AccessControlRule v_accessControlRule_2 := valueof(m_createAcr({"wait"}, int55)); + const ResourceType c_accessControlPolicyType := int1; + // Test control // Test component configuration @@ -15240,29 +16219,34 @@ module OneM2M_Testcases { v_contentResponse.accessControlPolicy.selfPrivileges.accessControlRule_list[1].accessControlOriginators := {f_getOriginator(v_aeIndex)}; // Test Body - v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource + v_createRequest := f_getCreateRequestPrimitive(c_accessControlPolicyType, v_createRequest, -1);// CSE child resource - mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(v_acpIndex), f_getOriginator(v_acpIndex)))); - + mcaPort.send(m_request(v_createRequest)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK(v_contentResponse))) -> value v_response { - tc_ac.stop; - setverdict(pass, testcasename() & ": Response OK for retrieving"); - } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, resource elements provided not matching expected resource elements"); + setverdict(pass, __SCOPE__ & ": Resource type " & int2str(enum2int(c_accessControlPolicyType)) & " created successfully"); + v_acpIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, c_accessControlPolicyType); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while retrieving resource"); + setverdict(fail, __SCOPE__ & ": Error while creating resource type " & int2str(enum2int(c_accessControlPolicyType))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while retrieving resource"); + setverdict(fail, __SCOPE__ & ": No answer while creating resource type " & int2str(enum2int(c_accessControlPolicyType))); } } + f_checkCseTesterStatus(); + + //Check to see if the resource is present or not + if(f_isResourcePresent(v_acpIndex)) { + setverdict(pass, __SCOPE__ & ":INFO: Resource created"); + } else { + setverdict(fail, __SCOPE__ & ":ERROR: Resource not created"); + } + //Postamble f_cse_postamble_deleteResources(); @@ -15280,25 +16264,25 @@ module OneM2M_Testcases { * */ testcase TC_CSE_SEC_ACP_003_CRE() runs on CseTester system CseSystem { //Create - f_CSE_SEC_ACP_003(m_createContainerBase); + f_CSE_SEC_ACP_003(m_createContainerBase, int2001); }//end TC_CSE_SEC_ACP_003_CRE testcase TC_CSE_SEC_ACP_003_UPD() runs on CseTester system CseSystem { //Update var template RequestPrimitive v_updateRequest := m_updateAeBase; var Labels v_labels_1:= {"VALUE_1"}; v_updateRequest.primitiveContent.aE.labels := v_labels_1; - f_CSE_SEC_ACP_003(v_updateRequest); + f_CSE_SEC_ACP_003(v_updateRequest, int2004); }//end TC_CSE_SEC_ACP_003_02 testcase TC_CSE_SEC_ACP_003_RET() runs on CseTester system CseSystem { //Retrieve - f_CSE_SEC_ACP_003(m_retrieveResource("Temporary", "Temporary")); + f_CSE_SEC_ACP_003(m_retrieveResource("Temporary", "Temporary"), int2000); }//end TC_CSE_SEC_ACP_003_03 testcase TC_CSE_SEC_ACP_003_DEL() runs on CseTester system CseSystem { //Delete - f_CSE_SEC_ACP_003(m_deleteRequest("Temporary")); + f_CSE_SEC_ACP_003(m_deleteRequest("Temporary"), int2002); }//end TC_CSE_SEC_ACP_003_04 - function f_CSE_SEC_ACP_003(template RequestPrimitive p_requestPrimitive) runs on CseTester{ + function f_CSE_SEC_ACP_003(template RequestPrimitive p_requestPrimitive, in ResponseStatusCode p_responseStatusCode) runs on CseTester{ // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -15328,20 +16312,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(valueof(p_requestPrimitive))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(p_responseStatusCode))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Successful operation on resource type int2 (Ae)"); + setverdict(pass, __SCOPE__ & ": Successful operation on resource type int2 (Ae)"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while operation on resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation on resource type int2 (Ae)"); } } @@ -15356,14 +16340,14 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - log(testcasename() & ": Attribute of resource type ACP updated successfully"); + log(__SCOPE__ & ":INFO: Attribute of resource type ACP updated successfully"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - log(testcasename() & ": Error while updating resource type ACP"); + log(__SCOPE__ & ":INFO: Error while updating resource type ACP"); } [] tc_ac.timeout { - log(testcasename() & ": No answer while updating resource type ACP"); + log(__SCOPE__ & ":INFO: No answer while updating resource type ACP"); } } @@ -15383,25 +16367,25 @@ module OneM2M_Testcases { * */ testcase TC_CSE_SEC_ACP_004_CRE() runs on CseTester system CseSystem { //Create - f_CSE_SEC_ACP_004(m_createContainerBase); + f_CSE_SEC_ACP_004(m_createContainerBase, int2001); }//end TC_CSE_SEC_ACP_004_CRE testcase TC_CSE_SEC_ACP_004_UPD() runs on CseTester system CseSystem { //Update var template RequestPrimitive v_updateRequest := m_updateAeBase; var Labels v_labels_1:= {"VALUE_1"}; v_updateRequest.primitiveContent.aE.labels := v_labels_1; - f_CSE_SEC_ACP_004(v_updateRequest); + f_CSE_SEC_ACP_004(v_updateRequest, int2004); }//end TC_CSE_SEC_ACP_004_UPD testcase TC_CSE_SEC_ACP_004_RET() runs on CseTester system CseSystem { //Retrieve - f_CSE_SEC_ACP_004(m_retrieveResource("Temporary", "Temporary")); + f_CSE_SEC_ACP_004(m_retrieveResource("Temporary", "Temporary"), int2000); }//end TC_CSE_SEC_ACP_004_RET testcase TC_CSE_SEC_ACP_004_DEL() runs on CseTester system CseSystem { //Delete - f_CSE_SEC_ACP_004(m_deleteRequest("Temporary")); + f_CSE_SEC_ACP_004(m_deleteRequest("Temporary"), int2002); }//end TC_CSE_SEC_ACP_004_DEL - function f_CSE_SEC_ACP_004(template RequestPrimitive p_requestPrimitive) runs on CseTester{ + function f_CSE_SEC_ACP_004(template RequestPrimitive p_requestPrimitive, in ResponseStatusCode p_responseStatusCode) runs on CseTester{ // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -15428,23 +16412,24 @@ module OneM2M_Testcases { mcaPort.send(m_request(valueof(p_requestPrimitive))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(p_responseStatusCode))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Successful operation on resource type int2 (Ae)"); + setverdict(pass, __SCOPE__ & ": Successful operation on resource type int2 (Ae)"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while operation on resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation on resource type int2 (Ae)"); } } + //Postamble f_cse_postamble_deleteResources(); @@ -15462,25 +16447,25 @@ module OneM2M_Testcases { * */ testcase TC_CSE_SEC_ACP_011_CRE() runs on CseTester system CseSystem { //Create - f_CSE_SEC_ACP_011(m_createContainerBase); + f_CSE_SEC_ACP_011(m_createContainerBase, int2001); }//end TC_CSE_SEC_ACP_011_CRE testcase TC_CSE_SEC_ACP_011_UPD() runs on CseTester system CseSystem { //Update var template RequestPrimitive v_updateRequest := m_updateContainerBase; var Labels v_labels_1:= {"VALUE_1"}; v_updateRequest.primitiveContent.container.labels := v_labels_1; - f_CSE_SEC_ACP_011(v_updateRequest); + f_CSE_SEC_ACP_011(v_updateRequest, int2004); }//end TC_CSE_SEC_ACP_011_UPD testcase TC_CSE_SEC_ACP_011_RET() runs on CseTester system CseSystem { //Retrieve - f_CSE_SEC_ACP_011(m_retrieveResource("Temporary", "Temporary")); + f_CSE_SEC_ACP_011(m_retrieveResource("Temporary", "Temporary"), int2000); }//end TC_CSE_SEC_ACP_011_RET testcase TC_CSE_SEC_ACP_011_DEL() runs on CseTester system CseSystem { //Delete - f_CSE_SEC_ACP_011(m_deleteRequest("Temporary")); + f_CSE_SEC_ACP_011(m_deleteRequest("Temporary"), int2002); }//end TC_CSE_SEC_ACP_011_DEL - function f_CSE_SEC_ACP_011(template RequestPrimitive p_requestPrimitive) runs on CseTester { + function f_CSE_SEC_ACP_011(template RequestPrimitive p_requestPrimitive, in ResponseStatusCode p_responseStatusCode) runs on CseTester { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -15504,20 +16489,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(valueof(p_requestPrimitive))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(p_responseStatusCode))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Successful operation on resource type int3 (Container)"); + setverdict(pass, __SCOPE__ & ": Successful operation on resource type int3 (Container)"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while operation on resource type int3 (Container)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation on resource type int3 (Container)"); } } @@ -15596,22 +16581,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Operation denied because of lack of right on Container"); - } - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { - tc_ac.stop; - setverdict(fail, testcasename() & ": Error operation have been accpeted without having privileges"); + setverdict(pass, __SCOPE__ & ": Operation denied because of lack of right on Container"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error operation have been accpeted without having privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation on resource type int3 (Container)"); } } @@ -15686,22 +16667,18 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Operation denied because of lack of right on Container"); - } - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { - tc_ac.stop; - setverdict(fail, testcasename() & ": Error operation have been accpeted without having privileges"); + setverdict(pass, __SCOPE__ & ": Operation denied because of lack of right on Container"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error operation have been accpeted without having privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation on resource type int3 (Container)"); } } @@ -15722,25 +16699,25 @@ module OneM2M_Testcases { * */ testcase TC_CSE_SEC_ACP_002_CRE() runs on CseTester system CseSystem { //Create - f_CSE_SEC_ACP_002(m_createContainerBase); + f_CSE_SEC_ACP_002(m_createContainerBase, int2001); }//end TC_CSE_SEC_ACP_002_CRE testcase TC_CSE_SEC_ACP_002_UPD() runs on CseTester system CseSystem { //Update var template RequestPrimitive v_updateRequest := m_updateAeBase; var Labels v_labels_1:= {"VALUE_1"}; v_updateRequest.primitiveContent.aE.labels := v_labels_1; - f_CSE_SEC_ACP_002(v_updateRequest); + f_CSE_SEC_ACP_002(v_updateRequest, int2004); }//end TC_CSE_SEC_ACP_002_UPD testcase TC_CSE_SEC_ACP_002_RET() runs on CseTester system CseSystem { //Retrieve - f_CSE_SEC_ACP_002(m_retrieveResource("Temporary", "Temporary")); + f_CSE_SEC_ACP_002(m_retrieveResource("Temporary", "Temporary"), int2000); }//end TC_CSE_SEC_ACP_002_RET testcase TC_CSE_SEC_ACP_002_DEL() runs on CseTester system CseSystem { //Delete - f_CSE_SEC_ACP_002(m_deleteRequest("Temporary")); + f_CSE_SEC_ACP_002(m_deleteRequest("Temporary"), int2002); }//end TC_CSE_SEC_ACP_002_DEL - function f_CSE_SEC_ACP_002(template RequestPrimitive p_requestPrimitive) runs on CseTester { + function f_CSE_SEC_ACP_002(template RequestPrimitive p_requestPrimitive, in ResponseStatusCode p_responseStatusCode) runs on CseTester { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; @@ -15783,20 +16760,20 @@ module OneM2M_Testcases { mcaPort.send(m_request(valueof(p_requestPrimitive))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(p_responseStatusCode))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Successful operation on resource type int2 (Ae)"); + setverdict(pass, __SCOPE__ & ": Successful operation on resource type int2 (Ae)"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while operation on resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation on resource type int2 (Ae)"); } } @@ -15828,6 +16805,7 @@ module OneM2M_Testcases { var AccessControlRule v_accessControlRule_2; var SetOfAcrs v_setOfArcs_1; var SetOfAcrs v_setOfArcs_2; + var PrimitiveContent v_primitiveContentRetrievedResource; // Test control @@ -15858,23 +16836,32 @@ module OneM2M_Testcases { mcaPort.send(m_request(v_updateRequest)); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int2004))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Successful Update operation on resource type int2 (Ae)"); + setverdict(pass, __SCOPE__ & ": Successful Update operation on resource type int2 (Ae)"); } - [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while Update operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error while Update operation on resource type int2 (Ae)"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing update operation on resource type int2 (Ae)"); + setverdict(fail, __SCOPE__ & ": No answer while executing update operation on resource type int2 (Ae)"); } } + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_aeIndex); + if(getverdict == pass){ + if(ischosen(v_primitiveContentRetrievedResource.aE)) { + if(not match (v_primitiveContentRetrievedResource.aE.accessControlPolicyIDs, valueof(v_updateRequest.primitiveContent.aE.accessControlPolicyIDs))){ + setverdict(fail, __SCOPE__ & ": Error: Access Control policy ID attribute not updated correctly") + } + } + } + //Postamble f_cse_postamble_deleteResources(); @@ -15903,6 +16890,7 @@ module OneM2M_Testcases { var AccessControlRule v_accessControlRule_2; var SetOfAcrs v_setOfArcs_1; var SetOfAcrs v_setOfArcs_2; + var PrimitiveContent v_primitiveContentRetrievedResource; // Test control @@ -15935,23 +16923,28 @@ module OneM2M_Testcases { alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int4103))) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Operation denied because of lack of right on Container"); - } - [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { - tc_ac.stop; - setverdict(fail, testcasename() & ": Error operation have been accpeted without having privileges"); + setverdict(pass, __SCOPE__ & ": Operation denied because of lack of right on Container"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": Wrong response status code"); } - [] mcaPort.receive{ + [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error, unexpected message received"); + setverdict(fail, __SCOPE__ & ": Error operation have been accpeted without having privileges"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while executing operation on resource type int3 (Container)"); + setverdict(fail, __SCOPE__ & ": No answer while executing operation on resource type int3 (Container)"); + } + } + + v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_aeIndex); + if(getverdict == pass){ + if(ischosen(v_primitiveContentRetrievedResource.aE)) { + if(match(v_primitiveContentRetrievedResource.aE.accessControlPolicyIDs, valueof(v_updateRequest.primitiveContent.aE.accessControlPolicyIDs))){ + setverdict(fail, __SCOPE__ & ": Error: Access Control policy ID attribute updated") } + } } //Postamble