diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn index b5d0cc3f1554f8eb0f5229405cb38f7864112044..7bd89e4b1ee692fae398866bf5e89ef1cd512152 100644 --- a/LibOneM2M/OneM2M_Functions.ttcn +++ b/LibOneM2M/OneM2M_Functions.ttcn @@ -5180,6 +5180,21 @@ module OneM2M_Functions { if(ischosen(p_contentResource.timeSeriesInstance)) { return p_contentResource.timeSeriesInstance.resourceID; } + if(ischosen(p_contentResource.semanticDescriptor)) { + return p_contentResource.semanticDescriptor.resourceID; + } + if(ischosen(p_contentResource.ontologyRepository)) { + return p_contentResource.ontologyRepository.resourceID; + } + if(ischosen(p_contentResource.ontology)) { + return p_contentResource.ontology.resourceID; + } + if(ischosen(p_contentResource.semanticMashupInstance)) { + return p_contentResource.semanticMashupInstance.resourceID; + } + if(ischosen(p_contentResource.semanticMashupJobProfile)) { + return p_contentResource.semanticMashupJobProfile.resourceID; + } //Announced resources if(ischosen(p_contentResource.accessControlPolicyAnnc)) { return f_resourceIdCleaner(p_contentResource.accessControlPolicyAnnc.resourceID); @@ -5280,6 +5295,21 @@ module OneM2M_Functions { if(ischosen(p_contentResource.timeSeriesInstance)) { return p_contentResource.timeSeriesInstance.resourceName; } + if(ischosen(p_contentResource.semanticDescriptor)) { + return p_contentResource.semanticDescriptor.resourceName; + } + if(ischosen(p_contentResource.ontologyRepository)) { + return p_contentResource.ontologyRepository.resourceName; + } + if(ischosen(p_contentResource.ontology)) { + return p_contentResource.ontology.resourceName; + } + if(ischosen(p_contentResource.semanticMashupInstance)) { + return p_contentResource.semanticMashupInstance.resourceName; + } + if(ischosen(p_contentResource.semanticMashupJobProfile)) { + return p_contentResource.semanticMashupJobProfile.resourceName; + } //Announced resources if(ischosen(p_contentResource.accessControlPolicyAnnc)) { return p_contentResource.accessControlPolicyAnnc.resourceName; diff --git a/LibOneM2M/OneM2M_Templates.ttcn b/LibOneM2M/OneM2M_Templates.ttcn index 01de67d7f01bcbf24be6ee128dc81bd188a0bcb7..d57807f7f5f89494986e5eb2381b57e651d12813 100644 --- a/LibOneM2M/OneM2M_Templates.ttcn +++ b/LibOneM2M/OneM2M_Templates.ttcn @@ -3303,8 +3303,9 @@ module OneM2M_Templates { /** * @desc Base primitiveContent for CREATE operation for SemanticDescriptor resource */ - template (value) SemanticDescriptor_optional m_contentCreateSemanticDescriptor := { - resourceName := omit, //O + template (value) SemanticDescriptor_optional m_contentCreateSemanticDescriptor(in SemanticFormat p_descriptorRepresentation := int4, + in XSD.Base64Binary p_descriptor := c_validDescriptor) := { + resourceName := omit, //O resourceType := omit, //NP resourceID := omit, //NP parentID := omit, //NP @@ -3317,9 +3318,9 @@ module OneM2M_Templates { announcedAttribute := omit, //O dynamicAuthorizationConsultationIDs := omit, //O creator := omit, //O - descriptorRepresentation := omit, //M + descriptorRepresentation := p_descriptorRepresentation, //M semanticOpExec := omit, //NP - descriptor := omit, //M + descriptor := p_descriptor, //M ontologyRef := omit, //O relatedSemantics := omit, //O semanticValidated := omit, //NP diff --git a/LibOneM2M/OneM2M_TypesAndValues.ttcn b/LibOneM2M/OneM2M_TypesAndValues.ttcn index 3aa24eaebf17ea847c1e83e8d67c41cb80746714..2346c5fcdd6b888671a7af21af806e1f7d348e18 100644 --- a/LibOneM2M/OneM2M_TypesAndValues.ttcn +++ b/LibOneM2M/OneM2M_TypesAndValues.ttcn @@ -14,6 +14,7 @@ module OneM2M_TypesAndValues { import from XSD all; import from OneM2M_Types all; import from OneM2M_Types_homeDevice all; + import from LibCommon_TextStrings all; group ResourceNames { /* Constants */ @@ -49,9 +50,9 @@ module OneM2M_TypesAndValues { const XSD.String c_defaultRoleResourceName := "MyRoleResource"; const XSD.String c_defaultTokenResourceName := "MyTokenResource"; const XSD.String c_defaultGenericInterworkingServiceResourceName := "MyGenericInterworkingServiceResource"; //<genericInterworkingService> - const XSD.String c_defaultAe1ResourceName := "MyAe1"; - const XSD.String c_defaultAe2ResourceName := "MyAe2"; - const XSD.String c_defaultAcpResourceName := "MyAcp"; + const XSD.String c_defaultAe1ResourceName := "MyAe1"; + const XSD.String c_defaultAe2ResourceName := "MyAe2"; + const XSD.String c_defaultAcpResourceName := "MyAcp"; 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> @@ -4461,5 +4462,40 @@ with { } // End of group tsSettings +group Values { + const XSD.Base64Binary c_validDescriptor := char2oct("<?xml version=""1.0""?>"&c_CRLF& + "<rdf:RDF xmlns=""http://www.onem2m.org/ontology/houses_temperature_example#"""&c_CRLF& + c_TAB&c_TAB&"xml:base=""http://www.onem2m.org/ontology/houses_temperature_example"""&c_CRLF&c_CRLF& + c_TAB&c_TAB&"xmlns:temperature_example=""http://www.onem2m.org/ontology/temperature_example#"""&c_CRLF& + c_TAB&c_TAB&"xmlns:rdf=""http://www.w3.org/1999/02/22-rdf-syntax-ns#"""&c_CRLF& + c_TAB&c_TAB&"xmlns:owl=""http://www.w3.org/2002/07/owl#"""&c_CRLF& + c_TAB&c_TAB&"xmlns:xml=""http://www.w3.org/XML/1998/namespace"""&c_CRLF& + c_TAB&c_TAB&"xmlns:xsd=""http://www.w3.org/2001/XMLSchema#"""&c_CRLF& + c_TAB&c_TAB&"xmlns:rdfs=""http://www.w3.org/2000/01/rdf-schema#"">"&c_CRLF& + "<owl:NamedIndividual rdf:about=""http://www.onem2m.org/ontology/houses_temperature_example#Fridge1"">"&c_CRLF& + "<rdf:type rdf:resource=""http://www.onem2m.org/ontology/temperature_example#Fridge""/>"&c_CRLF& + "<temperature_example:hasFridgeTemperature rdf:resource=""http://www.onem2m.org/ontology/houses_temperature_example#FridgeTempProperty""/>"&c_CRLF& + "</owl:NamedIndividual>"&c_CRLF& + "<owl:NamedIndividual rdf:about=""http://www.onem2m.org/ontology/houses_temperature_example#FridgeTempProperty"">"&c_CRLF& + "<rdf:type rdf:resource=""http://www.onem2m.org/ontology/temperature_example#TemperatureProperty""/>"&c_CRLF& + "<temperature_example:hasDatatype>xsd:double</temperature_example:hasDatatype>"&c_CRLF& + "<temperature_example:hasUnit rdf:datatype=""http://www.w3.org/2001/XMLSchema#string"">Celsius</temperature_example:hasUnit>"&c_CRLF& + "<temperature_example:valueIsStoredIn>http://in.provider.com:7579/server/tempsensorae4/temperature/latest</temperature_example:valueIsStoredIn>"&c_CRLF& + "</owl:NamedIndividual>"&c_CRLF& + "<owl:NamedIndividual rdf:about=""http://www.onem2m.org/ontology/houses_temperature_example#FridgeTempSensor"">"&c_CRLF& + "<rdf:type rdf:resource=""http://www.onem2m.org/ontology/temperature_example#TemperatureSensor""/>"&c_CRLF& + "<temperature_example:hasTemperatureMeasuringFunction rdf:resource=""http://www.onem2m.org/ontology/houses_temperature_example#TempFunction4""/>"&c_CRLF& + "</owl:NamedIndividual>"&c_CRLF& + "<owl:NamedIndividual rdf:about=""http://www.onem2m.org/ontology/houses_temperature_example#TempFunction4"">"&c_CRLF& + "<rdf:type rdf:resource=""http://www.onem2m.org/ontology/temperature_example#TemperatureMeasuringFunction""/>"&c_CRLF& + "<temperature_example:measuresTemperature rdf:resource=""http://www.onem2m.org/ontology/houses_temperature_example#FridgeTempProperty""/>"&c_CRLF& + "</owl:NamedIndividual>"&c_CRLF& + "</rdf:RDF>"); + + const charstring c_encodedValidDescriptor := "PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxyZGY6UkRGIHhtbG5zPSJodHRwOi8vd3d3Lm9uZW0ybS5vcmcvb250b2xvZ3kvaG91c2VzX3RlbXBlcmF0dXJlX2V4YW1wbGUjIgogICAgIHhtbDpiYXNlPSJodHRwOi8vd3d3Lm9uZW0ybS5vcmcvb250b2xvZ3kvaG91c2VzX3RlbXBlcmF0dXJlX2V4YW1wbGUiCiAgICAgeG1sbnM6dGVtcGVyYXR1cmVfZXhhbXBsZT0iaHR0cDovL3d3dy5vbmVtMm0ub3JnL29udG9sb2d5L3RlbXBlcmF0dXJlX2V4YW1wbGUjIgogICAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgICB4bWxuczpvd2w9Imh0dHA6Ly93d3cudzMub3JnLzIwMDIvMDcvb3dsIyIKICAgICB4bWxuczp4bWw9Imh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIKICAgICB4bWxuczp4c2Q9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIyIKICAgICB4bWxuczpyZGZzPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwLzAxL3JkZi1zY2hlbWEjIj4KCiAgICA8b3dsOk5hbWVkSW5kaXZpZHVhbCByZGY6YWJvdXQ9Imh0dHA6Ly93d3cub25lbTJtLm9yZy9vbnRvbG9neS9ob3VzZXNfdGVtcGVyYXR1cmVfZXhhbXBsZSNIb3VzZTEiPgogICAgICAgIDxyZGY6dHlwZSByZGY6cmVzb3VyY2U9Imh0dHA6Ly93d3cub25lbTJtLm9yZy9vbnRvbG9neS90ZW1wZXJhdHVyZV9leGFtcGxlI0hvdXNlIi8+CiAgICAgICAgPHRlbXBlcmF0dXJlX2V4YW1wbGU6aGFzSW5kb29yVGVtcGVyYXR1cmUgcmRmOnJlc291cmNlPSJodHRwOi8vd3d3Lm9uZW0ybS5vcmcvb250b2xvZ3kvaG91c2VzX3RlbXBlcmF0dXJlX2V4YW1wbGUjSW5kb29yVGVtcFByb3BlcnR5MSIvPgogICAgPC9vd2w6TmFtZWRJbmRpdmlkdWFsPgoKICAgIDxvd2w6TmFtZWRJbmRpdmlkdWFsIHJkZjphYm91dD0iaHR0cDovL3d3dy5vbmVtMm0ub3JnL29udG9sb2d5L2hvdXNlc190ZW1wZXJhdHVyZV9leGFtcGxlI0luZG9vclRlbXBQcm9wZXJ0eTEiPgogICAgICAgIDxyZGY6dHlwZSByZGY6cmVzb3VyY2U9Imh0dHA6Ly93d3cub25lbTJtLm9yZy9vbnRvbG9neS90ZW1wZXJhdHVyZV9leGFtcGxlI1RlbXBlcmF0dXJlUHJvcGVydHkiLz4KICAgICAgICA8dGVtcGVyYXR1cmVfZXhhbXBsZTpoYXNEYXRhdHlwZT54c2Q6aW50PC90ZW1wZXJhdHVyZV9leGFtcGxlOmhhc0RhdGF0eXBlPgogICAgICAgIDx0ZW1wZXJhdHVyZV9leGFtcGxlOmhhc1VuaXQ+RmFocmVuaGVpdDwvdGVtcGVyYXR1cmVfZXhhbXBsZTpoYXNVbml0PgogICAgICAgIDx0ZW1wZXJhdHVyZV9leGFtcGxlOnZhbHVlSXNTdG9yZWRJbj5odHRwOi8vaW4ucHJvdmlkZXIuY29tOjc1Nzkvc2VydmVyL3RlbXBzZW5zb3JhZTEvdGVtcGVyYXR1cmUvbGF0ZXN0PC90ZW1wZXJhdHVyZV9leGFtcGxlOnZhbHVlSXNTdG9yZWRJbj4KICAgIDwvb3dsOk5hbWVkSW5kaXZpZHVhbD4KCiAgICA8b3dsOk5hbWVkSW5kaXZpZHVhbCByZGY6YWJvdXQ9Imh0dHA6Ly93d3cub25lbTJtLm9yZy9vbnRvbG9neS9ob3VzZXNfdGVtcGVyYXR1cmVfZXhhbXBsZSNJbmRvb3JUZW1wU2Vuc29yMSI+CiAgICAgICAgPHJkZjp0eXBlIHJkZjpyZXNvdXJjZT0iaHR0cDovL3d3dy5vbmVtMm0ub3JnL29udG9sb2d5L3RlbXBlcmF0dXJlX2V4YW1wbGUjVGVtcGVyYXR1cmVTZW5zb3IiLz4KICAgICAgICA8dGVtcGVyYXR1cmVfZXhhbXBsZTpoYXNUZW1wZXJhdHVyZU1lYXN1cmluZ0Z1bmN0aW9uIHJkZjpyZXNvdXJjZT0iaHR0cDovL3d3dy5vbmVtMm0ub3JnL29udG9sb2d5L2hvdXNlc190ZW1wZXJhdHVyZV9leGFtcGxlI1RlbXBGdW5jdGlvbjEiLz4KICAgIDwvb3dsOk5hbWVkSW5kaXZpZHVhbD4KCjwvcmRmOlJERj4="; + + +}//end of Values group + } // end of module diff --git a/OneM2M_Testcases_CSE_Release_3.ttcn b/OneM2M_Testcases_CSE_Release_3.ttcn index 12a7e215a580fc068068f0e58e7da242c346fa08..8b43aead780cce23d95ff31e1975790d309091fd 100644 --- a/OneM2M_Testcases_CSE_Release_3.ttcn +++ b/OneM2M_Testcases_CSE_Release_3.ttcn @@ -13612,9 +13612,9 @@ module OneM2M_Testcases_CSE_Release_3 { var template RequestPrimitive v_request; var integer v_aeIndex := -1; var ResourceType v_resourceType := int24; //Semantic Descriptor - var template (omit) XSD.Base64Binary invalidDescriptor := '1234'O; + var template (omit) XSD.Base64Binary v_invalidDescriptor := char2oct("WrongDescriptor"); - // Test control + // Test control // Test component configuration f_cf01Up(); @@ -13626,12 +13626,12 @@ module OneM2M_Testcases_CSE_Release_3 { // Test Body v_request := f_getCreateRequestPrimitive(v_resourceType, m_createSemanticDescriptorBase, v_aeIndex); v_request.from_ := f_getOriginator(v_aeIndex); - v_request.primitiveContent.semanticDescriptor.descriptor := invalidDescriptor; - + v_request.primitiveContent.semanticDescriptor.descriptor := v_invalidDescriptor; + f_send(e_mcaPort, m_request(valueof(v_request))); tc_ac.start; alt { - [] mcaPort.receive(mw_response(mw_responsePrimitive(int4005))) { + [] mcaPort.receive(mw_response(mw_responsePrimitive(int4000))) { tc_ac.stop; setverdict(pass, __SCOPE__ & ": Semantic Descripter creation rejected with expected error code."); } @@ -13787,10 +13787,8 @@ module OneM2M_Testcases_CSE_Release_3 { var integer v_aeIndex := -1; var integer v_ontologyRepResourceIndex := -1; var integer v_remoteOntologyResourceIndex := -1; - var XSD.ID v_RemoteOntologyResourceAddress; - var template RequestPrimitive v_requestSd; - var MsgIn v_request; - var ResponsePrimitive v_response; + var XSD.ID v_remoteOntologyResourceAddress; + var template RequestPrimitive v_requestSemanticDescriptor; // Test control @@ -13802,37 +13800,40 @@ module OneM2M_Testcases_CSE_Release_3 { // Preamble // AE registration vc_ae1.start(f_cse_preamble_registerAe()); - vc_ae1.done; - v_aeIndex := f_getLatestResource(vc_ae1); f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1); + + v_aeIndex := f_getLatestResource(vc_ae1); + // CSE registraion f_cse_registerRemoteCse(m_createRemoteCSE_poa(vc_cseSimuDesc.cseId, -, -, -, -, {f_getLocalPoA()})); // Create ontology resource at CSE1 v_ontologyRepResourceIndex := f_generateAndSetLocalResource(valueof(m_primitiveContentOntologyRepository(m_contentCreateOntologyRepository)), vc_cSEBaseIndex, int38); v_remoteOntologyResourceIndex := f_generateAndSetLocalResource(valueof(m_primitiveContentOntology(m_contentCreateOntology)), v_ontologyRepResourceIndex, int39); - v_RemoteOntologyResourceAddress := f_getResourceAddress(v_remoteOntologyResourceIndex); + v_remoteOntologyResourceAddress := f_getResourceAddress(v_remoteOntologyResourceIndex); - v_requestSd := m_createSemanticDescriptorBase; + v_requestSemanticDescriptor := m_createSemanticDescriptorBase; // ontologyRef points to ontology resource in another CSE - v_requestSd.primitiveContent.semanticDescriptor.ontologyRef := v_RemoteOntologyResourceAddress; - v_requestSd.primitiveContent.semanticDescriptor.validationEnable := true; - vc_ae1.start(f_cse_createResource(int24, v_requestSd, v_aeIndex)); + v_requestSemanticDescriptor.primitiveContent.semanticDescriptor.ontologyRef := v_remoteOntologyResourceAddress; + v_requestSemanticDescriptor.primitiveContent.semanticDescriptor.validationEnable := true; + vc_ae1.start(f_cse_createResource(int24, v_requestSemanticDescriptor, v_aeIndex)); tc_ac.start; alt { - [] mccPortIn.receive(mw_request(mw_retrieve(v_RemoteOntologyResourceAddress))) -> value v_request { + [] mccPortIn.receive(mw_request(mw_retrieve(v_remoteOntologyResourceAddress))) -> value vc_request { tc_ac.stop; setverdict(pass, __SCOPE__ & ": Retrieve request for Reference Ontology received."); - v_response := valueof(m_responsePrimitive(int2000,v_request.primitive.requestPrimitive.requestIdentifier)); - v_response.primitiveContent := vc_localResourcesList[v_remoteOntologyResourceIndex].resource; - v_response.from_ := vc_cseSimuDesc.cseId; - v_response.to_ := v_request.primitive.requestPrimitive.from_; - f_send(e_mccPortIn, m_response(v_response)); + + f_processRetrieveRequestPrimitive(vc_request.primitive.requestPrimitive, -, v_remoteOntologyResourceIndex); + f_send(e_mccPortIn, m_response(vc_response.primitive.responsePrimitive)); } [] mccPortIn.receive(mw_request(mw_retrieve(?))) { tc_ac.stop; setverdict(fail, __SCOPE__ & ": Wrong Retrieve request received"); + + f_processRetrieveRequestPrimitive(vc_request.primitive.requestPrimitive, int4004, v_remoteOntologyResourceIndex); + f_send(e_mccPortIn, m_response(vc_response.primitive.responsePrimitive)); + } [] tc_ac.timeout { setverdict(fail, __SCOPE__ & ": No answer while retargeting request"); @@ -13841,13 +13842,12 @@ module OneM2M_Testcases_CSE_Release_3 { f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1); - vc_ae1.done; - // Postamble f_cse_postamble_deleteResourcesCSE(); // Tear down f_cf02DownCseSimuMaster(); + }//end function f_CSE_SEM_CRE_004 /** @@ -13858,8 +13858,7 @@ module OneM2M_Testcases_CSE_Release_3 { var AeSimu v_ae1 := AeSimu.create("AE1") alive; v_ae1.start(f_CSE_SEM_CRE_005()); - - v_ae1.done; + v_ae1.done; } function f_CSE_SEM_CRE_005() runs on AeSimu system CseSystem { @@ -13869,7 +13868,7 @@ module OneM2M_Testcases_CSE_Release_3 { var integer v_remoteOntologyIndex := -1; var XSD.ID v_remoteOntologyRepoAddress; var XSD.ID v_remoteOntologyAddress; - var RequestPrimitive v_requestSd; + var RequestPrimitive v_requestSemanticDescriptor; // Test control // Test component configuration @@ -13898,16 +13897,16 @@ module OneM2M_Testcases_CSE_Release_3 { vc_cse1.start(f_cse_retrieveResourceHandler(v_remoteOntologyIndex)); //Create Semeantic Descriptor - v_requestSd := f_getCreateRequestPrimitive(int24, m_createSemanticDescriptorBase, v_aeIndex); - v_requestSd.primitiveContent.semanticDescriptor.ontologyRef := v_remoteOntologyAddress; - v_requestSd.primitiveContent.semanticDescriptor.validationEnable := true; - f_send(e_mcaPort, m_request(v_requestSd)); + v_requestSemanticDescriptor := f_getCreateRequestPrimitive(int24, m_createSemanticDescriptorBase, v_aeIndex); + v_requestSemanticDescriptor.primitiveContent.semanticDescriptor.ontologyRef := v_remoteOntologyAddress; + v_requestSemanticDescriptor.primitiveContent.semanticDescriptor.validationEnable := true; + f_send(e_mcaPort, m_request(v_requestSemanticDescriptor)); tc_ac.start; alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2000))) { tc_ac.stop; - setverdict(pass, __SCOPE__ & ": Rejected the creation request of Semantic Mashup Instance resource with expected status code BAD_REQUEST"); + setverdict(pass, __SCOPE__ & ": Resource type 24 created successfully"); } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { tc_ac.stop; @@ -13946,9 +13945,9 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_006() runs on AeSimu system CseSystem { // Local variables var integer v_aeIndex := -1; - var XSD.AnyURI v_invalidSmjpID := "Invlid_AnyURI"; + var XSD.AnyURI v_invalidSmjpID := "Invalid_AnyURI"; var RequestPrimitive v_request; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceSemanticMashupJobProfileIndex := -1; // Test control @@ -13962,11 +13961,10 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // semanticMashupJobProfile - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); - - v_request := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); - v_request.primitiveContent.semanticMashupInstance.smjpID := v_invalidSmjpID; + v_resourceSemanticMashupJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_request := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase(v_invalidSmjpID,-, -, - ), v_aeIndex); + f_send(e_mcaPort, m_request(v_request)); tc_ac.start; alt { @@ -14009,7 +14007,7 @@ module OneM2M_Testcases_CSE_Release_3 { var MsgIn v_response; var integer v_aeIndex := -1; var integer v_resourceIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceSemanticMashupJobProfileIndex := -1; const octetstring v_invalidSmjpInputParameter := int2oct(0,65537); var RequestPrimitive v_request; @@ -14025,15 +14023,11 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // semanticMashupJobProfile - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceSemanticMashupJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); // semanticMashupInstance - v_request := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); - v_request.to_ := f_getResourceAddress(v_resourceIndexJobProfile); - v_request.from_ := f_getOriginator(v_aeIndex); - v_request.primitiveContent.semanticMashupInstance.smjpID := f_getResourceAddress(v_resourceIndexJobProfile); - v_request.primitiveContent.semanticMashupInstance.smjpInputParameter := v_invalidSmjpInputParameter; - + v_request := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase(f_getResourceAddress(v_resourceSemanticMashupJobProfileIndex), v_invalidSmjpInputParameter, -, -), v_aeIndex); + f_send(e_mcaPort, m_request(v_request)); tc_ac.start; alt { @@ -14073,12 +14067,10 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_008() runs on AeSimu system CseSystem { // Local variables - var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceSemanticMashupJobProfileIndex := -1; const octetstring v_invalidSmjpInputParameter := int2oct(0,76584); - var XSD.Base64Binary v_validInputDescriptor:= int2oct(0,65000); //TO DO - var RequestPrimitive v_MashupInstancerequest; + var RequestPrimitive v_requestMashupInstance; // Test control @@ -14092,17 +14084,13 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); //Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceSemanticMashupJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); //Create Mashup Instance - v_MashupInstancerequest := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); //smjpID set to reference to <semanticMashupJobProfile> resource - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.smjpID := f_getOriginator(v_resourceIndexJobProfile); - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.smjpInputParameter := v_invalidSmjpInputParameter; - v_MashupInstancerequest.to_ := f_getResourceAddress(v_resourceIndexJobProfile); - v_MashupInstancerequest.from_ := f_getOriginator(v_aeIndex); + v_requestMashupInstance := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase(f_getResourceAddress(v_resourceSemanticMashupJobProfileIndex), v_invalidSmjpInputParameter, -, -), v_aeIndex); - f_send(e_mcaPort, m_request(v_MashupInstancerequest)); + f_send(e_mcaPort, m_request(v_requestMashupInstance)); tc_ac.start; alt { @@ -14142,10 +14130,9 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_009() runs on AeSimu system CseSystem { // Local variables // Local variables - var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; - var RequestPrimitive v_MashupInstancerequest; + var integer v_resourceSemanticMashupJobProfileIndex := -1; + var RequestPrimitive v_requestMashupInstance; //member filter query to identify a non existing member var XSD.String v_memberFilter := "SELECT \?name WHERE { \?x foaf:name \?name FILTER regex(\?name, \^mem\, \i\ }"; var template RequestPrimitive v_createRequestJobProfile := m_createSemanticMashupJobProfileBase; @@ -14164,17 +14151,13 @@ module OneM2M_Testcases_CSE_Release_3 { // Create JobProfile resource // member filter query to identify a non existing member v_createRequestJobProfile.primitiveContent.semanticMashupJobProfile.memberFilter := v_memberFilter; - v_resourceIndexJobProfile := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); + v_resourceSemanticMashupJobProfileIndex := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); //Create Mashup Instance - v_MashupInstancerequest := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); //smjpID set to reference to <semanticMashupJobProfile> resource - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.smjpID := f_getOriginator(v_resourceIndexJobProfile); - //v_MashupInstancerequest.primitiveContent.semanticMashupInstance.smjpInputParameter := v_smjpInputParameter; - v_MashupInstancerequest.to_ := f_getResourceAddress(v_resourceIndexJobProfile); - v_MashupInstancerequest.from_ := f_getOriginator(v_aeIndex); + v_requestMashupInstance := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase(f_getResourceAddress(v_resourceSemanticMashupJobProfileIndex), -, -, -), v_resourceSemanticMashupJobProfileIndex); - f_send(e_mcaPort, m_request(v_MashupInstancerequest)); + f_send(e_mcaPort, m_request(v_requestMashupInstance)); tc_ac.start; alt { @@ -14213,10 +14196,9 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_010() runs on AeSimu system CseSystem { // Local variables - var MsgIn v_response; var integer v_aeIndex := -1; var integer v_resourceIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceSemanticMashupJobProfileIndex := -1; const octetstring v_invalidInputDescriptor := int2oct(0,65537); var RequestPrimitive v_request; @@ -14274,10 +14256,8 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_011() runs on AeSimu system CseSystem { // Local variables - var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceSemanticMashupJobProfileIndex := -1; const octetstring v_invalidOutputDescriptor := int2oct(0,65537); var RequestPrimitive v_request; @@ -14293,8 +14273,7 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // semanticMashupJobProfile - v_request := f_getCreateRequestPrimitive(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); - v_request.primitiveContent.semanticMashupJobProfile.outputDescriptor := v_invalidOutputDescriptor; + v_request := f_getCreateRequestPrimitive(int40, m_createSemanticMashupJobProfileBase(-, v_invalidOutputDescriptor, -), v_aeIndex); f_send(e_mcaPort, m_request(v_request)); @@ -14335,10 +14314,8 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_012() runs on AeSimu system CseSystem { // Local variables - var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceSemanticMashupJobProfileIndex := -1; var ResourceType v_resourceTypeJobProfile := int40; const octetstring v_invalidFunctionDescriptor := int2oct(0,65537); var RequestPrimitive v_request; @@ -14355,8 +14332,7 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // semanticMashupJobProfile - v_request := f_getCreateRequestPrimitive(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); - v_request.primitiveContent.semanticMashupJobProfile.functionDescriptor := v_invalidFunctionDescriptor; + v_request := f_getCreateRequestPrimitive(int40, m_createSemanticMashupJobProfileBase(-, -, v_invalidFunctionDescriptor), v_aeIndex); f_send(e_mcaPort, m_request(v_request)); @@ -14397,10 +14373,8 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_013() runs on AeSimu system CseSystem { // Local variables - var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceSemanticMashupJobProfileIndex := -1; var ResourceType v_resourceTypeJobProfile := int40; var RequestPrimitive v_request; var Sparql v_invalidMemberFilter := "PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECTECTION ?name WHERE { ?person foaf:name ?name . }"; @@ -14417,7 +14391,7 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // semanticMashupJobProfile - v_request := f_getCreateRequestPrimitive(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_request := f_getCreateRequestPrimitive(int40, m_createSemanticMashupJobProfileBase(v_invalidMemberFilter, -, -), v_aeIndex); v_request.primitiveContent.semanticMashupJobProfile.memberFilter := v_invalidMemberFilter; f_send(e_mcaPort, m_request(v_request)); @@ -14462,8 +14436,8 @@ module OneM2M_Testcases_CSE_Release_3 { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; - var RequestPrimitive v_MashupInstancerequest; + var integer v_resourceSemanticMashupJobProfileIndex := -1; + var RequestPrimitive v_requestMashupInstance; var template RequestPrimitive v_createRequestJobProfile := m_createSemanticMashupJobProfileBase; // Test control @@ -14478,16 +14452,13 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); + v_resourceSemanticMashupJobProfileIndex := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); //Create Mashup Instance - v_MashupInstancerequest := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); //smjpID set to reference to <semanticMashupJobProfile> resource - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.smjpID := f_getOriginator(v_resourceIndexJobProfile); - v_MashupInstancerequest.to_ := f_getResourceAddress(v_resourceIndexJobProfile); - v_MashupInstancerequest.from_ := f_getOriginator(v_aeIndex); + v_requestMashupInstance := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase(f_getResourceAddress(v_resourceSemanticMashupJobProfileIndex), -, -, -), v_aeIndex); - f_send(e_mcaPort, m_request(v_MashupInstancerequest)); + f_send(e_mcaPort, m_request(v_requestMashupInstance)); tc_ac.start; alt { @@ -14531,10 +14502,9 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_CRE_015() runs on AeSimu system CseSystem { // Local variables // Local variables - var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; - var RequestPrimitive v_MashupInstancerequest; + var integer v_resourceSemanticMashupJobProfileIndex := -1; + var RequestPrimitive v_requestMashupInstance; var template RequestPrimitive v_createRequestJobProfile := m_createSemanticMashupJobProfileBase; // Test control @@ -14549,18 +14519,15 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); + v_resourceSemanticMashupJobProfileIndex := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); //Create Mashup Instance - v_MashupInstancerequest := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); //smjpID set to reference to <semanticMashupJobProfile> resource - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.smjpID := f_getOriginator(v_resourceIndexJobProfile); + v_requestMashupInstance := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase(f_getResourceAddress(v_resourceSemanticMashupJobProfileIndex), -, -, -), v_aeIndex); // resultGenType is set to WHEN_SMI_IS_CREATED - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.resultGenType := int1; - v_MashupInstancerequest.to_ := f_getResourceAddress(v_resourceIndexJobProfile); - v_MashupInstancerequest.from_ := f_getOriginator(v_aeIndex); - - f_send(e_mcaPort, m_request(v_MashupInstancerequest)); + v_requestMashupInstance.primitiveContent.semanticMashupInstance.resultGenType := int1; + + f_send(e_mcaPort, m_request(v_requestMashupInstance)); tc_ac.start; alt { @@ -14606,11 +14573,11 @@ module OneM2M_Testcases_CSE_Release_3 { // Local variables var MsgIn v_response; var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; - var RequestPrimitive v_MashupInstancerequest; + var integer v_resourceSemanticMashupJobProfileIndex := -1; + var RequestPrimitive v_requestMashupInstance; var template RequestPrimitive v_createRequestJobProfile := m_createSemanticMashupJobProfileBase; // 5sec nw delay assumed. - timer t_resultPerdiod := 15.0; + timer t_resultPeriod := 15.0; var integer v_reponseCount := 0; // Test control @@ -14625,22 +14592,19 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); + v_resourceSemanticMashupJobProfileIndex := f_cse_createResource(int40, v_createRequestJobProfile, v_aeIndex); //Create Mashup Instance - v_MashupInstancerequest := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); //smjpID set to reference to <semanticMashupJobProfile> resource - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.smjpID := f_getOriginator(v_resourceIndexJobProfile); + v_requestMashupInstance := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase(f_getResourceAddress(v_resourceSemanticMashupJobProfileIndex), -, -, -), v_aeIndex); // resultGenType is set to PERIODICALLY - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.resultGenType := int3; + v_requestMashupInstance.primitiveContent.semanticMashupInstance.resultGenType := int3; // timer set to 5sec - v_MashupInstancerequest.primitiveContent.semanticMashupInstance.periodForResultGen := "PT10S"; - v_MashupInstancerequest.to_ := f_getResourceAddress(v_resourceIndexJobProfile); - v_MashupInstancerequest.from_ := f_getOriginator(v_aeIndex); - - f_send(e_mcaPort, m_request(v_MashupInstancerequest)); + v_requestMashupInstance.primitiveContent.semanticMashupInstance.periodForResultGen := "PT10S"; + + f_send(e_mcaPort, m_request(v_requestMashupInstance)); - // t_resultPerdiod.start; + t_resultPeriod.start; alt { [] mcaPort.receive(mw_response(mw_responsePrimitive(int2001))) { @@ -14658,14 +14622,14 @@ module OneM2M_Testcases_CSE_Release_3 { // } } [] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { - t_resultPerdiod.stop; + t_resultPeriod.stop; setverdict(fail, __SCOPE__ & ": Wrong return code received."); } [] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { - t_resultPerdiod.stop; + t_resultPeriod.stop; setverdict(fail, __SCOPE__ & ": Unexpected message received."); } - [] t_resultPerdiod.timeout { + [] t_resultPeriod.timeout { setverdict(fail, __SCOPE__ & ": No response even after time out period of 15sec"); } } @@ -14702,11 +14666,10 @@ module OneM2M_Testcases_CSE_Release_3 { var template RequestPrimitive p_createRequestPrimitive := m_createSemanticDescriptorBase; var template RequestPrimitive p_updateRequestPrimitive := m_updateSemanticDescriptorBase; var ResourceType p_resourceType := int24; //Semantic Descriptor - const octetstring v_descriptor := int2oct(0,65000); - var XSD.String v_semanticOpExec := "SELECT \?name WHERE { \?x foaf:name \?name FILTER regex(\?name, \^semD\, \i\ }"; + var XSD.String v_semanticOpExec := "DELETE { ?person <http://bigco.example/HR/Person/fname> 'Miguel' }"; // Test control - + // Test component configuration f_cf01Up(); @@ -14717,11 +14680,12 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); //Create Semantic Descritor + p_createRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := c_validDescriptor; v_resourceIndex := f_cse_createResource(p_resourceType, p_createRequestPrimitive, v_aeIndex); // Test Body p_updateRequestPrimitive.primitiveContent.semanticDescriptor.semanticOpExec := v_semanticOpExec; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := v_descriptor; + p_updateRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := c_validDescriptor; v_request := f_getUpdateRequestPrimitive(p_resourceType, v_resourceIndex, p_updateRequestPrimitive); @@ -14747,6 +14711,7 @@ module OneM2M_Testcases_CSE_Release_3 { // Tear down f_cf01Down(); + }//end function f_CSE_SEM_UPD_001 @@ -14770,8 +14735,8 @@ module OneM2M_Testcases_CSE_Release_3 { var template RequestPrimitive p_createRequestPrimitive := m_createSemanticDescriptorBase; var template RequestPrimitive p_updateRequestPrimitive := m_updateSemanticDescriptorBase; var ResourceType p_resourceType := int24; //Semantic Descriptor - var XSD.String v_semanticOpExec := "SELECT WHERE FILTER name"; - + var XSD.String v_semanticOpExec := "SELECT WHERE FILTER name";//Invalid SPARQL query + // Test control // Test component configuration @@ -14784,12 +14749,11 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Test Body + p_createRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := c_validDescriptor; v_resourceIndex := f_cse_createResource(p_resourceType, p_createRequestPrimitive, v_aeIndex); p_updateRequestPrimitive.primitiveContent.semanticDescriptor.semanticOpExec := v_semanticOpExec; - p_updateRequestPrimitive.to_ := f_getResourceAddress(v_resourceIndex); - p_updateRequestPrimitive.from_ := f_getOriginator(v_aeIndex); v_request := f_getUpdateRequestPrimitive(p_resourceType, v_resourceIndex, p_updateRequestPrimitive); f_send(e_mcaPort, m_request(v_request)); @@ -14814,6 +14778,7 @@ module OneM2M_Testcases_CSE_Release_3 { // Tear down f_cf01Down(); + }//end function f_CSE_SEM_UPD_002 /** @@ -14836,9 +14801,8 @@ module OneM2M_Testcases_CSE_Release_3 { var template RequestPrimitive p_createRequestPrimitive := m_createSemanticDescriptorBase; var template RequestPrimitive p_updateRequestPrimitive := m_updateSemanticDescriptorBase; var ResourceType p_resourceType := int24; //Semantic Descriptor - const octetstring v_descriptor := int2oct(0,870009); //Base64Binary - - + var template (omit) XSD.Base64Binary v_invalidDescriptor := char2oct("WrongDescriptor"); + // Test control // Test component configuration @@ -14851,12 +14815,11 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Test Body + p_createRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := c_validDescriptor; v_resourceIndex := f_cse_createResource(p_resourceType, p_createRequestPrimitive, v_aeIndex); - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := v_descriptor; + p_updateRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := v_invalidDescriptor; - p_updateRequestPrimitive.to_ := f_getResourceAddress(v_resourceIndex); - p_updateRequestPrimitive.from_ := f_getOriginator(v_aeIndex); v_request := f_getUpdateRequestPrimitive(p_resourceType, v_resourceIndex, p_updateRequestPrimitive); f_send(e_mcaPort, m_request(v_request)); @@ -14881,6 +14844,7 @@ module OneM2M_Testcases_CSE_Release_3 { // Tear down f_cf01Down(); + }//end function f_CSE_SEM_UPD_003 /** @@ -14900,13 +14864,9 @@ module OneM2M_Testcases_CSE_Release_3 { // Local variables var integer v_aeIndex, v_remoteCseIndex, v_targetResourceIndex := -1; var integer v_resourceIndex := -1; - var template RequestPrimitive p_updateRequestPrimitive := m_updateSemanticDescriptorBase; - var RequestPrimitive v_request; - var ResourceType p_resourceType := int24; //Semantic Descriptor + var template RequestPrimitive v_updateRequestPrimitive := m_updateSemanticDescriptorBase; var boolean v_validationEnable := true; - const octetstring v_descriptor := int2oct(0,65000); //Base64Binary var XSD.AnyURI v_ontologyRef := "NotInitialized"; - var XSD.ID v_targetResourceAddress := "NotInitialized"; // Test control @@ -14917,29 +14877,31 @@ module OneM2M_Testcases_CSE_Release_3 { // Preamble vc_ae1.start(f_cse_preamble_registerAe()); - vc_ae1.done; f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1); + v_remoteCseIndex := f_cse_registerRemoteCse(m_createRemoteCSE_poa(vc_cseSimuDesc.cseId, -, -, -, -, {f_getLocalPoA()})); // Test Body v_aeIndex := f_getLatestResource(vc_ae1); - v_targetResourceIndex := f_generateAndSetLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), v_aeIndex, int24); - - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := v_validationEnable; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := v_descriptor; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_ontologyRef; + v_targetResourceIndex := f_generateAndSetLocalResource(valueof(m_primitiveContentOntologyRepository(m_contentCreateOntologyRepository)), vc_cSEBaseIndex, int38); + v_targetResourceIndex := f_generateAndSetLocalResource(valueof(m_primitiveContentOntology(m_contentCreateOntology)), v_targetResourceIndex, int39); - - p_updateRequestPrimitive.to_ := f_getResourceAddress(v_resourceIndex); - p_updateRequestPrimitive.from_ := f_getOriginator(v_aeIndex); + vc_ae1.start(f_cse_createResource(int24, m_createSemanticDescriptorBase, v_aeIndex)); + f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1); - v_request := f_getUpdateRequestPrimitive(p_resourceType, v_resourceIndex, p_updateRequestPrimitive); + v_resourceIndex := f_getLatestResource(vc_ae1); + + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := v_validationEnable; + v_ontologyRef := f_getResourceAddress(v_targetResourceIndex); + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_ontologyRef; - vc_ae1.start(f_cse_operationResource(v_request)); + v_updateRequestPrimitive := f_getUpdateRequestPrimitive(int24, v_resourceIndex, v_updateRequestPrimitive); + + vc_ae1.start(f_cse_operationResource(v_updateRequestPrimitive)); tc_ac.start; alt { - [] mccPortIn.receive(mw_request(mw_retrieve(v_targetResourceAddress))) -> value vc_request { + [] mccPortIn.receive(mw_request(mw_retrieve(v_ontologyRef))) -> value vc_request { tc_ac.stop; setverdict(pass, __SCOPE__ & ": Retrieved the referenced ontology successfully."); f_processRetrieveRequestPrimitive(vc_request.primitive.requestPrimitive); @@ -14979,14 +14941,11 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_UPD_005() runs on AeSimu system CseSystem { var integer v_aeIndex := -1; - var integer v_cseBaseIndex := -1; var integer v_resourceIndexSd := -1; - var XSD.ID v_remoteOntologyRepoAddress; var XSD.ID v_remoteOntologyAddress; var integer v_remoteOntologyRepoIndex := -1; var integer v_remoteOntologyIndex := -1; - var RequestPrimitive v_updateRequest; - var template RequestPrimitive p_updateSdRequestPrimitive := m_updateSemanticDescriptorBase; + var RequestPrimitive v_updateSdRequestPrimitive := m_updateSemanticDescriptorBase; // Test control @@ -14997,14 +14956,12 @@ module OneM2M_Testcases_CSE_Release_3 { // Preamble v_aeIndex := f_cse_preamble_registerAe(); - v_cseBaseIndex := f_getLatestLocalResourceIndex(vc_cse1); - + vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSE_poa(-, -, -, -, -, {f_getLocalPoA()}))); f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1); - vc_cse1.start(f_generateAndSetLocalResource(valueof(m_primitiveContentOntologyRepository(m_contentCreateOntologyRepository)), v_cseBaseIndex, int38)); + vc_cse1.start(f_generateAndSetLocalResource(valueof(m_primitiveContentOntologyRepository(m_contentCreateOntologyRepository)), -, int38)); f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1); - v_remoteOntologyRepoAddress := f_getLatestLocalResourceAddress(vc_cse1, e_nonHierarchical, e_cseRelative); v_remoteOntologyRepoIndex := f_getLatestLocalResourceIndex(vc_cse1); // Ontology resource in remote CSE @@ -15021,10 +14978,10 @@ module OneM2M_Testcases_CSE_Release_3 { vc_cse1.start(f_cse_retrieveResourceHandler(v_remoteOntologyIndex)); // Update the Semantic Descriptor including ontologyRef - p_updateSdRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_remoteOntologyAddress; - p_updateSdRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := true; - v_updateRequest := f_getUpdateRequestPrimitive(int24, v_resourceIndexSd, p_updateSdRequestPrimitive); - f_send(e_mcaPort, m_request(v_updateRequest)); + v_updateSdRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_remoteOntologyAddress; + v_updateSdRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := true; + v_updateSdRequestPrimitive := f_getUpdateRequestPrimitive(int24, v_resourceIndexSd, v_updateSdRequestPrimitive); + f_send(e_mcaPort, m_request(v_updateSdRequestPrimitive)); tc_ac.start; alt { @@ -15045,8 +15002,6 @@ module OneM2M_Testcases_CSE_Release_3 { } } f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1); - vc_cse1.done; - // Postamble f_cse_postamble_deleteResources(); @@ -15073,9 +15028,8 @@ module OneM2M_Testcases_CSE_Release_3 { // Local variables var integer v_aeIndex, v_remoteCseIndex, v_targetResourceIndex := -1; var integer v_resourceIndex := -1; - var template RequestPrimitive p_updateRequestPrimitive := m_updateSemanticDescriptorBase; + var template RequestPrimitive v_updateRequestPrimitive := m_updateSemanticDescriptorBase; var RequestPrimitive v_request; - var ResourceType p_resourceType := int24; //Semantic Descriptor var boolean v_validationEnable := true; const octetstring v_descriptor := int2oct(0,65000); //Base64Binary var XSD.AnyURI v_ontologyRef := "NotInitialized"; @@ -15097,20 +15051,20 @@ module OneM2M_Testcases_CSE_Release_3 { // Test Body v_aeIndex := f_getLatestResource(vc_ae1); - v_targetResourceIndex := f_generateAndSetLocalResource(valueof(m_primitiveContentContainer(m_contentCreateContainer)), v_aeIndex, int24); + v_targetResourceIndex := f_generateAndSetLocalResource(valueof(m_primitiveContentSemanticDescriptor(m_contentCreateSemanticDescriptor)), -, int24); - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := v_validationEnable; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := v_descriptor; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_ontologyRef; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.relatedSemantics := v_relatedSemantics; //linked semantic descriptor + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := v_validationEnable; + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.descriptor := v_descriptor; + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_ontologyRef; + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.relatedSemantics := v_relatedSemantics; //linked semantic descriptor - p_updateRequestPrimitive.to_ := f_getResourceAddress(v_resourceIndex); - p_updateRequestPrimitive.from_ := f_getOriginator(v_aeIndex); + v_updateRequestPrimitive.to_ := f_getResourceAddress(v_resourceIndex); + v_updateRequestPrimitive.from_ := f_getOriginator(v_aeIndex); v_targetResourceAddress := f_getResourceAddress(v_resourceIndex) & "/" & c_resourceShortNameSemanticValidation; - v_request := f_getUpdateRequestPrimitive(p_resourceType, v_targetResourceIndex, p_updateRequestPrimitive); + v_request := f_getUpdateRequestPrimitive(int24, v_targetResourceIndex, v_updateRequestPrimitive); vc_ae1.start(f_cse_operationResource(v_request)); @@ -15162,7 +15116,7 @@ module OneM2M_Testcases_CSE_Release_3 { var XSD.AnyURI v_ontologyRef; var XSD.AnyURI v_uriSemanticDescriptorCse1; var XSD.AnyURI v_semanticValidationAddress; - var template RequestPrimitive p_updateRequestPrimitive := m_updateSemanticDescriptorBase; + var template RequestPrimitive v_updateRequestPrimitive := m_updateSemanticDescriptorBase; var RequestPrimitive v_updateRequest; // Test control @@ -15191,17 +15145,17 @@ module OneM2M_Testcases_CSE_Release_3 { v_semanticDescriptorCse1Index := f_getLatestLocalResourceIndex(vc_cse1); //Compose Semantic Descriptor resource with link to Semantic Descriptor in remoteCSE - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := true; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_ontologyRef; - p_updateRequestPrimitive.primitiveContent.semanticDescriptor.relatedSemantics := {v_uriSemanticDescriptorCse1}; + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := true; + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_ontologyRef; + v_updateRequestPrimitive.primitiveContent.semanticDescriptor.relatedSemantics := {v_uriSemanticDescriptorCse1}; // Handle IUT retrive request of linked semantics from remoteCSE vc_cse1.start(f_cse_retrieveResourceHandler(v_semanticDescriptorCse1Index)); // Send UPDATE request to virtual resource <semanticValidation> v_semanticValidationAddress := f_getResourceAddress(v_ontologyRepoIndex) & "/" & c_resourceShortNameSemanticValidation; - p_updateRequestPrimitive.to_ := v_semanticValidationAddress; - v_updateRequest := f_getUpdateRequestPrimitive(int24, v_ontologyRepoIndex, p_updateRequestPrimitive); + v_updateRequestPrimitive.to_ := v_semanticValidationAddress; + v_updateRequest := f_getUpdateRequestPrimitive(int24, v_ontologyRepoIndex, v_updateRequestPrimitive); f_send(e_mcaPort, m_request(v_updateRequest)); tc_ac.start; @@ -15224,8 +15178,7 @@ module OneM2M_Testcases_CSE_Release_3 { } f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1); - vc_cse1.done; - + // Postamble f_cse_postamble_deleteResources(); @@ -15247,7 +15200,7 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_UPD_008() runs on AeSimu system CseSystem { // Local variables var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceIndexJobProfileIndex := -1; var RequestPrimitive v_updateRequest; var XSD.Base64Binary v_invalidInputDescriptor := int2oct(0,65537); @@ -15263,10 +15216,10 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceIndexJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); // Update semanticMashupJobProfile - v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfile); + v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfileIndex); v_updateRequest.primitiveContent.semanticMashupJobProfile.inputDescriptor := v_invalidInputDescriptor; f_send(e_mcaPort, m_request(v_updateRequest)); @@ -15307,7 +15260,7 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_UPD_009() runs on AeSimu system CseSystem { // Local variables var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceIndexJobProfileIndex := -1; var RequestPrimitive v_updateRequest; var XSD.Base64Binary v_invalidOutputDescriptor := int2oct(0,65537); @@ -15323,10 +15276,10 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceIndexJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); // Update semanticMashupJobProfile - v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfile); + v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfileIndex); v_updateRequest.primitiveContent.semanticMashupJobProfile.outputDescriptor := v_invalidOutputDescriptor; f_send(e_mcaPort, m_request(v_updateRequest)); @@ -15367,7 +15320,7 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_UPD_010() runs on AeSimu system CseSystem { // Local variables var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceIndexJobProfileIndex := -1; var RequestPrimitive v_updateRequest; var XSD.Base64Binary v_invalidFunctionDescriptor := int2oct(0,65537); @@ -15383,10 +15336,10 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceIndexJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); // Update semanticMashupJobProfile - v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfile); + v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfileIndex); v_updateRequest.primitiveContent.semanticMashupJobProfile.functionDescriptor := v_invalidFunctionDescriptor; f_send(e_mcaPort, m_request(v_updateRequest)); @@ -15427,7 +15380,7 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_UPD_011() runs on AeSimu system CseSystem { // Local variables var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceIndexJobProfileIndex := -1; var RequestPrimitive v_updateRequest; var Sparql v_invalidMemberFilter := "{SELECT \?name WHERE { \?x foaf:name \?name FILTER regex(\?name, \^mem\, \i\ }"; @@ -15443,10 +15396,10 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // Create JobProfile resource - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceIndexJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); // Update semanticMashupJobProfile - v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfile); + v_updateRequest := f_getCreateRequestPrimitive(int40, m_updateSemanticMashupJobProfileBase, v_resourceIndexJobProfileIndex); v_updateRequest.primitiveContent.semanticMashupJobProfile.memberFilter := v_invalidMemberFilter; f_send(e_mcaPort, m_request(v_updateRequest)); @@ -15487,7 +15440,7 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_UPD_012() runs on AeSimu system CseSystem { // Local variables var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceIndexJobProfileIndex := -1; var RequestPrimitive v_createReqSmi; var RequestPrimitive v_updateReqSmi; @@ -15503,12 +15456,12 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // semanticMashupJobProfile - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceIndexJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); // create semanticMashupInstance template with default mandatory values. v_createReqSmi := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); // link semanticMashupInstance with semanticMashupJobProfile - v_createReqSmi.primitiveContent.semanticMashupInstance.smjpID := f_getResourceAddress(v_resourceIndexJobProfile); + v_createReqSmi.primitiveContent.semanticMashupInstance.smjpID := f_getResourceAddress(v_resourceIndexJobProfileIndex); // create semanticMashupInstance resource f_cse_createResource(int41, v_createReqSmi, v_aeIndex); @@ -15559,7 +15512,7 @@ module OneM2M_Testcases_CSE_Release_3 { function f_CSE_SEM_UPD_013() runs on AeSimu system CseSystem { // Local variables var integer v_aeIndex := -1; - var integer v_resourceIndexJobProfile := -1; + var integer v_resourceIndexJobProfileIndex := -1; var RequestPrimitive v_createReqSmi; var RequestPrimitive v_updateReqSmi; @@ -15576,12 +15529,12 @@ module OneM2M_Testcases_CSE_Release_3 { v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -); // semanticMashupJobProfile - v_resourceIndexJobProfile := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); + v_resourceIndexJobProfileIndex := f_cse_createResource(int40, m_createSemanticMashupJobProfileBase, v_aeIndex); // create semanticMashupInstance template with default mandatory values. v_createReqSmi := f_getCreateRequestPrimitive(int41, m_createSemanticMashupInstanceBase, v_aeIndex); // link semanticMashupInstance with semanticMashupJobProfile - v_createReqSmi.primitiveContent.semanticMashupInstance.smjpID := f_getResourceAddress(v_resourceIndexJobProfile); + v_createReqSmi.primitiveContent.semanticMashupInstance.smjpID := f_getResourceAddress(v_resourceIndexJobProfileIndex); // create semanticMashupInstance resource f_cse_createResource(int41, v_createReqSmi, v_aeIndex);