Commit a1f20135 authored by poglitsch's avatar poglitsch
Browse files

stable version

parent ae170880
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ module LibIms_ConfigAndTrigger {
			 */
			function f_userRegistration(in charstring p_publicId, in charstring p_privateId, in charstring p_pw) 
			runs on EutTrigger {
				f_sendTriggerCmd(c_REGISTER_UE, {p_publicId, p_privateId, p_pw});
				f_sendTriggerCmd(c_UE_REGISTER, {p_publicId, p_privateId, p_pw});
			}
			
			
@@ -67,7 +67,7 @@ module LibIms_ConfigAndTrigger {
			 */
			function f_userDeregistration(in charstring p_publicId) 
			runs on EutTrigger {
				f_sendTriggerCmd(c_DEREGISTER_UE, {p_publicId});
				f_sendTriggerCmd(c_UE_DEREGISTER, {p_publicId});
			}
			
			/**
@@ -76,7 +76,7 @@ module LibIms_ConfigAndTrigger {
			 */
			function f_userSendMessage(in charstring p_body) 
			runs on EutTrigger {
				f_sendTriggerCmd(c_SEND_MESSAGE_REQUEST, {p_body});
				f_sendTriggerCmd(c_UE_SEND_MESSAGE, {p_body});
			}
			
			/**
@@ -84,7 +84,7 @@ module LibIms_ConfigAndTrigger {
			 * @desc Trigger checking the receipt of instant message at UE
			 */
			function f_userCheckMessageReceipt() runs on EutTrigger {
				f_sendTriggerCmd(c_RECEIVE_MESSAGE_REQUEST, {});
				f_sendTriggerCmd(c_UE_CHECK_MESSAGE_RECEIPT, {});
			}
				
 			
@@ -123,7 +123,7 @@ module LibIms_ConfigAndTrigger {
		* @member userInfos Lists information about all users configured in the HSS of this core IMS
		*/
		type record CoreImsUserInfo {
			integer          productIndex,
			charstring       productIndex,
			ImsUserInfoList  userInfos
		}
	
+50 −4
Original line number Diff line number Diff line
@@ -15,7 +15,8 @@ module LibIot_Functions {
			ParameterList,
			Status,
			StatusCode,
			TriggerCommand;
			TriggerCommand,
			VerdictType;
	}

	import from LibIot_TestInterface {
@@ -68,17 +69,62 @@ module LibIot_Functions {
    		}
    	}
    	
    	
    	/**
    	 * 
    	 * @desc logs the received IOT verdict
    	 * @param p_verdict The verdict to set
    	 */
    	function f_logIOTVerdict(in IOTVerdict p_verdict) runs on OracleServer {
    		if (ischosen(p_verdict.e2e)) {
    			vc_e2e_verdicts[sizeof(vc_e2e_verdicts)] := p_verdict.e2e;
    			vc_e3e_verdict := f_getWorseVerdict(vc_e3e_verdict, p_verdict.e2e);
    			log("E2E verdict set to: ", p_verdict.e2e.verdict, "Reason: " & p_verdict.e2e.reason);
    		} else  {
    			vc_conf_verdicts[sizeof(vc_conf_verdicts)] := p_verdict.conformance;
    			vc_conf_verdict := f_getWorseVerdict(vc_conf_verdict, p_verdict.conformance);
    			log("Conformance verdict set to: ", p_verdict.conformance.verdict, "Reason: " & p_verdict.conformance.reason);
    		}
    	}
    	
    	/**
    	 * 
    	 * @desc returns the worse verdict 
    	 * @param p_org the original verdict 
    	 * @param p_new the new verdict
    	 * @return the worse verdict
    	 */
    	function f_getWorseVerdict(in VerdictType p_org, in VerdictType p_new) return VerdictType {
    		if(p_org.verdict == pass) {
    			
    			if(p_new.verdict != pass) {
    				return p_new;
    			}
    			else {
    				return p_org
    			}
    		}
    		else if (p_org.verdict == inconc) {
    			
    			if(p_new.verdict != pass) {
    				return p_new;
    			}
    			else {
    				return p_org
    			}
    		}
    		else if (p_org.verdict == fail) {
    			if(p_new.verdict == pass) {
    				return p_org;
    			}
    			else if(p_new.verdict == inconc) {
    				return p_org;
    			}
    			else {
    				return p_new
    			}
    		}
    		else if (p_org.verdict == error) {
    			return p_org;
    		}
    	}
    
    	/**
    	* @desc Altstep to be used for listening continously on the verdict port of the oracle server for receiving verdicts from oracle clients
+3 −3
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@

module LibIot_TestInterface {

	import from LibIot_TypesAndValues {type ComponentIdList, VerdictTypeList;}
	import from LibIot_TypesAndValues {type ComponentIdList, VerdictType;}

	import from LibIot_PIXITS {modulepar PX_ENQUEUE_TIMER;}

@@ -41,8 +41,8 @@ module LibIot_TestInterface {
		*/				
		type component OracleServer extends ServerSyncComp {
			port VerdictPort vPort;
			var VerdictTypeList vc_e3e_verdicts;
			var VerdictTypeList vc_conf_verdicts;
			var VerdictType vc_e3e_verdict;
			var VerdictType vc_conf_verdict;
		}
		
		type component OracleClient extends SelfSyncComp {
+0 −2
Original line number Diff line number Diff line
@@ -61,8 +61,6 @@ module LibIot_TypesAndValues {
		VerdictType conformance	
	}
	
	type record of VerdictType VerdictTypeList;
	
	/**
     * @desc Default record
     */