Loading ttcn/AtsSccas/AtsSccas_PIXITS.ttcn +17 −10 Original line number Diff line number Diff line Loading @@ -4,9 +4,10 @@ * @desc This module provides the PIXIT used for the SIP-IMS tests. */ module AtsSccas_PIXITS { module AtsSccas_PIXITS { //LibSip import from LibSip_SIPTypesAndValues all; // SUT specific implementation variants Loading @@ -16,7 +17,13 @@ modulepar { */ boolean PX_SCCAS__ := true; charstring PX_SIP_URI := ""; charstring PX_ACTF_MGMT_URI := ""; charstring PX_ACTF_URI := ""; charstring PX_ICSI_URI := ""; SipUrl PX_SCCAS_URI := {scheme := "c_sipScheme", components := {sip := {userInfo := omit, hostPort := {host := "",portField := c_defaultSipPort}}}}; } Loading ttcn/AtsSccas/AtsSccas_TCFunctions.ttcn +159 −12 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ module AtsSccas_TCFunctions { omit, PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "0" "0" // Expired )); tc_ack.start; alt { Loading Loading @@ -245,7 +245,7 @@ module AtsSccas_TCFunctions { m_fcValue( "g-3gpp-atcf-mgmt-uri-in-path", { {"sip-uri", { tokenOrHost := PX_SIP_URI }} {"sip-uri", { tokenOrHost := PX_ACTF_MGMT_URI }} }) }), m_contentType(c_sdpApplication), // TODO To be refined during validation Loading @@ -253,7 +253,18 @@ module AtsSccas_TCFunctions { )); tc_ack.start; alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER( vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation mw_PAssertedID( mw_PAssertedIDValue(PX_SCCAS_URI) ) )) { tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync Loading Loading @@ -283,7 +294,9 @@ module AtsSccas_TCFunctions { LibIms_Steps.f_setHeadersMESSAGE(v_cSeq_s, vc_from.addressField.addrSpecUnion, vc_to.addressField.addrSpecUnion); f_awaitingMESSAGE( mw_sccas_MESSAGE_Request( -, -, -, -, // TODO To be refined during validation -, -, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation -, m_contentType("application/vnd.3gpp.SRVCC-info+xml"), // TODO To be refined during validation ? // TODO To be refined during validation ) Loading @@ -307,6 +320,7 @@ module AtsSccas_TCFunctions { runs on ImsComponent { // Local variables var CSeq v_cSeq_s := p_cSeq_s; var Contact v_contact; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); Loading @@ -317,6 +331,17 @@ module AtsSccas_TCFunctions { // Registration f_setHeaders_REGISTER(v_cSeq_s); v_contact := valueof(vc_contact); v_contact.contactBody.contactAddresses[0].contactParams := { // TODO To be refined during validation { "g.3gpp.atcf-mgmt-uri", {tokenOrHost := PX_ACTF_MGMT_URI} }, { "g.3gpp.path", {tokenOrHost := PX_ACTF_URI} } }; f_SendREGISTER( m_sccas_register( vc_requestUri, Loading @@ -325,7 +350,7 @@ module AtsSccas_TCFunctions { vc_from, vc_to, vc_via_REG, vc_contact, v_contact, m_add_Authorization_digest( vc_authorization, {c_Integrity_protected_no} Loading @@ -333,14 +358,14 @@ module AtsSccas_TCFunctions { PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "600000", m_sccas_featureCaps( // TS 124 237 Clause C.6 Definition of feature-capability indicator g.3gpp.atcfmgmt-uri -/*m_sccas_featureCaps( // TS 124 237 Clause C.6 Definition of feature-capability indicator g.3gpp.atcfmgmt-uri { m_fcValue( "g-3gpp-atcf-mgmt-uri-in-path", "g-3gpp-atcf-mgmt-uri\", { {"sip-uri", { tokenOrHost := PX_SIP_URI }} {"sip-uri", { tokenOrHost := PX_ACTF_MGMT_URI }} }) }), })*/, // TODO To be refined during validation m_contentType(c_sdpApplication), // TODO To be refined during validation m_MBody_SDP(vc_sdp_local) // TODO To be refined during validation )); Loading Loading @@ -378,6 +403,128 @@ module AtsSccas_TCFunctions { } // End of group TP_6_3_4_Trigger_SRVCC_To_MSC group TP_6_3_5_Providing_SRVCC_To_MSC { /** * @desc Verify that the SCCAS successfully provide CS to PS SRVCC information * @param p_cSeq_s Random CSeq REGISTER number */ function f_TC_ISC_SCCAS_RSC_REG_06_ueims(in CSeq p_cSeq_s) runs on ImsComponent { // Local variables var CSeq v_cSeq_s := p_cSeq_s; var Contact v_contact; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); action("Please register UE") f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // Registration f_setHeaders_REGISTER(v_cSeq_s); v_contact := valueof(vc_contact); v_contact.contactBody.contactAddresses[0].contactParams := { // TODO To be refined during validation { "g.3gpp.icsi-ref", {tokenOrHost := PX_ICSI_URI} } }; f_SendREGISTER( m_sccas_register( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, v_contact, m_add_Authorization_digest( vc_authorization, {c_Integrity_protected_no} ), PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "600000", -/*m_sccas_featureCaps( // TS 124 237 Clause C.6 Definition of feature-capability indicator g.3gpp.atcfmgmt-uri { m_fcValue( "g-3gpp-atcf-mgmt-uri-in-path", { {"sip-uri", { tokenOrHost := PX_ACTF_MGMT_URI }} }) })*/, // TODO To be refined during validation m_contentType(c_sdpApplication), // TODO To be refined during validation m_MBody_SDP(vc_sdp_local) // TODO To be refined during validation )); tc_ack.start; alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER( vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation mw_PAssertedID( mw_PAssertedIDValue(PX_SCCAS_URI) ), // TODO To be refined during validation mw_acceptContact( { // TODO To be refined during validation { "g.3gpp.path-media", {tokenOrHost := PX_ICSI_URI} } } ) )) { tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync } [] tc_ack.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync } } // TODO Deregistration? f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // End of function f_TC_ISC_SCCAS_RSC_REG_06_ueims function f_TC_ISC_SCCAS_RSC_REG_06_msc(in CSeq p_cSeq_s) runs on ImsComponent { // Local variables var CSeq v_cSeq_s := p_cSeq_s; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // Message LibIms_Steps.f_setHeadersMESSAGE(v_cSeq_s, vc_from.addressField.addrSpecUnion, vc_to.addressField.addrSpecUnion); f_awaitingMESSAGE( mw_sccas_MESSAGE_Request( -, -, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation -, m_contentType("application/vnd.3gpp.SRVCC-info+xml"), // TODO To be refined during validation ? // TODO To be refined during validation ) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync // Answer to the MESSAGE f_send200OK(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // end function f_TC_ISC_SCCAS_RSC_REG_06_msc } // End of group TP_6_3_5_Providing_SRVCC_To_MSC } // End of group Group_6_3 group Group_6A_4 { Loading ttcn/AtsSccas/AtsSccas_Templates.ttcn +20 −3 Original line number Diff line number Diff line Loading @@ -62,8 +62,22 @@ module AtsSccas_Templates fcParams := p_fcParams } // End of template mw_fcValue template(value) Contact m_sccas_contact( in template (value) SipUrl p_sipUrl, in template (value) SemicolonParam_List p_contactParams ) modifies m_Contact := { contactBody := { contactAddresses := { { contactParams := p_contactParams } } } } // End of template m_sccas_contact template (present) LibSip_SIPTypesAndValues.Contact mw_sccas_contact( template (present) ContactBody p_contact_body := ? template (present) ContactBody p_contact_body := ?, template SemicolonParam_List p_contactParams := * ) := { contactBody := p_contact_body } // End of template mw_sccas_contact Loading Loading @@ -163,11 +177,14 @@ module AtsSccas_Templates template (present) To p_to := ?, template (present) Via p_via := ?, template (present) Contact p_contact := ?, template (present) PChargingVector p_pChargingVector := ? template (present) PChargingVector p_pChargingVector := ?, template (present) PAssertedID p_pAssertedID := ?, template AcceptContact p_acceptContact := * ) modifies mw_Response_2xx_Base := { msgHeader := { pChargingVector := p_pChargingVector, contact := p_contact contact := p_contact, acceptContact := p_acceptContact } } // End of template mw_sccas_Response_2xxonREGISTER Loading ttcn/AtsSccas/AtsSccas_TestSystem.ttcn +6 −5 Original line number Diff line number Diff line Loading @@ -25,17 +25,17 @@ module AtsSccas_TestSystem type charstring CM_Message; } // end group CMTypes group Signatures { /*group Signatures { signature s_SIP_conversation (in charstring text, out boolean answer); signature s_SIP_ringing (in charstring text, out boolean answer); } // end group Signatures }*/ // end group Signatures group SystemConfiguration { group Ports { type port operatorPort_SIP procedure { /*type port operatorPort_SIP procedure { inout s_SIP_conversation; inout s_SIP_ringing}; inout s_SIP_ringing};*/ type port Coordination message { inout CM_Message} with {extension "internal"}; Loading @@ -48,7 +48,8 @@ module AtsSccas_TestSystem */ type component TestAdapter { port SipPort UEIMS, SCCAS, ATCF, MSC, UE1; port operatorPort_SIP opPortS; //port operatorPort_SIP opPortS; port OperatorPort opPortS; } } // end Group TestSystemInterfaces Loading ttcn/AtsSccas/AtsSccas_Testcases.ttcn +38 −11 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ module AtsSccas_Testcases group TP_6_3_1_General { /* * @desc TC_IMST2_GM_GEN_01 * @desc Verify that the SCCAS successfully obtain/processes 3pty registration information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_01(inout CSeq p_cSeq_s) Loading @@ -44,10 +44,10 @@ module AtsSccas_Testcases f_cf_1IscDown(v_imsComponent_ueims); } // end TC_ISC_SCCAS_RSC_REG_01 } // End of TC_ISC_SCCAS_RSC_REG_01 /* * @desc TC_IMST2_GM_GEN_02 * @desc Verify that the SCCAS successfully obtain/processes de-registration information (Expires=0) * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_02(inout CSeq p_cSeq_s) Loading @@ -65,14 +65,14 @@ module AtsSccas_Testcases f_cf_1IscDown(v_imsComponent_ueims); } // end TC_ISC_SCCAS_RSC_REG_02 } // End of TC_ISC_SCCAS_RSC_REG_02 } // End of group TP_6_3_1_General group TP_6_3_2_Triggers_To_ATCF { /* * @desc TC_IMST2_GM_GEN_03 * @desc Verify that the SCCAS successfully obtain/processes SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_03(inout CSeq p_cSeq_s) Loading @@ -90,14 +90,14 @@ module AtsSccas_Testcases f_cf_1IscDown(v_imsComponent_ueims); } // end TC_ISC_SCCAS_RSC_REG_03 } // End of TC_ISC_SCCAS_RSC_REG_03 } // End of group TP_6_3_2_Triggers_To_ATCF group TP_6_3_3_SRVCC_Information_To_ATCF { /* * @desc TC_IMST2_GM_GEN_04 * @desc Verify that the SCCAS successfully sends MESSAGE providing PS to CS SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_04(inout CSeq p_cSeq_s) Loading @@ -117,14 +117,14 @@ module AtsSccas_Testcases f_cf_1Isc1AtcfDown(v_imsComponent_ueims, v_imsComponent_atcf); } // end TC_ISC_SCCAS_RSC_REG_04 } // End of TC_ISC_SCCAS_RSC_REG_04 } // End of group TP_6_3_3_SRVCC_Information_To_ATCF group TP_6_3_4_Trigger_SRVCC_To_MSC { /* * @desc TC_IMST2_GM_GEN_05 * @desc Verify that the SCCAS successfully get CS to PS SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_05(inout CSeq p_cSeq_s) Loading @@ -137,17 +137,44 @@ module AtsSccas_Testcases //Start f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_RSC_REG_05_ueims(p_cSeq_s)); v_imsComponent_msc.start(f_TC_ISC_SCCAS_RSC_REG_05_msc(p_cSeq_s)); f_IncCSeq(p_cSeq_s); v_imsComponent_msc.start(f_TC_ISC_SCCAS_RSC_REG_05_msc(p_cSeq_s)); // TODO Not considered in TP? // synchronize both PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Isc1AtcfDown(v_imsComponent_ueims, v_imsComponent_msc); } // end TC_ISC_SCCAS_RSC_REG_05 } // End of TC_ISC_SCCAS_RSC_REG_05 } // End of group TP_6_3_4_Trigger_SRVCC_To_MSC group TP_6_3_5_Providing_SRVCC_To_MSC { /* * @desc Verify that the SCCAS successfully provide CS to PS SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_06(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter { //Variables var ImsComponent v_imsComponent_ueims; var ImsComponent v_imsComponent_msc; f_cf_1Isc1AtcfUp(v_imsComponent_ueims, v_imsComponent_msc); //Start f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_RSC_REG_06_ueims(p_cSeq_s)); f_IncCSeq(p_cSeq_s); v_imsComponent_msc.start(f_TC_ISC_SCCAS_RSC_REG_06_msc(p_cSeq_s)); // TODO Not considered in TP? // synchronize both PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Isc1AtcfDown(v_imsComponent_ueims, v_imsComponent_msc); } // End of TC_ISC_SCCAS_RSC_REG_06 } // End of group TP_6_3_5_Providing_SRVCC_To_MSC } // End of group Group_6_3 group Group_6A_4 { Loading ttcn/AtsSccas/AtsSccas_TCFunctions_TS124292.ttcn +1 −1 File changed.Contains only whitespace changes. Show changes Loading
ttcn/AtsSccas/AtsSccas_PIXITS.ttcn +17 −10 Original line number Diff line number Diff line Loading @@ -4,9 +4,10 @@ * @desc This module provides the PIXIT used for the SIP-IMS tests. */ module AtsSccas_PIXITS { module AtsSccas_PIXITS { //LibSip import from LibSip_SIPTypesAndValues all; // SUT specific implementation variants Loading @@ -16,7 +17,13 @@ modulepar { */ boolean PX_SCCAS__ := true; charstring PX_SIP_URI := ""; charstring PX_ACTF_MGMT_URI := ""; charstring PX_ACTF_URI := ""; charstring PX_ICSI_URI := ""; SipUrl PX_SCCAS_URI := {scheme := "c_sipScheme", components := {sip := {userInfo := omit, hostPort := {host := "",portField := c_defaultSipPort}}}}; } Loading
ttcn/AtsSccas/AtsSccas_TCFunctions.ttcn +159 −12 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ module AtsSccas_TCFunctions { omit, PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "0" "0" // Expired )); tc_ack.start; alt { Loading Loading @@ -245,7 +245,7 @@ module AtsSccas_TCFunctions { m_fcValue( "g-3gpp-atcf-mgmt-uri-in-path", { {"sip-uri", { tokenOrHost := PX_SIP_URI }} {"sip-uri", { tokenOrHost := PX_ACTF_MGMT_URI }} }) }), m_contentType(c_sdpApplication), // TODO To be refined during validation Loading @@ -253,7 +253,18 @@ module AtsSccas_TCFunctions { )); tc_ack.start; alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER( vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation mw_PAssertedID( mw_PAssertedIDValue(PX_SCCAS_URI) ) )) { tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync Loading Loading @@ -283,7 +294,9 @@ module AtsSccas_TCFunctions { LibIms_Steps.f_setHeadersMESSAGE(v_cSeq_s, vc_from.addressField.addrSpecUnion, vc_to.addressField.addrSpecUnion); f_awaitingMESSAGE( mw_sccas_MESSAGE_Request( -, -, -, -, // TODO To be refined during validation -, -, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation -, m_contentType("application/vnd.3gpp.SRVCC-info+xml"), // TODO To be refined during validation ? // TODO To be refined during validation ) Loading @@ -307,6 +320,7 @@ module AtsSccas_TCFunctions { runs on ImsComponent { // Local variables var CSeq v_cSeq_s := p_cSeq_s; var Contact v_contact; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); Loading @@ -317,6 +331,17 @@ module AtsSccas_TCFunctions { // Registration f_setHeaders_REGISTER(v_cSeq_s); v_contact := valueof(vc_contact); v_contact.contactBody.contactAddresses[0].contactParams := { // TODO To be refined during validation { "g.3gpp.atcf-mgmt-uri", {tokenOrHost := PX_ACTF_MGMT_URI} }, { "g.3gpp.path", {tokenOrHost := PX_ACTF_URI} } }; f_SendREGISTER( m_sccas_register( vc_requestUri, Loading @@ -325,7 +350,7 @@ module AtsSccas_TCFunctions { vc_from, vc_to, vc_via_REG, vc_contact, v_contact, m_add_Authorization_digest( vc_authorization, {c_Integrity_protected_no} Loading @@ -333,14 +358,14 @@ module AtsSccas_TCFunctions { PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "600000", m_sccas_featureCaps( // TS 124 237 Clause C.6 Definition of feature-capability indicator g.3gpp.atcfmgmt-uri -/*m_sccas_featureCaps( // TS 124 237 Clause C.6 Definition of feature-capability indicator g.3gpp.atcfmgmt-uri { m_fcValue( "g-3gpp-atcf-mgmt-uri-in-path", "g-3gpp-atcf-mgmt-uri\", { {"sip-uri", { tokenOrHost := PX_SIP_URI }} {"sip-uri", { tokenOrHost := PX_ACTF_MGMT_URI }} }) }), })*/, // TODO To be refined during validation m_contentType(c_sdpApplication), // TODO To be refined during validation m_MBody_SDP(vc_sdp_local) // TODO To be refined during validation )); Loading Loading @@ -378,6 +403,128 @@ module AtsSccas_TCFunctions { } // End of group TP_6_3_4_Trigger_SRVCC_To_MSC group TP_6_3_5_Providing_SRVCC_To_MSC { /** * @desc Verify that the SCCAS successfully provide CS to PS SRVCC information * @param p_cSeq_s Random CSeq REGISTER number */ function f_TC_ISC_SCCAS_RSC_REG_06_ueims(in CSeq p_cSeq_s) runs on ImsComponent { // Local variables var CSeq v_cSeq_s := p_cSeq_s; var Contact v_contact; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); action("Please register UE") f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // Registration f_setHeaders_REGISTER(v_cSeq_s); v_contact := valueof(vc_contact); v_contact.contactBody.contactAddresses[0].contactParams := { // TODO To be refined during validation { "g.3gpp.icsi-ref", {tokenOrHost := PX_ICSI_URI} } }; f_SendREGISTER( m_sccas_register( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, v_contact, m_add_Authorization_digest( vc_authorization, {c_Integrity_protected_no} ), PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation "600000", -/*m_sccas_featureCaps( // TS 124 237 Clause C.6 Definition of feature-capability indicator g.3gpp.atcfmgmt-uri { m_fcValue( "g-3gpp-atcf-mgmt-uri-in-path", { {"sip-uri", { tokenOrHost := PX_ACTF_MGMT_URI }} }) })*/, // TODO To be refined during validation m_contentType(c_sdpApplication), // TODO To be refined during validation m_MBody_SDP(vc_sdp_local) // TODO To be refined during validation )); tc_ack.start; alt { [] SIPP.receive(mw_sccas_Response_2xxonREGISTER( vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation mw_PAssertedID( mw_PAssertedIDValue(PX_SCCAS_URI) ), // TODO To be refined during validation mw_acceptContact( { // TODO To be refined during validation { "g.3gpp.path-media", {tokenOrHost := PX_ICSI_URI} } } ) )) { tc_ack.stop; log("*** " & __SCOPE__ & ": PASS: 200 OK message was received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync } [] tc_ack.timeout { f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync } } // TODO Deregistration? f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // End of function f_TC_ISC_SCCAS_RSC_REG_06_ueims function f_TC_ISC_SCCAS_RSC_REG_06_msc(in CSeq p_cSeq_s) runs on ImsComponent { // Local variables var CSeq v_cSeq_s := p_cSeq_s; // Preambule f_init_userprofile(c_userProfile_UE1atSUThome); f_initSipUrl(c_serviceProfile_EMERGENCY); f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync // Message LibIms_Steps.f_setHeadersMESSAGE(v_cSeq_s, vc_from.addressField.addrSpecUnion, vc_to.addressField.addrSpecUnion); f_awaitingMESSAGE( mw_sccas_MESSAGE_Request( -, -, mw_pChargingVector(-, { tokenOrHost := "orig-ioi" }), // TODO To be refined during validation -, m_contentType("application/vnd.3gpp.SRVCC-info+xml"), // TODO To be refined during validation ? // TODO To be refined during validation ) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync // Answer to the MESSAGE f_send200OK(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync } // end function f_TC_ISC_SCCAS_RSC_REG_06_msc } // End of group TP_6_3_5_Providing_SRVCC_To_MSC } // End of group Group_6_3 group Group_6A_4 { Loading
ttcn/AtsSccas/AtsSccas_Templates.ttcn +20 −3 Original line number Diff line number Diff line Loading @@ -62,8 +62,22 @@ module AtsSccas_Templates fcParams := p_fcParams } // End of template mw_fcValue template(value) Contact m_sccas_contact( in template (value) SipUrl p_sipUrl, in template (value) SemicolonParam_List p_contactParams ) modifies m_Contact := { contactBody := { contactAddresses := { { contactParams := p_contactParams } } } } // End of template m_sccas_contact template (present) LibSip_SIPTypesAndValues.Contact mw_sccas_contact( template (present) ContactBody p_contact_body := ? template (present) ContactBody p_contact_body := ?, template SemicolonParam_List p_contactParams := * ) := { contactBody := p_contact_body } // End of template mw_sccas_contact Loading Loading @@ -163,11 +177,14 @@ module AtsSccas_Templates template (present) To p_to := ?, template (present) Via p_via := ?, template (present) Contact p_contact := ?, template (present) PChargingVector p_pChargingVector := ? template (present) PChargingVector p_pChargingVector := ?, template (present) PAssertedID p_pAssertedID := ?, template AcceptContact p_acceptContact := * ) modifies mw_Response_2xx_Base := { msgHeader := { pChargingVector := p_pChargingVector, contact := p_contact contact := p_contact, acceptContact := p_acceptContact } } // End of template mw_sccas_Response_2xxonREGISTER Loading
ttcn/AtsSccas/AtsSccas_TestSystem.ttcn +6 −5 Original line number Diff line number Diff line Loading @@ -25,17 +25,17 @@ module AtsSccas_TestSystem type charstring CM_Message; } // end group CMTypes group Signatures { /*group Signatures { signature s_SIP_conversation (in charstring text, out boolean answer); signature s_SIP_ringing (in charstring text, out boolean answer); } // end group Signatures }*/ // end group Signatures group SystemConfiguration { group Ports { type port operatorPort_SIP procedure { /*type port operatorPort_SIP procedure { inout s_SIP_conversation; inout s_SIP_ringing}; inout s_SIP_ringing};*/ type port Coordination message { inout CM_Message} with {extension "internal"}; Loading @@ -48,7 +48,8 @@ module AtsSccas_TestSystem */ type component TestAdapter { port SipPort UEIMS, SCCAS, ATCF, MSC, UE1; port operatorPort_SIP opPortS; //port operatorPort_SIP opPortS; port OperatorPort opPortS; } } // end Group TestSystemInterfaces Loading
ttcn/AtsSccas/AtsSccas_Testcases.ttcn +38 −11 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ module AtsSccas_Testcases group TP_6_3_1_General { /* * @desc TC_IMST2_GM_GEN_01 * @desc Verify that the SCCAS successfully obtain/processes 3pty registration information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_01(inout CSeq p_cSeq_s) Loading @@ -44,10 +44,10 @@ module AtsSccas_Testcases f_cf_1IscDown(v_imsComponent_ueims); } // end TC_ISC_SCCAS_RSC_REG_01 } // End of TC_ISC_SCCAS_RSC_REG_01 /* * @desc TC_IMST2_GM_GEN_02 * @desc Verify that the SCCAS successfully obtain/processes de-registration information (Expires=0) * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_02(inout CSeq p_cSeq_s) Loading @@ -65,14 +65,14 @@ module AtsSccas_Testcases f_cf_1IscDown(v_imsComponent_ueims); } // end TC_ISC_SCCAS_RSC_REG_02 } // End of TC_ISC_SCCAS_RSC_REG_02 } // End of group TP_6_3_1_General group TP_6_3_2_Triggers_To_ATCF { /* * @desc TC_IMST2_GM_GEN_03 * @desc Verify that the SCCAS successfully obtain/processes SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_03(inout CSeq p_cSeq_s) Loading @@ -90,14 +90,14 @@ module AtsSccas_Testcases f_cf_1IscDown(v_imsComponent_ueims); } // end TC_ISC_SCCAS_RSC_REG_03 } // End of TC_ISC_SCCAS_RSC_REG_03 } // End of group TP_6_3_2_Triggers_To_ATCF group TP_6_3_3_SRVCC_Information_To_ATCF { /* * @desc TC_IMST2_GM_GEN_04 * @desc Verify that the SCCAS successfully sends MESSAGE providing PS to CS SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_04(inout CSeq p_cSeq_s) Loading @@ -117,14 +117,14 @@ module AtsSccas_Testcases f_cf_1Isc1AtcfDown(v_imsComponent_ueims, v_imsComponent_atcf); } // end TC_ISC_SCCAS_RSC_REG_04 } // End of TC_ISC_SCCAS_RSC_REG_04 } // End of group TP_6_3_3_SRVCC_Information_To_ATCF group TP_6_3_4_Trigger_SRVCC_To_MSC { /* * @desc TC_IMST2_GM_GEN_05 * @desc Verify that the SCCAS successfully get CS to PS SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_05(inout CSeq p_cSeq_s) Loading @@ -137,17 +137,44 @@ module AtsSccas_Testcases //Start f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_RSC_REG_05_ueims(p_cSeq_s)); v_imsComponent_msc.start(f_TC_ISC_SCCAS_RSC_REG_05_msc(p_cSeq_s)); f_IncCSeq(p_cSeq_s); v_imsComponent_msc.start(f_TC_ISC_SCCAS_RSC_REG_05_msc(p_cSeq_s)); // TODO Not considered in TP? // synchronize both PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Isc1AtcfDown(v_imsComponent_ueims, v_imsComponent_msc); } // end TC_ISC_SCCAS_RSC_REG_05 } // End of TC_ISC_SCCAS_RSC_REG_05 } // End of group TP_6_3_4_Trigger_SRVCC_To_MSC group TP_6_3_5_Providing_SRVCC_To_MSC { /* * @desc Verify that the SCCAS successfully provide CS to PS SRVCC information * @param p_cSeq_s Transaction Id */ testcase TC_ISC_SCCAS_RSC_REG_06(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter { //Variables var ImsComponent v_imsComponent_ueims; var ImsComponent v_imsComponent_msc; f_cf_1Isc1AtcfUp(v_imsComponent_ueims, v_imsComponent_msc); //Start f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_RSC_REG_06_ueims(p_cSeq_s)); f_IncCSeq(p_cSeq_s); v_imsComponent_msc.start(f_TC_ISC_SCCAS_RSC_REG_06_msc(p_cSeq_s)); // TODO Not considered in TP? // synchronize both PTCs on 3 sychronization points f_serverSync2Clients({c_prDone, c_tbDone, c_poDone}); f_cf_1Isc1AtcfDown(v_imsComponent_ueims, v_imsComponent_msc); } // End of TC_ISC_SCCAS_RSC_REG_06 } // End of group TP_6_3_5_Providing_SRVCC_To_MSC } // End of group Group_6_3 group Group_6A_4 { Loading
ttcn/AtsSccas/AtsSccas_TCFunctions_TS124292.ttcn +1 −1 File changed.Contains only whitespace changes. Show changes