Commit a23ffa06 authored by bergengruen's avatar bergengruen
Browse files

verdict functions added

parent 0d746f4b
Loading
Loading
Loading
Loading
+15 −28
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ module AtsImsIot_Behavior {
	import from LibIms_UpperTester {type ImsUserInfo;}

	import from LibIot_TypesAndValues {type DefaultList;}
	import from LibIot_Functions {function f_setIotVerdictFAIL, f_setIotVerdictPASS;}

	import from LibSip_SIPTypesAndValues all;
//	import from LibSip_SIPTypesAndValues {
@@ -403,7 +404,7 @@ group checksTC_IMS_REG_0001 {
		   v_Epires200OK := p_200OK.msgHeader.expires.deltaSec;
		   v_EpiresSubscribe  := v_sip.request.msgHeader.expires.deltaSec;
           if (char2int(v_EpiresSubscribe) <= char2int(v_Epires200OK)) {
             setverdict(fail); // TODO use oracle functions for vericts
			f_setIotVerdictFAIL("TP_IMS_5044_01"); // TODO use oracle functions for vericts
           }
           return v_sip.request;
	    }
@@ -437,7 +438,7 @@ group checksTC_IMS_REG_0001 {
		   v_Epires200OK := v_sip.response.msgHeader.expires.deltaSec;
		   v_EpiresSubscribe  := p_Subscribe.msgHeader.expires.deltaSec;          
           if (char2int(v_EpiresSubscribe) >=  char2int(v_Epires200OK)) {
             setverdict(fail); // TODO use oracle functions for verdicts
			f_setIotVerdictFAIL("TP_IMS_5096_01");
           }


@@ -576,25 +577,18 @@ group checksTC_IMS_REG_0002H{
           );
           p_monitorCompRef.done;
           f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
           v_RegisterStep4 := v_sip.request;                      
           
           // Check that IMS_A sends the original Register to
           // another entrypoint of IMS-B
           if (match (v_RegisterStep4.msgHeader, v_RegisterStep2.msgHeader)){
             // Identical set of headers
             setverdict(pass); // TODO use oracle functions for verdicts
           } else {
			// Some headers differ
             setverdict(fail); // TODO use oracle functions for verdicts
           if (not (match (v_RegisterStep4.msgHeader, v_RegisterStep2.msgHeader))){
             // Headers differ
            f_setIotVerdictFAIL("TP_IMS_5203_01"); 
           }
           if (match (v_RegisterStep4.requestLine, v_RegisterStep4.requestLine)){
             // IMS-A used same entrypoint
             setverdict(fail); // TODO use oracle functions for verdicts
           } else {
			// IMS-A used a different entrypoint 
             setverdict(pass); // TODO use oracle functions for verdicts
			f_setIotVerdictFAIL("TP_IMS_5203_01"); 
           }  
             
           v_RegisterStep4 := v_sip.request;                      
           return v_RegisterStep4;
	    }
  
@@ -710,7 +704,7 @@ group checksTC_IMS_REG_0004 {
    		p_monitorCompRef.start(
    			f_imsIot_receive(
    				{mw_SipRequest(mdw_TP_IMS_5088_01_gm)},
        			{mw_SipRequest(mw_MESSAGE_Request_Base(?))},
        			{mw_SipRequest(mw_REGISTER_Request_Base)},
        			"TP_IMS_5088_01_gm",
        			"REGISTER request",
        			0,
@@ -733,7 +727,7 @@ group checksTC_IMS_REG_0004 {
        	p_monitorCompRef.start(
    			f_imsIot_receive(
    						{mw_SipRequest(mdw_TP_IMS_5088_01_mw(?, mw_SipUrl_Host(v_hostname)))}, // TODO getHostname(PCSCF) how to hande the callid?
    						{mw_SipRequest(mw_MESSAGE_Request_Base(?))},
    						{mw_SipRequest(mw_REGISTER_Request_Base)},
    						"TP_IMS_5088_01_mw",
    						"NOTIFY response",
    						0,
@@ -1052,19 +1046,12 @@ group checksTC_IMS_SS_0007 {
			
    		// Check Route header
    	  if (match(v_Route, vt_pcscfRoute)) {
    		// TODO use oracle functions for verdicts
			setverdict(fail); // Route header shall not have P-CSCF of IMS A
    		} else {
    		// TODO use oracle functions for verdicts
    		setverdict(pass);
			f_setIotVerdictFAIL("TP_IMS_5046_01");
    		} 
		   // Check Via header
		   if (match(v_Via, vt_pcscfVia)) {
    		// TODO use oracle functions for verdicts
		   	setverdict(pass); 
	       } else {
	       	// TODO use oracle functions for verdicts
		   	setverdict(fail);
			f_setIotVerdictFAIL("TP_IMS_5046_01");
		   }
	    }

+20 −0
Original line number Diff line number Diff line
@@ -85,6 +85,26 @@ module LibIot_Functions {
    		}
    	}

		/**
		* @desc Set verdict PASS on main component (to be used, e.g on TestCoordinator)
		*/
		function f_setIotVerdictPASS(in charstring p_reason) runs on OracleServer {
            var IotVerdict p_verdict := {
            	conformance := {verdict := pass, reason := p_reason}
            };
            f_setIotVerdict(p_verdict);
		}
    	/**
    	* @desc Set verdict PASS on main component (to be used, e.g on TestCoordinator)
    	*/
    	function f_setIotVerdictFAIL(in charstring p_reason) runs on OracleServer {
			var IotVerdict p_verdict := {
				conformance := {verdict := fail, reason := p_reason}
			};
			f_setIotVerdict(p_verdict);
    	}

    	    	
    	/**
    	 * 
    	 * @desc logs the received IOT verdict