Commit 1246935d authored by berge's avatar berge
Browse files

Draft version of TC_SAP_SAREF_BV_001

parent 42f2bec7
Loading
Loading
Loading
Loading
+65 −7
Original line number Diff line number Diff line
@@ -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 {
		
		/** 
@@ -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 := *,
@@ -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
+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
+2 −0
Original line number Diff line number Diff line
@@ -12,6 +12,8 @@ module SmartAppliances_TestControl {

	control {
  
  		execute(TC_SAP_SAREF_BV_001());
  
	}

}
 No newline at end of file
+15 −5
Original line number Diff line number Diff line
@@ -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
    	
@@ -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");
				}