Commit 90ff7efa authored by berge's avatar berge
Browse files

Added several testcases (not finalized)

parent 815e4fb5
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -11,5 +11,7 @@ module SmartAppliances_Pics {
	modulepar boolean PICS_SAP_AE := true;
	modulepar boolean PICS_SAP_SERVICE := true;
	modulepar boolean PICS_SAP_DEVICE := true;
	modulepar boolean PICS_SAP_FUNCTION := true;
	modulepar boolean PICS_SAP_COMMAND := true;
	
}
 No newline at end of file
+34 −0
Original line number Diff line number Diff line
@@ -28,6 +28,40 @@ module SmartAppliances_TestControl {
				execute(TC_SAP_SAREF_BV_007_01());
				execute(TC_SAP_SAREF_BV_007_02());
			}
			
			if(PICS_SAP_FUNCTION == true) {
				execute(TC_SAP_SAREF_BV_008_01());
				execute(TC_SAP_SAREF_BV_008_02());
				execute(TC_SAP_SAREF_BV_008_03());
				execute(TC_SAP_SAREF_BV_008_04());
				execute(TC_SAP_SAREF_BV_008_05());
				execute(TC_SAP_SAREF_BV_008_06());
				execute(TC_SAP_SAREF_BV_008_07());
				execute(TC_SAP_SAREF_BV_008_08());
			}

			if(PICS_SAP_FUNCTION == true) {
				execute(TC_SAP_SAREF_BV_009_01());
				execute(TC_SAP_SAREF_BV_009_02());
				execute(TC_SAP_SAREF_BV_009_03());
				execute(TC_SAP_SAREF_BV_009_04());
				execute(TC_SAP_SAREF_BV_009_05());
				execute(TC_SAP_SAREF_BV_009_06());
				execute(TC_SAP_SAREF_BV_009_07());
				execute(TC_SAP_SAREF_BV_009_08());
				execute(TC_SAP_SAREF_BV_009_09());
				execute(TC_SAP_SAREF_BV_009_10());
				execute(TC_SAP_SAREF_BV_009_11());
    			execute(TC_SAP_SAREF_BV_009_12());
    			execute(TC_SAP_SAREF_BV_009_13());
    			execute(TC_SAP_SAREF_BV_009_14());
    			execute(TC_SAP_SAREF_BV_009_15());
    			execute(TC_SAP_SAREF_BV_009_16());
    			execute(TC_SAP_SAREF_BV_009_17());
    			execute(TC_SAP_SAREF_BV_009_18());
    			execute(TC_SAP_SAREF_BV_009_19());
    			execute(TC_SAP_SAREF_BV_009_20());
			}
  		}
	}

