Loading ttcn/LibSmartAppliances/SmartAppliances_Templates.ttcn +65 −7 Original line number Diff line number Diff line Loading @@ -13,6 +13,9 @@ module SmartAppliances_Templates { import from OneM2M_Types all; import from OneM2M_Pixits all; // LibSmartAppliances import from SmartAppliances_Types all; group primitives { /** Loading @@ -30,23 +33,53 @@ module SmartAppliances_Templates { } // end primitives group ContentCreate { /** * @desc Base primitiveContent for CREATE operation for SemanticDescriptor resource */ template SemanticDescriptor_optional mw_contentCreateSemanticDescriptor := { resourceName := *, //O resourceType := omit, //NP resourceID := omit, //NP parentID := omit, //NP creationTime := omit, //NP lastModifiedTime := omit, //NP labels := *, //O accessControlPolicyIDs := *, //O expirationTime := *, //O dynamicAuthorizationConsultationIDs := *, //? announceTo := *, //O announcedAttribute := *, //O creator := *, //O descriptorRepresentation := ?, //M semanticOpExec := omit, //NP descriptor := ?, //M ontologyRef := *, //O relatedSemantics := *, //O choice := * //? } } // end ContentCreate group RequestPrimitives { group Create { /** * @desc Reception template for AE registration * @desc Base Reception template for create operation */ template RequestPrimitive mw_createAe := { template RequestPrimitive mw_create := { operation := int1, to_ := ?, from_ := *, requestIdentifier := ?, resourceType := int2, resourceType := ?, primitiveContent := { any_1 := {{AE_optional := ?}} any_1 := ? }, role := *, roleIDs := ?, originatingTimestamp := *, requestExpirationTimestamp := *, resultExpirationTimestamp := *, Loading @@ -58,9 +91,34 @@ module SmartAppliances_Templates { deliveryAggregation := *, groupRequestIdentifier := *, filterCriteria := *, discoveryResultType := * discoveryResultType := *, tokens := *, tokenIDs := *, localTokenIDs := ?, tokenReqIndicator := * } /** * @desc Reception template for AE registration */ template RequestPrimitive mw_createAe modifies mw_create := { resourceType := int2, primitiveContent := { any_1 := {{AE_optional := ?}} } }; /** * @desc Reception template for AE registration */ template RequestPrimitive mw_createSemanticDescriptor modifies mw_create := { resourceType := int24, primitiveContent := { any_1 := {{SemanticDescriptor_optional := mw_contentCreateSemanticDescriptor}} } }; } // end Create } // end RequestPrimitives Loading ttcn/LibSmartAppliances/SmartAppliances_Types.ttcn 0 → 100644 +55 −0 Original line number Diff line number Diff line /** * * @author ETSI / STF510 * @version $URL$ * $Id$ * @desc Module containing types for SmartAppliances * */ module SmartAppliances_Types { import from XSD all; // LibOneM2M import from OneM2M_Types all; group optionalResourceTypes { type record SemanticDescriptor_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, ListOfURIs dynamicAuthorizationConsultationIDs optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, XSD.ID creator optional, DescriptorRepresentation descriptorRepresentation optional, Sparql semanticOpExec optional, XSD.Base64Binary descriptor optional, XSD.AnyURI ontologyRef optional, ListOfURIs relatedSemantics optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; } // end optionalResourceTypes } No newline at end of file ttcn/SmartAppliances_TestControl.ttcn +2 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,8 @@ module SmartAppliances_TestControl { control { execute(TC_SAP_SAREF_BV_001()); } } No newline at end of file ttcn/SmartAppliances_Testcases.ttcn +15 −5 Original line number Diff line number Diff line Loading @@ -9,18 +9,23 @@ module SmartAppliances_Testcases { // LibOneM2M import from OneM2M_TestSystem all; import from OneM2M_Functions all; import from OneM2M_Templates all; import from OneM2M_Types all; // LibSmartAppliances import from SmartAppliances_TestSystem all; import from SmartAppliances_Functions all; import from SmartAppliances_Types all; import from SmartAppliances_Templates all; group g_saref { testcase TC_SAP_SAREF_BV_001() runs on SmartAppliancesTester system SmartAppliancesSystem { // Local variables var MsgIn v_request; // Test control Loading @@ -35,13 +40,18 @@ module SmartAppliances_Testcases { // Test Body tc_ac.start; alt { [] mcaPort.receive { /* TODO: requires onM2M release 2 */ [] mcaPort.receive(mw_request(mw_createSemanticDescriptor)) -> value v_request{ tc_ac.stop; if(ispresent(v_request.primitive.requestPrimitive.primitiveContent.any_1[0].SemanticDescriptor_optional.ontologyRef)) { setverdict(pass, testcasename() & ": Correct request received"); } else { setverdict(fail, testcasename() & ": OntologyRef not present"); } } [] mcaPort.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, testcasename() & ": Incorrect request received"); } Loading Loading
ttcn/LibSmartAppliances/SmartAppliances_Templates.ttcn +65 −7 Original line number Diff line number Diff line Loading @@ -13,6 +13,9 @@ module SmartAppliances_Templates { import from OneM2M_Types all; import from OneM2M_Pixits all; // LibSmartAppliances import from SmartAppliances_Types all; group primitives { /** Loading @@ -30,23 +33,53 @@ module SmartAppliances_Templates { } // end primitives group ContentCreate { /** * @desc Base primitiveContent for CREATE operation for SemanticDescriptor resource */ template SemanticDescriptor_optional mw_contentCreateSemanticDescriptor := { resourceName := *, //O resourceType := omit, //NP resourceID := omit, //NP parentID := omit, //NP creationTime := omit, //NP lastModifiedTime := omit, //NP labels := *, //O accessControlPolicyIDs := *, //O expirationTime := *, //O dynamicAuthorizationConsultationIDs := *, //? announceTo := *, //O announcedAttribute := *, //O creator := *, //O descriptorRepresentation := ?, //M semanticOpExec := omit, //NP descriptor := ?, //M ontologyRef := *, //O relatedSemantics := *, //O choice := * //? } } // end ContentCreate group RequestPrimitives { group Create { /** * @desc Reception template for AE registration * @desc Base Reception template for create operation */ template RequestPrimitive mw_createAe := { template RequestPrimitive mw_create := { operation := int1, to_ := ?, from_ := *, requestIdentifier := ?, resourceType := int2, resourceType := ?, primitiveContent := { any_1 := {{AE_optional := ?}} any_1 := ? }, role := *, roleIDs := ?, originatingTimestamp := *, requestExpirationTimestamp := *, resultExpirationTimestamp := *, Loading @@ -58,9 +91,34 @@ module SmartAppliances_Templates { deliveryAggregation := *, groupRequestIdentifier := *, filterCriteria := *, discoveryResultType := * discoveryResultType := *, tokens := *, tokenIDs := *, localTokenIDs := ?, tokenReqIndicator := * } /** * @desc Reception template for AE registration */ template RequestPrimitive mw_createAe modifies mw_create := { resourceType := int2, primitiveContent := { any_1 := {{AE_optional := ?}} } }; /** * @desc Reception template for AE registration */ template RequestPrimitive mw_createSemanticDescriptor modifies mw_create := { resourceType := int24, primitiveContent := { any_1 := {{SemanticDescriptor_optional := mw_contentCreateSemanticDescriptor}} } }; } // end Create } // end RequestPrimitives Loading
ttcn/LibSmartAppliances/SmartAppliances_Types.ttcn 0 → 100644 +55 −0 Original line number Diff line number Diff line /** * * @author ETSI / STF510 * @version $URL$ * $Id$ * @desc Module containing types for SmartAppliances * */ module SmartAppliances_Types { import from XSD all; // LibOneM2M import from OneM2M_Types all; group optionalResourceTypes { type record SemanticDescriptor_optional { XSD.NCName resourceName optional, ResourceType resourceType optional, XSD.ID resourceID optional, NhURI parentID optional, Timestamp creationTime optional, Timestamp lastModifiedTime optional, Labels labels optional, AcpType accessControlPolicyIDs optional, Timestamp expirationTime optional, ListOfURIs dynamicAuthorizationConsultationIDs optional, ListOfURIs announceTo optional, record length(1 .. infinity) of XSD.NCName announcedAttribute optional, XSD.ID creator optional, DescriptorRepresentation descriptorRepresentation optional, Sparql semanticOpExec optional, XSD.Base64Binary descriptor optional, XSD.AnyURI ontologyRef optional, ListOfURIs relatedSemantics optional, union { record length(1 .. infinity) of ChildResourceRef childResource_list, record length(1 .. infinity) of Subscription subscription_list } choice optional } with { variant "name as uncapitalized"; variant "element"; variant (resourceName) "attribute"; variant (announcedAttribute) "list"; variant (choice) "untagged"; variant (choice.childResource_list) "untagged"; variant (choice.childResource_list[-]) "name as 'childResource'"; variant (choice.subscription_list) "untagged"; variant (choice.subscription_list[-]) "name as 'subscription'"; }; } // end optionalResourceTypes } No newline at end of file
ttcn/SmartAppliances_TestControl.ttcn +2 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,8 @@ module SmartAppliances_TestControl { control { execute(TC_SAP_SAREF_BV_001()); } } No newline at end of file
ttcn/SmartAppliances_Testcases.ttcn +15 −5 Original line number Diff line number Diff line Loading @@ -9,18 +9,23 @@ module SmartAppliances_Testcases { // LibOneM2M import from OneM2M_TestSystem all; import from OneM2M_Functions all; import from OneM2M_Templates all; import from OneM2M_Types all; // LibSmartAppliances import from SmartAppliances_TestSystem all; import from SmartAppliances_Functions all; import from SmartAppliances_Types all; import from SmartAppliances_Templates all; group g_saref { testcase TC_SAP_SAREF_BV_001() runs on SmartAppliancesTester system SmartAppliancesSystem { // Local variables var MsgIn v_request; // Test control Loading @@ -35,13 +40,18 @@ module SmartAppliances_Testcases { // Test Body tc_ac.start; alt { [] mcaPort.receive { /* TODO: requires onM2M release 2 */ [] mcaPort.receive(mw_request(mw_createSemanticDescriptor)) -> value v_request{ tc_ac.stop; if(ispresent(v_request.primitive.requestPrimitive.primitiveContent.any_1[0].SemanticDescriptor_optional.ontologyRef)) { setverdict(pass, testcasename() & ": Correct request received"); } else { setverdict(fail, testcasename() & ": OntologyRef not present"); } } [] mcaPort.receive(mw_request(?)) { tc_ac.stop; setverdict(fail, testcasename() & ": Incorrect request received"); } Loading