Loading ttcn/AtsECall_IVS_Testcases.ttcn +3 −3 Original line number Diff line number Diff line Loading @@ -1384,7 +1384,7 @@ module AtsECall_IVS_Testcases { c_mbYes); modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_clearDownAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); // AL-ACK clear down vc_messageIdentifier := c_initialMessageIdentifier; Loading Loading @@ -1662,7 +1662,7 @@ module AtsECall_IVS_Testcases { f_clearDown(NETWORK, 10.0); modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_positiveAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); uiPort.send(ShowMessageBox: { title := "Callback", Loading Loading @@ -1778,7 +1778,7 @@ module AtsECall_IVS_Testcases { f_mnoExpect(mw_callHangUp(PX_WORKER, ?, EXTERNAL), PX_TIMEOUT, true); modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_positiveAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); t_callbackDelay.start; Loading ttcn/LibItsECall_Functions.ttcn +58 −18 Original line number Diff line number Diff line Loading @@ -21,7 +21,7 @@ module LibItsECall_Functions { import from MSDASN1Module language "ASN.1:1997" all with { encode "MSDEncode"; }; } import from LibLogger all; import from LibUserInterface all; Loading Loading @@ -170,7 +170,7 @@ module LibItsECall_Functions { } else { modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_clearDownAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); modem.send(m_inbandRequestMsd(PX_WORKER)); f_verifyMSD(PX_ECALL_MESSAGE); Loading Loading @@ -275,12 +275,12 @@ module LibItsECall_Functions { p_configuration.eCallMessage := v_eCallMessageExpanded; vc_eCallMessage := v_eCallMessageExpanded; //TODO create equivalent for Psap Mtc modem.send(m_setConfig(PX_WORKERS[0].id, v_psapConfig)); f_expectFeedback(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, ?), p_ignoreOtherMessages := true); // f_adapterExpect(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, ?), p_ignoreOtherMessages := true); modem.send(m_setConfig(PX_WORKERS[0].id, p_configuration)); f_expectFeedback(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, p_configuration), p_ignoreOtherMessages := true); // f_adapterExpect(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, p_configuration), p_ignoreOtherMessages := true); } /** Loading Loading @@ -358,6 +358,44 @@ module LibItsECall_Functions { return v_result; } /** * @desc Wait for a specific adapter control event * @param p_e Expected event to be received * @param p_event_timeout Timeout value for receiving the event * @param p_ignoreOtherMessages Whether other events shall be ignored or not * @return FeedbackResult Received event if reception is successful, or failure */ function f_adapterExpect(template AdapterEvent p_e, float p_event_timeout := PX_TIMEOUT, in boolean p_ignoreOtherMessages := false) runs on PsapMtc return ExpectResult { timer t := p_event_timeout; var AdapterEvent v_received; var ExpectResult v_result; v_result.failure := false; if (getverdict == fail or getverdict == inconc) { return v_result; } t.start; alt { [] adapterControl.receive(p_e) -> value v_received { v_result.adapterEvent := v_received; t.stop; } [p_ignoreOtherMessages] mno.receive { repeat; } [] t.timeout { v_result.failure := true; log("Expecting", p_e); f_stopIvsTestcase(inconc, "Timeout!"); } } return v_result; } /** * @desc Decodes the encoded eCallMessage if it valid and sets the decoded field of ECallMessageUnion, * otherwise the ECallMessageUnion is unchanged. Loading Loading @@ -482,10 +520,6 @@ module LibItsECall_Functions { repeat; } [] modem.receive(mw_ivsConfigChanged(PX_WORKERS[0].id, ?, ?)) { repeat; } [] modem.receive(mw_timerExpired(p_worker := PX_WORKERS[0].id)) -> value v_modemEvent { f_stopPsapTestcase(fail, "Timer " & v_modemEvent.timerExpired.name & " expired"); } Loading Loading @@ -518,6 +552,12 @@ module LibItsECall_Functions { [] adapterControl.receive(mw_ivsConfigChanged(PX_WORKERS[0].id, ?, ?)) { repeat; } [] any port.receive { f_stopPsapTestcase(fail, "Wrong message received!"); } Loading Loading @@ -614,10 +654,10 @@ module LibItsECall_Functions { p_configuration.internalSubscriber := PX_INTERNAL_SUBSCRIBER; modem.send(m_setConfig(PX_WORKER, v_ivsConfig)); f_expectFeedback(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); f_adapterExpect(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); modem.send(m_setConfig(PX_WORKER, p_configuration)); f_expectFeedback(p_e := mw_psapConfigChanged(PX_WORKER, ?, p_configuration), p_ignoreOtherMessages := true); f_adapterExpect(p_e := mw_psapConfigChanged(PX_WORKER, ?, p_configuration), p_ignoreOtherMessages := true); vc_initialized := true; vc_messageIdentifier := c_initialMessageIdentifier; Loading Loading @@ -666,7 +706,7 @@ module LibItsECall_Functions { // reset modem state modem.send(m_setConfig(PX_WORKER, v_ivsConfig)); f_expectFeedback(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); f_adapterExpect(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); unmap(self:modem, system:modem); } // end f_configIvsModemDown Loading ttcn/LibItsECall_Templates.ttcn +87 −85 Original line number Diff line number Diff line Loading @@ -80,13 +80,6 @@ module LibItsECall_Templates { group anyEventTemplates { /** * @desc Receive template for any ConfigChanged event */ template Event mw_anyConfigChanged := { configChanged := ? } /** * @desc Receive template for any InbandNackSent event */ Loading @@ -110,84 +103,6 @@ module LibItsECall_Templates { } // end anyEventTemplates /** * @desc Receive template for ConfigurationChanged event (IVS mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template Event mw_ivsConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := p_parameters.t3Timer, t4Timer := *, t5Timer := p_parameters.t5Timer, t6Timer := p_parameters.t6Timer, t7Timer := p_parameters.t7Timer, t8Timer := *, sendNecDisabler := *, numberOfAlAcks := *, numberOfLlAcks := *, eCallMessage := p_parameters.eCallMessage, automaticAlAck := *, alAckValue := *, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := p_parameters.ignoreAlClearDown, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := * } } } /** * @desc Receive template for ConfigurationChanged event (PSAP mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template Event mw_psapConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := *, t4Timer := p_parameters.t4Timer, t5Timer := *, t6Timer := p_parameters.t6Timer, t7Timer := *, t8Timer := p_parameters.t8Timer, sendNecDisabler := p_parameters.sendNecDisabler, numberOfAlAcks := p_parameters.numberOfAlAcks, numberOfLlAcks := p_parameters.numberOfLlAcks, eCallMessage := *, automaticAlAck := p_parameters.automaticAlAck, alAckValue := p_parameters.alAckValue, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := *, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := p_parameters.ignoreSendSignal } } } /** * @desc Receive template for InbandMsdReceived event * @param p_worker Target worker process Loading Loading @@ -675,6 +590,93 @@ module LibItsECall_Templates { } } group adapterControlTemplates { /** * @desc Receive template for any ConfigChanged event */ template AdapterEvent mw_anyConfigChanged := { configChanged := ? } /** * @desc Receive template for ConfigurationChanged event (IVS mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template AdapterEvent mw_ivsConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := p_parameters.t3Timer, t4Timer := *, t5Timer := p_parameters.t5Timer, t6Timer := p_parameters.t6Timer, t7Timer := p_parameters.t7Timer, t8Timer := *, sendNecDisabler := *, numberOfAlAcks := *, numberOfLlAcks := *, eCallMessage := p_parameters.eCallMessage, automaticAlAck := *, alAckValue := *, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := p_parameters.ignoreAlClearDown, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := * } } } /** * @desc Receive template for ConfigurationChanged event (PSAP mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template AdapterEvent mw_psapConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := *, t4Timer := p_parameters.t4Timer, t5Timer := *, t6Timer := p_parameters.t6Timer, t7Timer := *, t8Timer := p_parameters.t8Timer, sendNecDisabler := p_parameters.sendNecDisabler, numberOfAlAcks := p_parameters.numberOfAlAcks, numberOfLlAcks := p_parameters.numberOfLlAcks, eCallMessage := *, automaticAlAck := p_parameters.automaticAlAck, alAckValue := p_parameters.alAckValue, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := *, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := p_parameters.ignoreSendSignal } } } } group commandTemplates { /** Generic send template for SetConfig command Loading ttcn/LibItsECall_TestSystem.ttcn +9 −1 Original line number Diff line number Diff line Loading @@ -36,6 +36,13 @@ module LibItsECall_TestSystem { out CallAcceptCmd, CallHangUpCmd, CallRejectBusyCmd, CallCreateCmd, CallCancelCmd; } /** * @desc Adapter control port */ type port AdapterControlPort message { in AdapterEvent; out SetConfigCmd; } } // end portDefinitions group componentDefinitions { Loading @@ -50,6 +57,7 @@ module LibItsECall_TestSystem { * @member vc_uiComponent User interface component (for non-blocking user interaction) */ type component ECallMtc { port AdapterControlPort adapterControl; port ModemPort modem; port UIPort uiPort; port MNOPort mno; Loading ttcn/LibItsECall_TypesAndValues.ttcn +29 −20 Original line number Diff line number Diff line Loading @@ -136,7 +136,6 @@ module LibItsECall_TypesAndValues { /** * @desc Top-level aggregation type for Events * @member configChanged * @member inbandMsdReceived * @member inbandLlAckSent * @member inbandLlAckReceived Loading @@ -151,7 +150,6 @@ module LibItsECall_TypesAndValues { * @member timerExpired */ type union Event { ConfigChangedEvent configChanged, InbandMsdReceivedEvent inbandMsdReceived, InbandLlAckSentEvent inbandLlAckSent, InbandLlAckReceivedEvent inbandLlAckReceived, Loading @@ -166,23 +164,6 @@ module LibItsECall_TypesAndValues { TimerExpiredEvent timerExpired } /** * @desc Generated whenever one or more configuration options changed * @member worker Worker process that generated this event * @member time Event timestamp * @member parameters Configuration parameters * @remark mode: PSAP, IVS */ type record ConfigChangedEvent { integer worker, charstring time, ModemConfiguration parameters } with { variant "event;config_changed"; variant (worker) "worker"; variant (time) "time"; } /** * @desc Indicates the successful reception of an MSD * @member worker Worker process that generated this event Loading Loading @@ -713,6 +694,33 @@ module LibItsECall_TypesAndValues { encode "SimulatorInterface"; } group adapterControl { /** * @desc Top-level aggregation type for Adapter Events * @member configChangedEvent */ type union AdapterEvent { ConfigChangedEvent configChanged } /** * @desc Generated whenever one or more configuration options changed * @member worker Worker process that generated this event * @member time Event timestamp * @member parameters Configuration parameters * @remark mode: PSAP, IVS */ type record ConfigChangedEvent { integer worker, charstring time, ModemConfiguration parameters } with { variant "event;config_changed"; variant (worker) "worker"; variant (time) "time"; } } group misc { /** Loading @@ -723,7 +731,8 @@ module LibItsECall_TypesAndValues { type union ExpectResult { boolean failure, Event event, MnoEvent mnoEvent MnoEvent mnoEvent, AdapterEvent adapterEvent } /** Loading Loading
ttcn/AtsECall_IVS_Testcases.ttcn +3 −3 Original line number Diff line number Diff line Loading @@ -1384,7 +1384,7 @@ module AtsECall_IVS_Testcases { c_mbYes); modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_clearDownAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); // AL-ACK clear down vc_messageIdentifier := c_initialMessageIdentifier; Loading Loading @@ -1662,7 +1662,7 @@ module AtsECall_IVS_Testcases { f_clearDown(NETWORK, 10.0); modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_positiveAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); uiPort.send(ShowMessageBox: { title := "Callback", Loading Loading @@ -1778,7 +1778,7 @@ module AtsECall_IVS_Testcases { f_mnoExpect(mw_callHangUp(PX_WORKER, ?, EXTERNAL), PX_TIMEOUT, true); modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_positiveAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); t_callbackDelay.start; Loading
ttcn/LibItsECall_Functions.ttcn +58 −18 Original line number Diff line number Diff line Loading @@ -21,7 +21,7 @@ module LibItsECall_Functions { import from MSDASN1Module language "ASN.1:1997" all with { encode "MSDEncode"; }; } import from LibLogger all; import from LibUserInterface all; Loading Loading @@ -170,7 +170,7 @@ module LibItsECall_Functions { } else { modem.send(m_setAutomaticAlAck(PX_WORKER, true, c_clearDownAlAck)); f_expectFeedback(mw_anyConfigChanged); f_adapterExpect(mw_anyConfigChanged); modem.send(m_inbandRequestMsd(PX_WORKER)); f_verifyMSD(PX_ECALL_MESSAGE); Loading Loading @@ -275,12 +275,12 @@ module LibItsECall_Functions { p_configuration.eCallMessage := v_eCallMessageExpanded; vc_eCallMessage := v_eCallMessageExpanded; //TODO create equivalent for Psap Mtc modem.send(m_setConfig(PX_WORKERS[0].id, v_psapConfig)); f_expectFeedback(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, ?), p_ignoreOtherMessages := true); // f_adapterExpect(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, ?), p_ignoreOtherMessages := true); modem.send(m_setConfig(PX_WORKERS[0].id, p_configuration)); f_expectFeedback(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, p_configuration), p_ignoreOtherMessages := true); // f_adapterExpect(p_e := mw_ivsConfigChanged(p_workerConf.id, ?, p_configuration), p_ignoreOtherMessages := true); } /** Loading Loading @@ -358,6 +358,44 @@ module LibItsECall_Functions { return v_result; } /** * @desc Wait for a specific adapter control event * @param p_e Expected event to be received * @param p_event_timeout Timeout value for receiving the event * @param p_ignoreOtherMessages Whether other events shall be ignored or not * @return FeedbackResult Received event if reception is successful, or failure */ function f_adapterExpect(template AdapterEvent p_e, float p_event_timeout := PX_TIMEOUT, in boolean p_ignoreOtherMessages := false) runs on PsapMtc return ExpectResult { timer t := p_event_timeout; var AdapterEvent v_received; var ExpectResult v_result; v_result.failure := false; if (getverdict == fail or getverdict == inconc) { return v_result; } t.start; alt { [] adapterControl.receive(p_e) -> value v_received { v_result.adapterEvent := v_received; t.stop; } [p_ignoreOtherMessages] mno.receive { repeat; } [] t.timeout { v_result.failure := true; log("Expecting", p_e); f_stopIvsTestcase(inconc, "Timeout!"); } } return v_result; } /** * @desc Decodes the encoded eCallMessage if it valid and sets the decoded field of ECallMessageUnion, * otherwise the ECallMessageUnion is unchanged. Loading Loading @@ -482,10 +520,6 @@ module LibItsECall_Functions { repeat; } [] modem.receive(mw_ivsConfigChanged(PX_WORKERS[0].id, ?, ?)) { repeat; } [] modem.receive(mw_timerExpired(p_worker := PX_WORKERS[0].id)) -> value v_modemEvent { f_stopPsapTestcase(fail, "Timer " & v_modemEvent.timerExpired.name & " expired"); } Loading Loading @@ -518,6 +552,12 @@ module LibItsECall_Functions { [] adapterControl.receive(mw_ivsConfigChanged(PX_WORKERS[0].id, ?, ?)) { repeat; } [] any port.receive { f_stopPsapTestcase(fail, "Wrong message received!"); } Loading Loading @@ -614,10 +654,10 @@ module LibItsECall_Functions { p_configuration.internalSubscriber := PX_INTERNAL_SUBSCRIBER; modem.send(m_setConfig(PX_WORKER, v_ivsConfig)); f_expectFeedback(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); f_adapterExpect(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); modem.send(m_setConfig(PX_WORKER, p_configuration)); f_expectFeedback(p_e := mw_psapConfigChanged(PX_WORKER, ?, p_configuration), p_ignoreOtherMessages := true); f_adapterExpect(p_e := mw_psapConfigChanged(PX_WORKER, ?, p_configuration), p_ignoreOtherMessages := true); vc_initialized := true; vc_messageIdentifier := c_initialMessageIdentifier; Loading Loading @@ -666,7 +706,7 @@ module LibItsECall_Functions { // reset modem state modem.send(m_setConfig(PX_WORKER, v_ivsConfig)); f_expectFeedback(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); f_adapterExpect(p_e := mw_ivsConfigChanged(PX_WORKER, ?, ?), p_ignoreOtherMessages := true); unmap(self:modem, system:modem); } // end f_configIvsModemDown Loading
ttcn/LibItsECall_Templates.ttcn +87 −85 Original line number Diff line number Diff line Loading @@ -80,13 +80,6 @@ module LibItsECall_Templates { group anyEventTemplates { /** * @desc Receive template for any ConfigChanged event */ template Event mw_anyConfigChanged := { configChanged := ? } /** * @desc Receive template for any InbandNackSent event */ Loading @@ -110,84 +103,6 @@ module LibItsECall_Templates { } // end anyEventTemplates /** * @desc Receive template for ConfigurationChanged event (IVS mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template Event mw_ivsConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := p_parameters.t3Timer, t4Timer := *, t5Timer := p_parameters.t5Timer, t6Timer := p_parameters.t6Timer, t7Timer := p_parameters.t7Timer, t8Timer := *, sendNecDisabler := *, numberOfAlAcks := *, numberOfLlAcks := *, eCallMessage := p_parameters.eCallMessage, automaticAlAck := *, alAckValue := *, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := p_parameters.ignoreAlClearDown, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := * } } } /** * @desc Receive template for ConfigurationChanged event (PSAP mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template Event mw_psapConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := *, t4Timer := p_parameters.t4Timer, t5Timer := *, t6Timer := p_parameters.t6Timer, t7Timer := *, t8Timer := p_parameters.t8Timer, sendNecDisabler := p_parameters.sendNecDisabler, numberOfAlAcks := p_parameters.numberOfAlAcks, numberOfLlAcks := p_parameters.numberOfLlAcks, eCallMessage := *, automaticAlAck := p_parameters.automaticAlAck, alAckValue := p_parameters.alAckValue, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := *, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := p_parameters.ignoreSendSignal } } } /** * @desc Receive template for InbandMsdReceived event * @param p_worker Target worker process Loading Loading @@ -675,6 +590,93 @@ module LibItsECall_Templates { } } group adapterControlTemplates { /** * @desc Receive template for any ConfigChanged event */ template AdapterEvent mw_anyConfigChanged := { configChanged := ? } /** * @desc Receive template for ConfigurationChanged event (IVS mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template AdapterEvent mw_ivsConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := p_parameters.t3Timer, t4Timer := *, t5Timer := p_parameters.t5Timer, t6Timer := p_parameters.t6Timer, t7Timer := p_parameters.t7Timer, t8Timer := *, sendNecDisabler := *, numberOfAlAcks := *, numberOfLlAcks := *, eCallMessage := p_parameters.eCallMessage, automaticAlAck := *, alAckValue := *, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := p_parameters.ignoreAlClearDown, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := * } } } /** * @desc Receive template for ConfigurationChanged event (PSAP mode) * @param p_worker Target worker process * @param p_time Event timestamp * @param p_parameters Expected configuration parameters */ template AdapterEvent mw_psapConfigChanged ( template(present) integer p_worker, template(present) charstring p_time, template(present) ModemConfiguration p_parameters ) := { configChanged := { worker := p_worker, time := p_time, parameters := { mode := p_parameters.mode, t3Timer := *, t4Timer := p_parameters.t4Timer, t5Timer := *, t6Timer := p_parameters.t6Timer, t7Timer := *, t8Timer := p_parameters.t8Timer, sendNecDisabler := p_parameters.sendNecDisabler, numberOfAlAcks := p_parameters.numberOfAlAcks, numberOfLlAcks := p_parameters.numberOfLlAcks, eCallMessage := *, automaticAlAck := p_parameters.automaticAlAck, alAckValue := p_parameters.alAckValue, inbandState := p_parameters.inbandState, inbandControl := p_parameters.inbandControl, inbandDirection := p_parameters.inbandDirection, internalSubscriber := p_parameters.internalSubscriber, ignoreAlClearDown := *, simulateCrcError := p_parameters.simulateCrcError, ignoreSendSignal := p_parameters.ignoreSendSignal } } } } group commandTemplates { /** Generic send template for SetConfig command Loading
ttcn/LibItsECall_TestSystem.ttcn +9 −1 Original line number Diff line number Diff line Loading @@ -36,6 +36,13 @@ module LibItsECall_TestSystem { out CallAcceptCmd, CallHangUpCmd, CallRejectBusyCmd, CallCreateCmd, CallCancelCmd; } /** * @desc Adapter control port */ type port AdapterControlPort message { in AdapterEvent; out SetConfigCmd; } } // end portDefinitions group componentDefinitions { Loading @@ -50,6 +57,7 @@ module LibItsECall_TestSystem { * @member vc_uiComponent User interface component (for non-blocking user interaction) */ type component ECallMtc { port AdapterControlPort adapterControl; port ModemPort modem; port UIPort uiPort; port MNOPort mno; Loading
ttcn/LibItsECall_TypesAndValues.ttcn +29 −20 Original line number Diff line number Diff line Loading @@ -136,7 +136,6 @@ module LibItsECall_TypesAndValues { /** * @desc Top-level aggregation type for Events * @member configChanged * @member inbandMsdReceived * @member inbandLlAckSent * @member inbandLlAckReceived Loading @@ -151,7 +150,6 @@ module LibItsECall_TypesAndValues { * @member timerExpired */ type union Event { ConfigChangedEvent configChanged, InbandMsdReceivedEvent inbandMsdReceived, InbandLlAckSentEvent inbandLlAckSent, InbandLlAckReceivedEvent inbandLlAckReceived, Loading @@ -166,23 +164,6 @@ module LibItsECall_TypesAndValues { TimerExpiredEvent timerExpired } /** * @desc Generated whenever one or more configuration options changed * @member worker Worker process that generated this event * @member time Event timestamp * @member parameters Configuration parameters * @remark mode: PSAP, IVS */ type record ConfigChangedEvent { integer worker, charstring time, ModemConfiguration parameters } with { variant "event;config_changed"; variant (worker) "worker"; variant (time) "time"; } /** * @desc Indicates the successful reception of an MSD * @member worker Worker process that generated this event Loading Loading @@ -713,6 +694,33 @@ module LibItsECall_TypesAndValues { encode "SimulatorInterface"; } group adapterControl { /** * @desc Top-level aggregation type for Adapter Events * @member configChangedEvent */ type union AdapterEvent { ConfigChangedEvent configChanged } /** * @desc Generated whenever one or more configuration options changed * @member worker Worker process that generated this event * @member time Event timestamp * @member parameters Configuration parameters * @remark mode: PSAP, IVS */ type record ConfigChangedEvent { integer worker, charstring time, ModemConfiguration parameters } with { variant "event;config_changed"; variant (worker) "worker"; variant (time) "time"; } } group misc { /** Loading @@ -723,7 +731,8 @@ module LibItsECall_TypesAndValues { type union ExpectResult { boolean failure, Event event, MnoEvent mnoEvent MnoEvent mnoEvent, AdapterEvent adapterEvent } /** Loading