+641 −5
Original line number Diff line number Diff line
@@ -261,6 +261,7 @@ module SmartAppliances_Testcases {
			/**
			 * @desc       Check that the IUT creates for an instantiation of a Device class or subclass 
			 *             <semanticDescriptor> resource
			 * @param      p_expectedRfDescriptor    Expected RDF descriptor content (template)
			 * @see        SmartM2M 103 268-3 - TP/SAP/SAREF/BV/006
			 */
			function f_SAP_SAREF_BV_006(in template RdfDocument p_expectedRfDescriptor) runs on SmartAppliancesTester system SmartAppliancesSystem {
@@ -312,6 +313,10 @@ module SmartAppliances_Testcases {
        
			} // end f_SAP_SAREF_BV_006
    		
			/**
			 * @desc  Permutation #1 of TP/SAP/SAREF/BV/006: saref:Device
			 * @see   f_SAP_SAREF_BV_006
			 */
			 testcase TC_SAP_SAREF_BV_006_01() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local templates
@@ -330,6 +335,7 @@ module SmartAppliances_Testcases {
			/**
			 * @desc       Check that the IUT instantiates the required <semanticDescriptor> for a Service class or 
			 *             subclass.
			 * @param      p_expectedRfDescriptor    Expected RDF descriptor content (template)
			 * @see        SmartM2M 103 268-3 - TP/SAP/SAREF/BV/007
			 */
			function f_SAP_SAREF_BV_007(in template RdfDocument p_expectedRfDescriptor) runs on SmartAppliancesTester system SmartAppliancesSystem {
@@ -381,6 +387,10 @@ module SmartAppliances_Testcases {
        
			} // end f_SAP_SAREF_BV_007
    		
			/**
			 * @desc  Permutation #1 of TP/SAP/SAREF/BV/007: saref:Service
			 * @see   f_SAP_SAREF_BV_007
			 */
			testcase TC_SAP_SAREF_BV_007_01() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
@@ -389,12 +399,16 @@ module SmartAppliances_Testcases {
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_service, ?, ?}
				)		
				);		
    			
				f_SAP_SAREF_BV_007(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_007_01

			/**
			 * @desc  Permutation #2 of TP/SAP/SAREF/BV/007: saref:SwitchOnService
			 * @see   f_SAP_SAREF_BV_007
			 */    		  
			testcase TC_SAP_SAREF_BV_007_02() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
@@ -403,7 +417,7 @@ module SmartAppliances_Testcases {
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_service, ?, ?}
				)		
				);		
    			
				f_SAP_SAREF_BV_007(m_rdfDescriptor);
					
@@ -411,5 +425,627 @@ module SmartAppliances_Testcases {
    		  
		} // end g_SAP_SAREF_BV_007 	

		group g_SAP_SAREF_BV_008 {
    		
			/**
			 * @desc       Check that the IUT instantiates the required <semanticDescriptor> for a Functionality class or  
			 *             subclass.
			 * @param      p_expectedRfDescriptor    Expected RDF descriptor content (template)
			 * @see        SmartM2M 103 268-3 - TP/SAP/SAREF/BV/008
			 */
			function f_SAP_SAREF_BV_008(in template RdfDocument p_expectedRfDescriptor) runs on SmartAppliancesTester system SmartAppliancesSystem {
            				
				// Local variables
				var MsgIn v_request;
				var verdicttype v_verdict;
				var charstring v_verdictMsg;	
    			    							   
				// Test control
				if(not (PICS_SAP_AE and PICS_SAP_FUNCTION)) {
					setverdict(none, testcasename() & ": ERROR: PICS_SAP_AE and PICS_SAP_FUNCTION required for executing the TC");
					stop;
				}
        	
				// Test component configuration
				f_cf03Up();
        	
				// Test adapter configuration
        	
				// Preamble
				f_ae_preamble_registerAe();
        						
				// Test Body
				tc_ac.start;
				alt {
					// TODO: check Name, From and To fields
					[] mcaPort.receive(mw_request(mw_createSemanticDescriptor)) -> value v_request{
						tc_ac.stop;
						v_verdict := f_checkRdfDescriptor(v_request.primitive.requestPrimitive.primitiveContent.any_1[0].SemanticDescriptor_optional.descriptor, p_expectedRfDescriptor, v_verdictMsg);
						setverdict(v_verdict, testcasename() & ": " & v_verdictMsg); 
					}
        			
					[] mcaPort.receive(mw_request(?)) {
						tc_ac.stop;
						setverdict(fail, testcasename() & ": ERROR: Incorrect request received");
					}
        			
					[] tc_ac.timeout {
						setverdict(inconc, testcasename() & ": TIMEOUT: No CREATE request received");
					}	    			
				}
        
				// Postamble
				f_ae_postamble_default();
        	
				// Tear down
				f_cf03Down();	
        
			} // end f_SAP_SAREF_BV_008

			/**
			 * @desc  Permutation #1 of TP/SAP/SAREF/BV/008: saref:Function
			 * @see   f_SAP_SAREF_BV_008
			 */    		
			testcase TC_SAP_SAREF_BV_008_01() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "Function";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_01

			/**
			 * @desc  Permutation #2 of TP/SAP/SAREF/BV/008: saref:ActuatingFunction
			 * @see   f_SAP_SAREF_BV_008
			 */      		  
			testcase TC_SAP_SAREF_BV_008_02() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "ActuatingFunction";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_02

			/**
			 * @desc  Permutation #3 of TP/SAP/SAREF/BV/008: saref:OnOffFunction
			 * @see   f_SAP_SAREF_BV_008
			 */  			
			testcase TC_SAP_SAREF_BV_008_03() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "OnOffFunction";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_03

			/**
			 * @desc  Permutation #4 of TP/SAP/SAREF/BV/008: saref:OpenCloseFunction
			 * @see   f_SAP_SAREF_BV_008
			 */  			
			testcase TC_SAP_SAREF_BV_008_04() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "OpenCloseFunction";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_04

			/**
			 * @desc  Permutation #5 of TP/SAP/SAREF/BV/008: saref:StartStopFunction
			 * @see   f_SAP_SAREF_BV_008
			 */  			
			testcase TC_SAP_SAREF_BV_008_05() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "StartStopFunction";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_05
			
			/**
			 * @desc  Permutation #6 of TP/SAP/SAREF/BV/008: saref:EventFunction
			 * @see   f_SAP_SAREF_BV_008
			 */  			
			testcase TC_SAP_SAREF_BV_008_06() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "EventFunction";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_06
			
			/**
			 * @desc  Permutation #7 of TP/SAP/SAREF/BV/008: saref:MeteringFunction
			 * @see   f_SAP_SAREF_BV_008
			 */  			
			testcase TC_SAP_SAREF_BV_008_07() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "MeteringFunction";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_07

			/**
			 * @desc  Permutation #8 of TP/SAP/SAREF/BV/008: saref:SensingFunction
			 * @see   f_SAP_SAREF_BV_008
			 */  			
			testcase TC_SAP_SAREF_BV_008_08() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_function := "SensingFunction";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_function, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_008(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_008_08
			   		  
		} // end g_SAP_SAREF_BV_008 

		group g_SAP_SAREF_BV_009 {
    		
			/**
			 * @desc       Check that the IUT instantiates the required <semanticDescriptor> for a Command class or  
			 *             subclass.
			 * @param      p_expectedRfDescriptor    Expected RDF descriptor content (template)
			 * @see        SmartM2M 103 268-3 - TP/SAP/SAREF/BV/009
			 */
			function f_SAP_SAREF_BV_009(in template RdfDocument p_expectedRfDescriptor) runs on SmartAppliancesTester system SmartAppliancesSystem {
            				
				// Local variables
				var MsgIn v_request;
				var verdicttype v_verdict;
				var charstring v_verdictMsg;	
    			    							   
				// Test control
				if(not (PICS_SAP_AE and PICS_SAP_COMMAND)) {
					setverdict(none, testcasename() & ": ERROR: PICS_SAP_AE and PICS_SAP_COMMAND required for executing the TC");
					stop;
				}
        	
				// Test component configuration
				f_cf03Up();
        	
				// Test adapter configuration
        	
				// Preamble
				f_ae_preamble_registerAe();
        						
				// Test Body
				tc_ac.start;
				alt {
					// TODO: check Name, From and To fields
					[] mcaPort.receive(mw_request(mw_createSemanticDescriptor)) -> value v_request{
						tc_ac.stop;
						v_verdict := f_checkRdfDescriptor(v_request.primitive.requestPrimitive.primitiveContent.any_1[0].SemanticDescriptor_optional.descriptor, p_expectedRfDescriptor, v_verdictMsg);
						setverdict(v_verdict, testcasename() & ": " & v_verdictMsg); 
					}
        			
					[] mcaPort.receive(mw_request(?)) {
						tc_ac.stop;
						setverdict(fail, testcasename() & ": ERROR: Incorrect request received");
					}
        			
					[] tc_ac.timeout {
						setverdict(inconc, testcasename() & ": TIMEOUT: No CREATE request received");
					}	    			
				}
        
				// Postamble
				f_ae_postamble_default();
        	
				// Tear down
				f_cf03Down();	
        
			} // end f_SAP_SAREF_BV_009

			/**
			 * @desc  Permutation #1 of TP/SAP/SAREF/BV/009: saref:Command
			 * @see   f_SAP_SAREF_BV_009
			 */    		
			testcase TC_SAP_SAREF_BV_009_01() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "Command";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_01

			/**
			 * @desc  Permutation #2 of TP/SAP/SAREF/BV/009: saref:CloseCommand
			 * @see   f_SAP_SAREF_BV_009
			 */      		  
			testcase TC_SAP_SAREF_BV_009_02() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "CloseCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_02

			/**
			 * @desc  Permutation #3 of TP/SAP/SAREF/BV/009: saref:GetCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_03() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "GetCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_03

			/**
			 * @desc  Permutation #4 of TP/SAP/SAREF/BV/009: saref:GetCurrentMeterValueCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_04() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "GetCurrentMeterValueCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_04

			/**
			 * @desc  Permutation #5 of TP/SAP/SAREF/BV/009: saref:GetMeterDataCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_05() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "GetMeterDataCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_05
			
			/**
			 * @desc  Permutation #6 of TP/SAP/SAREF/BV/009: saref:GetMeterHistoryCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_06() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "GetMeterHistoryCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_06
			
			/**
			 * @desc  Permutation #7 of TP/SAP/SAREF/BV/009: saref:GetSensingDataCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_07() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "GetSensingDataCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_07

			/**
			 * @desc  Permutation #8 of TP/SAP/SAREF/BV/009: saref:NotifyCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_08() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "NotifyCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_08
		
			/**
			 * @desc  Permutation #9 of TP/SAP/SAREF/BV/009: saref:OffCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_09() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "OffCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_09

			/**
			 * @desc  Permutation #10 of TP/SAP/SAREF/BV/009: saref:OnCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_10() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "OnCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_10

			/**
			 * @desc  Permutation #11 of TP/SAP/SAREF/BV/009: saref:OpenCommand
			 * @see   f_SAP_SAREF_BV_009
			 */    		
			testcase TC_SAP_SAREF_BV_009_11() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "OpenCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_11

			/**
			 * @desc  Permutation #12 of TP/SAP/SAREF/BV/009: saref:PauseCommand
			 * @see   f_SAP_SAREF_BV_009
			 */      		  
			testcase TC_SAP_SAREF_BV_009_12() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "PauseCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_12

			/**
			 * @desc  Permutation #13 of TP/SAP/SAREF/BV/009: saref:SetLevelCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_13() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "SetLevelCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_13

			/**
			 * @desc  Permutation #14 of TP/SAP/SAREF/BV/009: saref:SetAbsoluteLevelCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_14() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "SetAbsoluteLevelCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_14

			/**
			 * @desc  Permutation #15 of TP/SAP/SAREF/BV/009: saref:SetRelativeLevelCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_15() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "SetRelativeLevelCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_15
			
			/**
			 * @desc  Permutation #16 of TP/SAP/SAREF/BV/009: saref:StartCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_16() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "StartCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_16
			
			/**
			 * @desc  Permutation #17 of TP/SAP/SAREF/BV/009: saref:StepDownCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_17() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "StepDownCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_17

			/**
			 * @desc  Permutation #18 of TP/SAP/SAREF/BV/009: saref:StepUpCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_18() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "StepUpCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_18
		
			/**
			 * @desc  Permutation #19 of TP/SAP/SAREF/BV/009: saref:StopCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_19() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "StopCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_19

			/**
			 * @desc  Permutation #20 of TP/SAP/SAREF/BV/009: saref:ToggleCommand
			 * @see   f_SAP_SAREF_BV_009
			 */  			
			testcase TC_SAP_SAREF_BV_009_20() runs on SmartAppliancesTester system SmartAppliancesSystem {
				
				// Local const
				const charstring c_command := "ToggleCommand";
				
				// Local templates
				template RdfDocument m_rdfDescriptor := superset(
					{PX_DEVICE_URI & "*" & c_command, ?, ?}
				);		
    			
				f_SAP_SAREF_BV_009(m_rdfDescriptor);
					
			} // end TC_SAP_SAREF_BV_009_20			
			   		  
		} // end g_SAP_SAREF_BV_009 
		    	
	} // end g_saref
}
 No newline at end of file