diff --git a/OneM2M_Functions.ttcn b/OneM2M_Functions.ttcn index e431ffc526f8880b6fb9225610f52b8bb5dabf7a..ed8749e50aafd8ef6715bc3ab80f54ea179fbe0b 100644 --- a/OneM2M_Functions.ttcn +++ b/OneM2M_Functions.ttcn @@ -65,7 +65,7 @@ module OneM2M_Functions { v_request.to_ := f_addPrefix(f_getResourceAddress()); mcaPort.send(m_request(v_request)); - //mcaPort.send(m_request(m_createAeAux(p_name, {PX_URI_CSE & PX_CSE_NAME & "/" & c_acpAuxName}))); + //mcaPort.send(m_request(m_createAeAux(p_name, {PX_URI_CSE & PX_CSE_NAME & "/" & PX_ACPAUX_NAME}))); } else { mcaPort.send(m_request(m_createAeAux())); } @@ -190,7 +190,11 @@ module OneM2M_Functions { p_request.from_ := f_getOriginator(p_parentIndex); - p_request.to_ := f_addPrefix(f_getResourceAddress(p_parentIndex)); + p_request.to_ := f_addPrefix(f_getResourceAddress(p_parentIndex)); + + //@Martin + p_request.resultContent := PX_RESULT_CONTENT_CREATE; + p_request.requestIdentifier := valueof(p_request.from_) & f_rnd(1, 1000000);//p_request.from_ & int2str(float2int(rnd())); //p_request.name := p_name; @@ -215,7 +219,7 @@ module OneM2M_Functions { p_request.primitiveContent.any_1[0].Subscription_optional.notificationURI := {PX_CSE_ID & "/" & vc_aeAux.aE_ID}; } } else { - p_request.primitiveContent.any_1[0].Subscription_optional.notificationURI := {"/" & PX_CSE_NAME & "/" & c_aeAuxName}; + p_request.primitiveContent.any_1[0].Subscription_optional.notificationURI := {"/" & PX_CSE_NAME & "/" & PX_AEAUX_NAME};//c_aeAuxName }*/ } @@ -224,11 +228,14 @@ module OneM2M_Functions { function f_getUpdateRequestPrimitive(in ResourceType p_resourceType, integer p_resourceIndex, template RequestPrimitive p_request) runs on M2M return RequestPrimitive { - p_request.from_ := f_getOriginator(p_resourceIndex); + p_request.from_ := f_getOriginator(p_resourceIndex); - p_request.to_ := f_addPrefix(f_getResourceAddress(p_resourceIndex)); + p_request.to_ := f_addPrefix(f_getResourceAddress(p_resourceIndex)); - //p_request.name := p_name; + //@Martin + p_request.resultContent := PX_RESULT_CONTENT_UPDATE; + p_request.requestIdentifier := valueof(p_request.from_) & f_rnd(1, 1000000);//p_request.from_ & int2str(float2int(rnd())); + //p_request.name := p_name; if (p_resourceType == int3) {//Container @@ -445,8 +452,8 @@ module OneM2M_Functions { return v_resourceIndex; } - - function f_createAccessControlPolicyAux(in template (value) XSD.String p_acpName := "MyAcp", in template (value) AccessControlOperations p_allowedOperations := int63) runs on M2M return integer{ +// "MyAcp" + function f_createAccessControlPolicyAux(in template (value) XSD.String p_acpName := PX_ACPAUX_NAME, in template (value) AccessControlOperations p_allowedOperations := int63) runs on M2M return integer{ var RequestPrimitive v_request; var M2MResponsePrimitive v_response; var integer v_acpAuxIndex := -1; @@ -489,7 +496,7 @@ module OneM2M_Functions { var integer v_acpAuxIndex := -1; var integer v_containerResourceIndex := -1; - v_acpAuxIndex := f_createAccessControlPolicyAux(p_acpName := "MyAcp_2"); + v_acpAuxIndex := f_createAccessControlPolicyAux(p_acpName := PX_ACPAUX_NAME);//"MyAcp_2" v_request := valueof(m_createContainerBase); v_request.primitiveContent.any_1[0].Container_optional.accessControlPolicyIDs := {f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}; diff --git a/OneM2M_Pixits.ttcn b/OneM2M_Pixits.ttcn index ef37fc7dffe079f14eff96045ab78c7c56523f6e..2dd489dceda21a861018d8ddb927ae3c720aac76 100644 --- a/OneM2M_Pixits.ttcn +++ b/OneM2M_Pixits.ttcn @@ -16,40 +16,60 @@ module OneM2M_Pixits { import from XSD all; import from OneM2M_Types all; - modulepar boolean PX_DELETE_CREATED_RESOURCES := true; + modulepar boolean PX_DELETE_CREATED_RESOURCES := true; - modulepar charstring PX_RESOURCE_TO_BE_DELETED := "/ae_test"; + modulepar charstring PX_RESOURCE_TO_BE_DELETED := "/ae_test"; modulepar XSD.IDREFS PX_RESOURCES_TO_BE_DELETED := {"/ae_test", "/MyAcp"}; - modulepar charstring PX_HOST_ADDRESS := "127.0.0.1:8080"; + modulepar charstring PX_HOST_ADDRESS := "127.0.0.1:8080"; - modulepar charstring PX_XML_NAMESPACE := "om2m=""http://www.onem2m.org/xml/protocols"""; + modulepar charstring PX_XML_NAMESPACE := "om2m=""http://www.onem2m.org/xml/protocols"""; - modulepar charstring PX_CSE_NAME := "in-cse"; + modulepar charstring PX_CSE_NAME := "in-cse"; - modulepar charstring PX_URI_CSE := "/~/in-cse"; + modulepar charstring PX_URI_CSE := "/~/in-cse"; - modulepar boolean PX_UNSTRUCTURED := false; + //@Martin + modulepar charstring PX_DEFAULT_RESOURCE_NAME := "MyResource";//c_defaultResourceName + //@Martin + modulepar charstring PX_AEAUX_NAME := "MyAe"; + //@Martin + modulepar XSD.String PX_ACPAUX_NAME := "MyAcp"; - modulepar charstring PX_AE_ID_STEM := "admin:admin"; + modulepar boolean PX_UNSTRUCTURED := false; - modulepar charstring PX_APP_ID := "myAppId"; + modulepar charstring PX_AE_ID_STEM := "admin:admin"; - modulepar boolean PX_RUN_POSTAMBLE := true; + modulepar charstring PX_APP_ID := "myAppId"; - modulepar ListOfURIs PX_ACOR := {"*"}; + modulepar boolean PX_RUN_POSTAMBLE := true; + + modulepar ListOfURIs PX_ACOR := {"*"}; modulepar AddressingFormat PX_ADDRESSING_FORMAT := e_cseRelative; - modulepar charstring PX_SERIALIZATION := "JSON"; + modulepar charstring PX_SERIALIZATION := "JSON"; + + modulepar charstring PX_PROTOCOL_BINDING := "HTTP"; + + modulepar boolean PX_ACP_SUPPORT := true; - modulepar charstring PX_PROTOCOL_BINDING := "HTTP"; + modulepar charstring PX_CSE_ID := "in-cse"; - modulepar boolean PX_ACP_SUPPORT := true; + modulepar boolean PX_FROM_IS_AE_ID := false; - modulepar charstring PX_CSE_ID := "in-cse"; + //@Martin + //constant parameters for LOC + modulepar LocationSource PX_LOCATION_SOURCE := int1;//network-defined + modulepar charstring PX_LOCATION_TARGET_ID := "{LOCATION-TARGET-ID}"; //SUPPOSE TO BE RECEIVED FROM LOCATION SERVER + modulepar charstring PX_LOCATION_SERVER_ADDRESS := "{LOCATION-SERVER-ADDRESS}"; + modulepar charstring PX_LOCATION_UPDATE_PERIOD := "PT10M10S" ;//10 Minute 10 Seconds + modulepar charstring PX_LOCATION_UPDATE_PERIOD_INVALID := "-PT30M10S" ;//duration set to invalid value (minus value) + modulepar charstring PX_LOCATION_CONTAINER_NAME := "myLoContainer"; + modulepar ResultContent PX_RESULT_CONTENT_CREATE := int1; //default value for resultContent and permitted input value includes int0, int1, int2, and int3 + modulepar ResultContent PX_RESULT_CONTENT_UPDATE := int1; //default value for resultContent and permitted input value includes int0, int1 - modulepar boolean PX_FROM_IS_AE_ID := false; + modulepar Labels LABELS := {"VALUE_1"}; } // end of module diff --git a/OneM2M_Templates.ttcn b/OneM2M_Templates.ttcn index e8450d7321b15436f496357be0b51ec2108614c3..436b7e2ffb626f136171e25a2f03674d91b40ec7 100644 --- a/OneM2M_Templates.ttcn +++ b/OneM2M_Templates.ttcn @@ -52,7 +52,7 @@ module OneM2M_Templates { */ template (value) RequestPrimitive m_retrieveCseBase := { operation := int2, - to_ := c_uri_cse, + to_ := PX_URI_CSE,//c_uri_cse,//@Martin from_ := "admin:admin", requestIdentifier := "m_retrieveCseBase" & f_rnd(1, 1000000), resourceType := omit, @@ -341,12 +341,12 @@ module OneM2M_Templates { }; //@Martin - template (value) RequestPrimitive m_updateLocationPolicy(XSD.ID p_aeResourceAddress, in template (omit) AcpType p_accessControlPolicyIDs, in template (omit) XSD.Duration locationUpdatePeriod) := { + template (value) RequestPrimitive m_updateLocationPolicy(XSD.ID p_locResourceAddress, in template (omit) AcpType p_accessControlPolicyIDs, in template (omit) XSD.Duration locationUpdatePeriod) := { operation := int3, //create - to_ := p_aeResourceAddress, + to_ := p_locResourceAddress, from_ := PX_AE_ID_STEM, //AE originator id e.g. requestIdentifier := "m_updateLocationPolicy", - resourceType := omit, + resourceType := omit,//NP primitiveContent := { any_1 := {{ LocationPolicy_optional := m_contentUpdateLocationPolicy(p_accessControlPolicyIDs, locationUpdatePeriod) }} }, @@ -357,7 +357,7 @@ module OneM2M_Templates { operationExecutionTime := omit, responseType := omit, resultPersistence := omit, - resultContent := int1,//omit, + resultContent := PX_RESULT_CONTENT_UPDATE, eventCategory := omit, deliveryAggregation := omit, groupRequestIdentifier := omit, @@ -406,7 +406,7 @@ module OneM2M_Templates { requestIdentifier := "m_createAe" & f_rnd(1, 1000000), resourceType := int2, primitiveContent := { - any_1 := {{AE_optional := m_contentCreateAe(c_aeAuxName, p_accessControlPolicyIDs)}} + any_1 := {{AE_optional := m_contentCreateAe(PX_AEAUX_NAME, p_accessControlPolicyIDs)}} }, role := omit, originatingTimestamp := omit, @@ -449,7 +449,7 @@ module OneM2M_Templates { }; - template (value) RequestPrimitive m_createAcp(XSD.ID p_parentResourceAddress, in template (omit) XSD.String p_name := c_defaultResourceName, in template (value) ListOfURIs p_acor := PX_ACOR, in template (value) AccessControlOperations p_allowedOperations := int63) := { + template (value) RequestPrimitive m_createAcp(XSD.ID p_parentResourceAddress, in template (omit) XSD.String p_name := PX_DEFAULT_RESOURCE_NAME, in template (value) ListOfURIs p_acor := PX_ACOR, in template (value) AccessControlOperations p_allowedOperations := int63) := { operation := int1, to_ := f_addPrefix(p_parentResourceAddress), from_ := PX_AE_ID_STEM, @@ -474,7 +474,7 @@ module OneM2M_Templates { }; - template (value) RequestPrimitive m_createAcpAux(in template (value) XSD.String p_acpName := c_acpAuxName, in template (value) ListOfURIs p_acor := PX_ACOR, in template (value) AccessControlOperations p_allowedOperations := int63 ) := { + template (value) RequestPrimitive m_createAcpAux(in template (value) XSD.String p_acpName := PX_ACPAUX_NAME, in template (value) ListOfURIs p_acor := PX_ACOR, in template (value) AccessControlOperations p_allowedOperations := int63 ) := { operation := int1, to_ := "Not Initialized", from_ := PX_AE_ID_STEM, @@ -778,11 +778,11 @@ module OneM2M_Templates { }; //@Martin - template (value) RequestPrimitive m_createLocationPolicy(XSD.ID p_aeResourceAddress, in template (omit) AcpType p_accessControlPolicyIDs, in template (omit) XSD.Duration locationUpdatePeriod, in template (omit) NodeID locationTargetID, in template (omit) XSD.AnyURI locationServerAddress) := { + template (value) RequestPrimitive m_createLocationPolicy(XSD.ID p_parentResourceAddress, in template (omit) AcpType p_accessControlPolicyIDs, in template (omit) XSD.Duration locationUpdatePeriod, in template (omit) NodeID locationTargetID, in template (omit) XSD.AnyURI locationServerAddress) := { operation := int1, //create - to_ := p_aeResourceAddress, + to_ := p_parentResourceAddress, from_ := PX_AE_ID_STEM, //AE originator id e.g. - requestIdentifier := "m_createLocationPolicy", + requestIdentifier := "m_createLocationPolicy", //the requestIdentifier is supposed to be set similar as "C190XX7T/001" by prepending the AE-ID-Stem and slash(‘/’) in front of it resourceType := int10, primitiveContent := { any_1 := {{ LocationPolicy_optional := m_contentCreateLocationPolicy(p_accessControlPolicyIDs, locationUpdatePeriod, locationTargetID, locationServerAddress) }} @@ -794,7 +794,7 @@ module OneM2M_Templates { operationExecutionTime := omit, responseType := omit, resultPersistence := omit, - resultContent := int1,//omit, + resultContent := PX_RESULT_CONTENT_CREATE, eventCategory := omit, deliveryAggregation := omit, groupRequestIdentifier := omit, @@ -880,7 +880,7 @@ module OneM2M_Templates { choice := omit//NP }; - template (value) AccessControlPolicy_optional m_contentCreateAcp (in template (omit) XSD.String p_name := c_defaultResourceName, in template (value) ListOfURIs p_acor := PX_ACOR, in template (value) AccessControlOperations p_allowedOperations := int63 ) := { + template (value) AccessControlPolicy_optional m_contentCreateAcp (in template (omit) XSD.String p_name := PX_DEFAULT_RESOURCE_NAME, in template (value) ListOfURIs p_acor := PX_ACOR, in template (value) AccessControlOperations p_allowedOperations := int63 ) := { resourceName := p_name,//O resourceType := omit,//NP resourceID := omit,//NP @@ -915,7 +915,7 @@ module OneM2M_Templates { template (value) Group_optional m_contentCreateGroup ( in template (value) XSD.NonNegativeInteger p_maxNrOfMembers, in template (value) ListOfURIs p_memberIds, in template (omit) AcpType p_accessControlPolicyIDs) := { - resourceName := c_defaultResourceName,//O + resourceName := PX_DEFAULT_RESOURCE_NAME,//O resourceType := omit,//NP resourceID := omit,//NP parentID := omit,//NP @@ -940,7 +940,7 @@ module OneM2M_Templates { }; template (value) PollingChannel_optional m_contentCreatePollingChannel ( in template (omit) AcpType p_accessControlPolicyIDs) := { - resourceName := c_defaultResourceName,//O + resourceName := PX_DEFAULT_RESOURCE_NAME,//O resourceType := omit,//NP resourceID := omit,//NP parentID := omit,//NP @@ -953,7 +953,7 @@ module OneM2M_Templates { }; template (value) Schedule_optional m_contentCreateSchedule (in template (value) ScheduleEntries p_scheduleElement) := { - resourceName := c_defaultResourceName,//O + resourceName := PX_DEFAULT_RESOURCE_NAME,//O resourceType := omit,//NP resourceID := omit,//NP parentID := omit,//NP @@ -968,7 +968,7 @@ module OneM2M_Templates { }; template (value) Subscription_optional m_contentCreateSubscription (in template (value) ListOfURIs p_notificationURI) := { - resourceName := c_defaultResourceName,//O + resourceName := PX_DEFAULT_RESOURCE_NAME,//O resourceType := omit,//NP resourceID := omit,//NP parentID := omit,//NP @@ -996,7 +996,7 @@ module OneM2M_Templates { }; template (value) ContentInstance_optional m_contentCreateContentInstance(XSD.String p_primitiveContent) := { - resourceName := c_defaultResourceName,//O + resourceName := PX_DEFAULT_RESOURCE_NAME,//O resourceType := omit,//NP resourceID := omit,//NP parentID := omit,//NP @@ -1019,7 +1019,7 @@ module OneM2M_Templates { }; template (value) Container_optional m_contentCreateContainer := { - resourceName := c_defaultResourceName,//O + resourceName := PX_DEFAULT_RESOURCE_NAME,//O resourceType := omit,//NP resourceID := omit,//NP parentID := omit,//NP @@ -1046,23 +1046,23 @@ module OneM2M_Templates { //@Martin template (value) LocationPolicy_optional m_contentCreateLocationPolicy (in template (omit) AcpType p_accessControlPolicyIDs, in template (value) XSD.Duration locationUpdatePeriod, in template (value) NodeID locationTargetID, in template (value) XSD.AnyURI locationServerAddress) := { - resourceName := c_defaultResourceName, //O + resourceName := PX_DEFAULT_RESOURCE_NAME, //O resourceType := omit, //NP resourceID := omit, //NP parentID := omit, //NP creationTime := omit, //NP lastModifiedTime := omit, //NP - labels := {"location_test"}, //O + labels := LABELS,//O accessControlPolicyIDs := p_accessControlPolicyIDs, //O expirationTime := omit, //O announceTo := omit, //O announcedAttribute := omit, //O - locationSource := int1, //Network_based //M + locationSource := PX_LOCATION_SOURCE, //M locationUpdatePeriod := locationUpdatePeriod, //O locationTargetID := locationTargetID, //O locationServer := locationServerAddress,//O locationContainerID := omit, //NP - locationContainerName := omit, //O + locationContainerName := PX_LOCATION_CONTAINER_NAME,//O locationStatus := omit, //NP choice := omit //NP @@ -1250,7 +1250,7 @@ module OneM2M_Templates { parentID := omit,//NP creationTime := omit,//NP lastModifiedTime := omit,//NP - labels := {"location_test"},//O + labels := LABELS,//O accessControlPolicyIDs := p_accessControlPolicyIDs,//O expirationTime := omit,//O announceTo := omit,//O @@ -1260,7 +1260,7 @@ module OneM2M_Templates { locationTargetID := omit, //NP locationServer := omit, //NP locationContainerID := omit, //NP - locationContainerName := omit, //O + locationContainerName := PX_LOCATION_CONTAINER_NAME, //O locationStatus := omit, //NP choice := omit //NP }; diff --git a/OneM2M_Testcases.ttcn b/OneM2M_Testcases.ttcn index d39e81495ef4050d073ca7f530e88ac2d897c1b1..214a85c02461acda6d395ece3fb94500769b4ad9 100644 --- a/OneM2M_Testcases.ttcn +++ b/OneM2M_Testcases.ttcn @@ -1000,7 +1000,7 @@ module OneM2M_Testcases { if(not ispresent(v_responsePrimitive.primitiveContent.any_1[0].Container_optional.resourceName)){ setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); } else { - if(v_responsePrimitive.primitiveContent.any_1[0].Container_optional.resourceName != c_defaultResourceName){ + if(v_responsePrimitive.primitiveContent.any_1[0].Container_optional.resourceName != PX_DEFAULT_RESOURCE_NAME){ setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); } } @@ -1017,7 +1017,7 @@ module OneM2M_Testcases { if(not ispresent(v_responsePrimitive.primitiveContent.any_1[0].Group_optional.resourceName)){ setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); } else { - if(v_responsePrimitive.primitiveContent.any_1[0].Group_optional.resourceName != c_defaultResourceName){ + if(v_responsePrimitive.primitiveContent.any_1[0].Group_optional.resourceName != PX_DEFAULT_RESOURCE_NAME){ setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); } } @@ -1034,7 +1034,7 @@ module OneM2M_Testcases { if(not ispresent(v_responsePrimitive.primitiveContent.any_1[0].AccessControlPolicy_optional.resourceName)){ setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); } else { - if(v_responsePrimitive.primitiveContent.any_1[0].AccessControlPolicy_optional.resourceName != c_defaultResourceName){ + if(v_responsePrimitive.primitiveContent.any_1[0].AccessControlPolicy_optional.resourceName != PX_DEFAULT_RESOURCE_NAME){ setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); } } @@ -1051,7 +1051,7 @@ module OneM2M_Testcases { if(not ispresent(v_responsePrimitive.primitiveContent.any_1[0].Schedule_optional.resourceName)){ setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); } else { - if(v_responsePrimitive.primitiveContent.any_1[0].Schedule_optional.resourceName != c_defaultResourceName){ + if(v_responsePrimitive.primitiveContent.any_1[0].Schedule_optional.resourceName != PX_DEFAULT_RESOURCE_NAME){ setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); } } @@ -1067,7 +1067,7 @@ module OneM2M_Testcases { if(not ispresent(v_responsePrimitive.primitiveContent.any_1[0].PollingChannel_optional.resourceName)){ setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); } else { - if(v_responsePrimitive.primitiveContent.any_1[0].PollingChannel_optional.resourceName != c_defaultResourceName){ + if(v_responsePrimitive.primitiveContent.any_1[0].PollingChannel_optional.resourceName != PX_DEFAULT_RESOURCE_NAME){ setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); } } @@ -1084,7 +1084,7 @@ module OneM2M_Testcases { if(not ispresent(v_responsePrimitive.primitiveContent.any_1[0].Subscription_optional.resourceName)){ setverdict(fail, testcasename(), ": Error, resourceName attribute not provided"); } else { - if(v_responsePrimitive.primitiveContent.any_1[0].Subscription_optional.resourceName != c_defaultResourceName){ + if(v_responsePrimitive.primitiveContent.any_1[0].Subscription_optional.resourceName != PX_DEFAULT_RESOURCE_NAME){ setverdict(fail, testcasename(), ": Error, resourceName attribute not correct"); } } @@ -3135,14 +3135,14 @@ module OneM2M_Testcases { // Test Body v_request := f_getUpdateRequestPrimitive(p_resourceType, v_aeIndex, p_updateRequestPrimitive); - v_request.to_ := v_request.to_ & "/" & c_defaultResourceName; + v_request.to_ := v_request.to_ & "/" & PX_DEFAULT_RESOURCE_NAME; mcaPort.send(m_request(v_request)); tc_ac.start; alt { [] mcaPort.receive(mw_response(int4005)) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource " & c_defaultResourceName & " of type " & int2str(enum2int(p_resourceType)) & " not found"); + setverdict(pass, testcasename() & ": Resource " & PX_DEFAULT_RESOURCE_NAME & " of type " & int2str(enum2int(p_resourceType)) & " not found"); } [] mcaPort.receive(mw_responseKO) -> value v_response { tc_ac.stop; @@ -3536,13 +3536,12 @@ module OneM2M_Testcases { //@Martin group Location { - group g_CSE_LOC_BV{ + group g_CSE_LOC_BV_001{ - testcase TC_CSE_LOC_BV_001() runs on M2M system M2MSystem { + testcase TC_CSE_LOC_BV_001_01() runs on M2M system M2MSystem { - var integer v_aeAuxIndex := -1; - var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & c_aeAuxName; - + var integer v_aeAuxIndex := -1; + var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & PX_AEAUX_NAME; var RequestPrimitive v_request; var M2MResponsePrimitive v_response; @@ -3550,19 +3549,10 @@ module OneM2M_Testcases { f_cf01Up(); //Preamble - v_aeAuxIndex := f_preamble_registerAe(); - - //Request target resource address - p_aeResourceAddress := f_addPrefix(f_getResourceAddress(v_aeAuxIndex)); //v_request.to_ - - //Set requestPrimitive - v_request := valueof(m_createLocationPolicy(p_aeResourceAddress, omit, omit, omit, omit)); - - //Set request originator - v_request.from_ := f_getOriginator(v_aeAuxIndex); + v_aeAuxIndex := f_preamble_registerAe(); - //Set returned content type - v_request.resultContent := int1;//Attributes //supposed to be defined by user + //Set requestPrimitive + v_request := f_getCreateRequestPrimitive(int10, omit, m_createLocationPolicy(p_aeResourceAddress, omit, omit, omit, omit), v_aeAuxIndex); //Test Body mcaPort.send(m_request(v_request)); @@ -3574,29 +3564,29 @@ module OneM2M_Testcases { } [] mcaPort.receive(mw_responseKO) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while handling an invalid locationPolicy resource create request!"); + setverdict(fail, testcasename() & ": Error while handling an invalid locationPolicy resource create request with response status code:" & int2str(enum2int(v_response.responsePrimitive_.responseStatusCode))); } [] mcaPort.receive(mw_responseOK) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Created a locationPolicy resource with an invalid create request!"); + setverdict(fail, testcasename() & ": Created a locationPolicy resource for an invalid create request with response status code:" & int2str(enum2int(v_response.responsePrimitive_.responseStatusCode))); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource locationPolicy!"); + setverdict(inconc, testcasename() & ": Timeout due to no response received from requested server!"); } } // Postamble f_postamble_deleteResources(); - }// end testcase TC_CSE_LOC_BV_001 + }// end testcase TC_CSE_LOC_BV_001_01 - testcase TC_CSE_LOC_BV_002() runs on M2M system M2MSystem { + testcase TC_CSE_LOC_BV_001_02() runs on M2M system M2MSystem { var integer v_aeAuxIndex := -1; - var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & c_aeAuxName; - var XSD.Duration locationUpdatePeriod := "PT30M10S" ;//duration set to 30Minute 10 seconds - var XSD.Token locationTargetID := "{LOCATION_TARGET_ID}"; - var XSD.AnyURI locationServerAddress := "{LOCATION_SERVER_ADDRESS}"; + var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & PX_AEAUX_NAME; + var XSD.Duration locationUpdatePeriod := PX_LOCATION_UPDATE_PERIOD; + var XSD.Token locationTargetID := PX_LOCATION_TARGET_ID; + var XSD.AnyURI locationServerAddress := PX_LOCATION_SERVER_ADDRESS; var RequestPrimitive v_request; var M2MResponsePrimitive v_response; @@ -3604,54 +3594,45 @@ module OneM2M_Testcases { f_cf01Up(); //Preamble - v_aeAuxIndex := f_preamble_registerAe(); - - //Request target resource address - p_aeResourceAddress := f_addPrefix(f_getResourceAddress(v_aeAuxIndex)); //v_request.to_ - - //Set requestPrimitive - v_request := valueof(m_createLocationPolicy(p_aeResourceAddress, omit, locationUpdatePeriod, locationTargetID, locationServerAddress)); - - //Set request originator - v_request.from_ := f_getOriginator(v_aeAuxIndex); + v_aeAuxIndex := f_preamble_registerAe(); - //Set returned content type - v_request.resultContent := int1;//Attributes - + //Set requestPrimitive + v_request := f_getCreateRequestPrimitive(int10, omit, m_createLocationPolicy(p_aeResourceAddress, omit, locationUpdatePeriod, locationTargetID, locationServerAddress), v_aeAuxIndex); + // Test Body mcaPort.send(m_request(v_request)); tc_ac.start; alt { [] mcaPort.receive(mw_responseOK) -> value v_response { tc_ac.stop; - setverdict(pass, testcasename() & ": Resource locationPolicy is created successfuly!"); + setverdict(pass, testcasename() & ": Resource locationPolicy is created successfuly with response status code: " & int2str(enum2int(v_response.responsePrimitive_.responseStatusCode))&"!"); } [] mcaPort.receive(mw_responseKO) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while creating resource locationPolicy!"); + setverdict(fail, testcasename() & ": Error occurrs with response status code: " & int2str(enum2int(v_response.responsePrimitive_.responseStatusCode)) & "while handling a valid locationPolicy resource create request!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No answer while creating resource locationPolicy!"); + setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); } } // Postamble f_postamble_deleteResources(); - }// end testcase TC_CSE_LOC_BV_002 + }// end testcase TC_CSE_LOC_BV_001_02 - }//end group g_CSE_LOC_BV + }//end group g_CSE_LOC_BV_001 - group g_CSE_LOC_BO{ + group g_CSE_LOC_BO_001{ - testcase TC_CSE_LOC_BO_001() runs on M2M system M2MSystem {//no AE_ID presented in the from_ is assigned privilege to do locationPolicy resource create operation!! + testcase TC_CSE_LOC_BO_001_01() runs on M2M system M2MSystem {//no AE_ID presented in the from_ is assigned privilege to do locationPolicy resource create operation!! var integer v_aeAuxIndex := -1; - var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & c_aeAuxName; - var XSD.Duration locationUpdatePeriod := "PT30M10S" ;//duration set to 30Minute 10 seconds - var XSD.Token locationTargetID := "{LOCATION_TARGET_ID}"; - var XSD.AnyURI locationServerAddress := "{LOCATION_SERVER_ADDRESS}"; + var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & PX_AEAUX_NAME; + var XSD.Duration locationUpdatePeriod := PX_LOCATION_UPDATE_PERIOD; + var XSD.Token locationTargetID := PX_LOCATION_TARGET_ID; + var XSD.AnyURI locationServerAddress := PX_LOCATION_SERVER_ADDRESS; var RequestPrimitive v_request; var M2MResponsePrimitive v_response; @@ -3662,17 +3643,11 @@ module OneM2M_Testcases { v_aeAuxIndex := f_preamble_registerAe(int62);//c_RUDNDi //No resource creation privilege //Request target resource address - p_aeResourceAddress := f_addPrefix(f_getResourceAddress(v_aeAuxIndex)); //v_request.to_ + p_aeResourceAddress := f_addPrefix(f_getResourceAddress(v_aeAuxIndex)); //Set requestPrimitive - v_request := valueof(m_createLocationPolicy(p_aeResourceAddress, omit, locationUpdatePeriod, locationTargetID, locationServerAddress)); - - //Set request originator - v_request.from_ := f_getOriginator(v_aeAuxIndex); - - //Set returned content type - v_request.resultContent := int1;//Attributes - + v_request := f_getCreateRequestPrimitive(int10, omit, m_createLocationPolicy(p_aeResourceAddress, omit, locationUpdatePeriod, locationTargetID, locationServerAddress), v_aeAuxIndex); + // Test Body mcaPort.send(m_request(v_request)); tc_ac.start; @@ -3683,27 +3658,26 @@ module OneM2M_Testcases { } [] mcaPort.receive(mw_responseOK) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error! IUT failed to check the access privilege of originator!"); + setverdict(fail, testcasename() & ": Error occurrs with response status code: " & int2str(enum2int(v_response.responsePrimitive_.responseStatusCode)) & "due to IUT failed to check the access privilege of originator!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No response received from IUT!"); + setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); } - } + } // Postamble f_postamble_deleteResources(); - } // end testcase TC_CSE_LOC_BO_001 + } // end testcase TC_CSE_LOC_BO_001_01 - testcase TC_CSE_LOC_BO_002() runs on M2M system M2MSystem { + testcase TC_CSE_LOC_BO_001_02() runs on M2M system M2MSystem { var integer v_aeAuxIndex := -1; - var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & c_aeAuxName; - var XSD.ID p_targetResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & c_aeAuxName & "/" & c_defaultResourceName; - var XSD.Duration locationUpdatePeriod := "PT30M10S" ;//duration set to 30Minute 10 seconds - var XSD.Token locationTargetID := "{LOCATION_TARGET_ID}";//format?? - var XSD.AnyURI locationServerAddress := "{LOCATION_SERVER_ADDRESS}";//format??? + var XSD.ID p_targetResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & PX_AEAUX_NAME & "/" & PX_DEFAULT_RESOURCE_NAME; + var XSD.Duration locationUpdatePeriod := PX_LOCATION_UPDATE_PERIOD; + var XSD.Token locationTargetID := PX_LOCATION_TARGET_ID; + var XSD.AnyURI locationServerAddress := PX_LOCATION_SERVER_ADDRESS; var RequestPrimitive v_request; var M2MResponsePrimitive v_response; @@ -3711,21 +3685,11 @@ module OneM2M_Testcases { f_cf01Up(); //Preamble - v_aeAuxIndex := f_preamble_registerAe(); - - //Request target resource address - p_aeResourceAddress := f_addPrefix(f_getResourceAddress(v_aeAuxIndex)); //v_request.to_ + v_aeAuxIndex := f_preamble_registerAe(); //Set requestPrimitive - v_request := valueof(m_createLocationPolicy(p_targetResourceAddress, omit, locationUpdatePeriod, locationTargetID, locationServerAddress)); - - //Set request originator - v_request.from_ := f_getOriginator(v_aeAuxIndex); - - //Set returned content type - v_request.resultContent := int1;//Attributes - - + v_request := f_getCreateRequestPrimitive(int10, omit, m_createLocationPolicy(p_targetResourceAddress, omit, locationUpdatePeriod, locationTargetID, locationServerAddress), v_aeAuxIndex); + // Test Body mcaPort.send(m_request(v_request)); tc_ac.start; @@ -3736,48 +3700,45 @@ module OneM2M_Testcases { } [] mcaPort.receive(mw_responseOK) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error!! Created a resource under a parent resource that does not exist!!"); + setverdict(fail, testcasename() & ": Error occurrs with response status code: "& int2str(enum2int(v_response.responsePrimitive_.responseStatusCode)) & "due to IUT created a locationPolicy resource under a non-existed parent resource!"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No response received from IUT!!"); + setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); } } // Postamble f_postamble_deleteResources(); - }// end testcase TC_CSE_LOC_BO_00D2 + }// end testcase TC_CSE_LOC_BO_001_02 - }//end group g_CSE_LOC_BO + }//end group g_CSE_LOC_BO_001 - group g_CSE_LOC_BI{ + group g_CSE_LOC_BI_001{ - testcase TC_CSE_LOC_BI_001() runs on M2M system M2MSystem {//reject a invalid update request with invalid attribtue locationUpdatePeriod + testcase TC_CSE_LOC_BI_001_01() runs on M2M system M2MSystem {//reject a invalid update request with invalid attribtue locationUpdatePeriod - var integer v_aeAuxIndex := -1; - var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & c_aeAuxName; - var XSD.Duration locationUpdatePeriod := "-PT30M10S" ;//duration set to invalid value (minus value) + var integer v_aeAuxIndex := -1; + var integer v_locPolicyResourceIndex := -1; + var XSD.ID p_aeResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & PX_AEAUX_NAME; + var XSD.ID p_defaultResourceAddress := PX_URI_CSE & PX_CSE_NAME & "/" & PX_AEAUX_NAME & "/" & PX_DEFAULT_RESOURCE_NAME;//which is better? if initialization of to_ := {"Not-initialized"}, then this parameter doesnot need! + var XSD.Duration locationUpdatePeriod_invalid := PX_LOCATION_UPDATE_PERIOD_INVALID; var RequestPrimitive v_request; + var RequestPrimitive v_request_preamble; var M2MResponsePrimitive v_response; //Test component configuration f_cf01Up(); - //Preamble - v_aeAuxIndex := f_preamble_registerAe(); - - //Request target resource address - p_aeResourceAddress := f_addPrefix(f_getResourceAddress(v_aeAuxIndex)); //v_request.to_ + //Preamble - register AE + v_aeAuxIndex := f_preamble_registerAe(); + //Preamble - create a valid locationPolicy resource for later update use + v_request_preamble := valueof(m_createLocationPolicy(p_aeResourceAddress, omit, PX_LOCATION_UPDATE_PERIOD, PX_LOCATION_TARGET_ID, PX_LOCATION_SERVER_ADDRESS)); + v_locPolicyResourceIndex := f_createResource(int10, v_request_preamble, v_aeAuxIndex); //Set requestPrimitive - v_request := valueof(m_updateLocationPolicy(p_aeResourceAddress, omit, locationUpdatePeriod)); - - //Set request originator - v_request.from_ := f_getOriginator(v_aeAuxIndex); - - //Set returned content type - v_request.resultContent := int1;//Attributes - + v_request := f_getUpdateRequestPrimitive(int10, v_locPolicyResourceIndex, m_updateLocationPolicy(p_defaultResourceAddress, omit, locationUpdatePeriod_invalid)); + // Test Body mcaPort.send(m_request(v_request)); tc_ac.start; @@ -3788,19 +3749,20 @@ module OneM2M_Testcases { } [] mcaPort.receive(mw_responseOK) -> value v_response { tc_ac.stop; - setverdict(fail, testcasename() & ": Error while updating resource locationPolicy!"); + setverdict(fail, testcasename() & ": Error occurrs with response status code: "& int2str(enum2int(v_response.responsePrimitive_.responseStatusCode)) & "due to IUT failed to handle an invalid locationPolicy update request + !"); } [] tc_ac.timeout { - setverdict(inconc, testcasename() & ": No response received from IUT while updating resource locationPolicy!"); + setverdict(inconc, testcasename() & ": Timeout due to no response from requested server!"); } } // Postamble f_postamble_deleteResources(); - }//end testcase TC_CSE_LOC_BI_001 + }//end testcase TC_CSE_LOC_BI_001_01 - }//end group g_CSE_LOC_BI + }//end group g_CSE_LOC_BI_001 }//end group Location diff --git a/OneM2M_TypesAndValues.ttcn b/OneM2M_TypesAndValues.ttcn index f3aa536de80892e1b9f32cbe9a313e2e934d12b6..ad5443f50fa0f95d847781f956390fc546b5af97 100644 --- a/OneM2M_TypesAndValues.ttcn +++ b/OneM2M_TypesAndValues.ttcn @@ -17,11 +17,11 @@ module OneM2M_TypesAndValues { import from OneM2M_Types all; /* Constants */ - const charstring c_uri_cse := "/~/in-cse/"; - const charstring c_cse_name := "in-cse"; - const XSD.String c_defaultResourceName := "MyResource"; - const charstring c_aeAuxName := "MyAe"; - const XSD.String c_acpAuxName := "MyAcp"; + //const charstring c_uri_cse := "/~/in-cse/"; + //const charstring c_cse_name := "in-cse"; + //const XSD.String c_defaultResourceName := "MyResource"; + //const charstring c_aeAuxName := "MyAe"; + //const XSD.String c_acpAuxName := "MyAcp"; //AccessControlOperations const XSD.Integer c_C := 1;