Skip to content
GitLab
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
INT - Core Network and Interoperability Testing
Voice and Video over LTE
Emergency VoLTE Interoperability Tests
Compare revisions
c6141db80d7c5e555cd03cfc445370e8e2044d0d...fb551cafe96a7a14fd6d8b153ac0bb10370979ed
Commits (2)
Inteface issues fixed in TD_VoLTE_ECO_INT_INI_01_01
· 914b5a63
Yann Garcia
authored
May 31, 2023
914b5a63
Merge branch 'TTF010' of
https://forge.etsi.org/rep/int/vxlte/emergency-iop
into TTF010
· fb551caf
Yann Garcia
authored
May 31, 2023
fb551caf
Hide whitespace changes
Inline
Side-by-side
ttcn/AtsImsIot/AtsImsIot_Emergency.ttcn
View file @
fb551caf
...
...
@@ -38,7 +38,6 @@ module AtsImsIot_Emergency {
import
from
AtsImsIot_TP_behavior_SH
all
;
import
from
AtsImsIot_TP_behavior_RX
all
;
/**
* @see ETSI TS 103 795-2 Clause 5 Test Descriptions (Interoperability at HPLMN)
*/
...
...
@@ -286,8 +285,8 @@ module AtsImsIot_Emergency {
f_mtc_check_TP_MW_ECSCF_INVITE_01
(
vc_vxlte_monitor_components
.
mwPE
,
-
,
v_sip
);
// Event 10
f_mtc_check_TP_MW_ECSCF_100Trying_01
(
vc_vxlte_monitor_components
.
mwPE
,
-
,
v_sip
);
f_mtc_check_TP_MW_IBCF_INVITE_01
(
vc_vxlte_monitor_components
.
mw
??
,
-
,
v_sip
);
// Event 11
f_mtc_check_TP_MW_IBCF_100Trying_01
(
vc_vxlte_monitor_components
.
mw
??
,
-
,
v_sip
);
f_mtc_check_TP_MW_IBCF_INVITE_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
// Event 11
f_mtc_check_TP_MW_IBCF_100Trying_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
f_mtc_check_TP_IC_IBCF_INVITE_01
(
vc_vxlte_monitor_components
.
ic
,
true
);
// INVITE Event 12 (NOTE: comment out if ISC simulated by Ic)
f_mtc_check_TP_IC_IBCF_INVITE_02
(
vc_vxlte_monitor_components
.
ic
,
true
);
// INVITE Event 12 (NOTE: comment out if ISC simulated by Ic)
...
...
@@ -295,7 +294,7 @@ module AtsImsIot_Emergency {
f_mtc_check_TP_IC_IBCF_183RESP_01
(
vc_vxlte_monitor_components
.
ic
,
-
);
// 183 Event 13
// 183 Session Progress
f_mtc_check_TP_MW_IBCF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mw
PS
,
-
,
v_sip
);
// Event 14
f_mtc_check_TP_MW_IBCF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
// Event 14
f_mtc_check_TP_MW_ECSCF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mwPE
,
-
,
v_sip
);
// Event 15
f_mtc_check_TP_GM_PCSCF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 20
...
...
@@ -306,7 +305,7 @@ module AtsImsIot_Emergency {
f_mtc_check_TP_RX_PCRF_AAA_02
(
vc_vxlte_monitor_components
.
rx
);
// Event 19
f_mtc_check_TP_IC_IBCF_180RINGING_01
(
vc_vxlte_monitor_components
.
ic
,
true
);
// 180 Ringing – Event 22
f_mtc_check_TP_MW_IBCF_180RINGING_01
(
vc_vxlte_monitor_components
.
mw
PS
,
-
,
v_sip
);
// Event 23
f_mtc_check_TP_MW_IBCF_180RINGING_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
// Event 23
f_mtc_check_TP_MW_ECSCF_180RINGING_01
(
vc_vxlte_monitor_components
.
mwPE
,
-
,
v_sip
);
// Event 24
f_mtc_check_TP_GM_PCSCF_180RINGING_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 25
...
...
@@ -318,13 +317,13 @@ module AtsImsIot_Emergency {
f_mtc_check_TP_IC_IBCF_2XXRESP_02
(
vc_vxlte_monitor_components
.
ic
,
true
);
// 200 OK – Event 26
f_mtc_check_TP_IC_IBCF_2XXRESP_03
(
vc_vxlte_monitor_components
.
ic
);
// 200 OK – Event 26
f_mtc_check_TP_MW_IBCF_200OK_01
(
vc_vxlte_monitor_components
.
mw
PS
,
-
,
v_sip
);
// Event 27
f_mtc_check_TP_MW_IBCF_200OK_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
// Event 27
f_mtc_check_TP_MW_ECSCF_200OK_01
(
vc_vxlte_monitor_components
.
mwPE
,
-
,
v_sip
);
// Event 28
f_mtc_check_TP_GM_PCSCF_200OK_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 29
f_mtc_check_TP_GM_PCSCF_ACK_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 30
f_mtc_check_TP_MW_ECSCF_ACK_01
(
vc_vxlte_monitor_components
.
mwP
S
,
-
,
v_sip
);
// Event 31
f_mtc_check_TP_MW_IBSCF_ACK_01
(
vc_vxlte_monitor_components
.
mw
PS
,
-
,
v_sip
);
// Event 32
f_mtc_check_TP_MW_ECSCF_ACK_01
(
vc_vxlte_monitor_components
.
mwP
E
,
-
,
v_sip
);
// Event 31
f_mtc_check_TP_MW_IBSCF_ACK_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
// Event 32
f_mtc_check_TP_IC_IBCF_ACK_01
(
vc_vxlte_monitor_components
.
ic
);
// ACK – Event 33
f_mtc_userCheckCallEstablished
(
v_ueA
);
// Event 34
...
...
@@ -393,7 +392,7 @@ module AtsImsIot_Emergency {
//f_mtc_userInitiateCall (v_ueA, v_userTelInfoB);
f_mtc_check_TP_GM_PCSCF_INVITE_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 1
f_mtc_check_TP_GM_PCSCF_INVITE_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
//
INVITE
Event 1
f_mtc_check_TP_GM_PCSCF_100Trying_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
//Rx/Gx exchange after INVITE (SDP) was received at P-CSCF
...
...
@@ -408,20 +407,21 @@ module AtsImsIot_Emergency {
f_mtc_check_TP_MW_ECSCF_INVITE_01
(
vc_vxlte_monitor_components
.
mwPE
,
-
,
v_sip
);
// Event 10
f_mtc_check_TP_MW_ECSCF_100Trying_01
(
vc_vxlte_monitor_components
.
mwPE
,
-
,
v_sip
);
f_mtc_check_TP_MW_IBCF_INVITE_01
(
vc_vxlte_monitor_components
.
mw
??
,
-
,
v_sip
);
// Event 11
f_mtc_check_TP_MW_IBCF_100Trying_01
(
vc_vxlte_monitor_components
.
mw
??
,
-
,
v_sip
);
f_mtc_check_TP_MW_IBCF_INVITE_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
// Event 11
f_mtc_check_TP_MW_IBCF_100Trying_01
(
vc_vxlte_monitor_components
.
mw
BE
,
-
,
v_sip
);
f_mtc_check_TP_MM_PSAP_INVITE_01
(
vc_vxlte_monitor_components
.
mwB_PSAP
,
true
);
// INVITE Event 12
f_mtc_check_TP_MM_PSAP_INVITE_01
(
vc_vxlte_monitor_components
.
mwB_PSAP
,
true
);
// Event 12
f_mtc_check_TP_MM_PSAP_100Trying_01
(
vc_vxlte_monitor_components
.
mwBE
,
-
,
v_sip
);
// 183 Session Progress
f_mtc_check_TP_MM_PSAP_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mwB_PSAP
,
-
,
v_sip
);
// Event 13
f_mtc_check_TP_MW_
ECS
CF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mw
P
E
,
-
,
v_sip
);
// Event 14
f_mtc_check_TP_MW_
P
CSCF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mwP
S
,
-
,
v_sip
);
// Event 15
f_mtc_check_TP_MW_
IB
CF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mw
B
E
,
-
,
v_sip
);
// Event 14
f_mtc_check_TP_MW_
E
CSCF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
mwP
E
,
-
,
v_sip
);
// Event 15
f_mtc_check_TP_GM_PCSCF_183SESSION_PROGRESS_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 20
// PRACK after 183 Session Progress: require field is present
// FIXME Add check of requires SIP message header to check PRACK
//f_mtc_check_TP_MW_
P
CSCF_PRACK_01(vc_vxlte_monitor_components.mwP
S
, -, v_sip); // Event 15
//f_mtc_check_TP_MW_
E
CSCF_PRACK_01(vc_vxlte_monitor_components.mwP
E
, -, v_sip); // Event 15
//f_mtc_check_TP_GM_PCSCF_PRACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 20
//Rx/Gx exchange after 183(SDP) was received at P-CSCF
...
...
@@ -430,31 +430,31 @@ module AtsImsIot_Emergency {
f_mtc_check_TP_GX_PGW_RAA_02
(
vc_vxlte_monitor_components
.
gx
);
// Event 18
f_mtc_check_TP_RX_PCRF_AAA_02
(
vc_vxlte_monitor_components
.
rx
);
// Event 19
f_mtc_check_TP_MM_PSAP_1XXRESP_01
(
vc_vxlte_monitor_components
.
ic
);
// 180 Ringing – Event 22
// FIXME f_mtc_check_TP_
???
_180RINGING_01(vc_vxlte_monitor_components.mw
P
E, -, v_sip); // Event 23
f_mtc_check_TP_MW_ECSCF_180RINGING_01
(
vc_vxlte_monitor_components
.
mwP
S
,
-
,
v_sip
);
// Event 24
f_mtc_check_TP_MM_PSAP_1XXRESP_01
(
vc_vxlte_monitor_components
.
mwB_PSAP
);
// 180 Ringing – Event 22
// FIXME f_mtc_check_TP_
MW_IBCF
_180RINGING_01(vc_vxlte_monitor_components.mw
B
E, -, v_sip); // Event 23
f_mtc_check_TP_MW_ECSCF_180RINGING_01
(
vc_vxlte_monitor_components
.
mwP
E
,
-
,
v_sip
);
// Event 24
f_mtc_check_TP_GM_PCSCF_180RINGING_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 25
// PRACK after 180 Session Progress: require field is present
// FIXME Add check of requires SIP message header to check PRACK
// f_mtc_check_TP_MW_
P
CSCF_PRACK_01(vc_vxlte_monitor_components.mwP
S
, -, v_sip); // Event 15
// f_mtc_check_TP_MW_
E
CSCF_PRACK_01(vc_vxlte_monitor_components.mwP
E
, -, v_sip); // Event 15
// f_mtc_check_TP_GM_PCSCF_PRACK_01(vc_vxlte_monitor_components.gmA, -, v_sip); // Event 20
f_mtc_userCheckRinging
(
v_psap
);
f_mtc_userCheckPeerIsRinging
(
v_ueA
);
f_mtc_userAnswerCall
(
v_psap
);
//f_mtc_check_TP_IC_IBCF_2XXRESP_01(vc_vxlte_monitor_components.
ic
, true); // 200 OK – Event 26
//f_mtc_check_TP_IC_IBCF_2XXRESP_02(vc_vxlte_monitor_components.
ic
, true); // 200 OK – Event 25
f_mtc_check_TP_MM_PSAP_2XXRESP_03
(
vc_vxlte_monitor_components
.
ic
);
// 200 OK – Event 26
//f_mtc_check_TP_IC_IBCF_2XXRESP_01(vc_vxlte_monitor_components.
mwB_PSAP
, true); // 200 OK – Event 26
//f_mtc_check_TP_IC_IBCF_2XXRESP_02(vc_vxlte_monitor_components.
mwB_PSAP
, true); // 200 OK – Event 25
f_mtc_check_TP_MM_PSAP_2XXRESP_03
(
vc_vxlte_monitor_components
.
mwB_PSAP
);
// 200 OK – Event 26
// FIXME f_mtc_check_TP_???_2XXRESP_03(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 27
f_mtc_check_TP_MW_ECSCF_200OK_01
(
vc_vxlte_monitor_components
.
mwP
S
,
-
,
v_sip
);
// Event 28
f_mtc_check_TP_MW_ECSCF_200OK_01
(
vc_vxlte_monitor_components
.
mwP
E
,
-
,
v_sip
);
// Event 28
f_mtc_check_TP_GM_PCSCF_200OK_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 29
f_mtc_check_TP_GM_PCSCF_ACK_01
(
vc_vxlte_monitor_components
.
gmA
,
-
,
v_sip
);
// Event 30
f_mtc_check_TP_MW_ECSCF_ACK_01
(
vc_vxlte_monitor_components
.
mwP
S
,
-
,
v_sip
);
// Event 31
f_mtc_check_TP_MW_ECSCF_ACK_01
(
vc_vxlte_monitor_components
.
mwP
E
,
-
,
v_sip
);
// Event 31
// FIXME f_mtc_check_TP_???_ACK_01(vc_vxlte_monitor_components.mwPE, -, v_sip); // Event 32
f_mtc_check_TP_MM_PSAP_ACK_01
(
vc_vxlte_monitor_components
.
ic
);
// ACK – Event 33
f_mtc_check_TP_MM_PSAP_ACK_01
(
vc_vxlte_monitor_components
.
mwB_PSAP
);
// ACK – Event 33
f_mtc_userCheckCallEstablished
(
v_ueA
);
// Event 34
f_mtc_userCheckCallEstablished
(
v_psap
);
// Event 34
...
...
ttcn/AtsImsIot/AtsImsIot_TP_behavior_MM.ttcn
View file @
fb551caf
...
...
@@ -5,7 +5,7 @@
*/
module
AtsImsIot_TP_behavior_MM
{
// LibIms
// LibIms
import
from
LibIms_Templates
all
;
import
from
LibIms_UpperTester
all
;
// LibIot
...
...
@@ -24,10 +24,77 @@ module AtsImsIot_TP_behavior_MM {
import
from
LibMsrp_Templates
all
;
// AtsImsIot
import
from
AtsImsIot_TestSystem
all
;
import
from
AtsImsIot_Templates_MW
all
;
import
from
AtsImsIot_Templates
all
;
import
from
AtsImsIot_Templates_GM
all
;
import
from
AtsImsIot_TypesAndValues
all
;
import
from
AtsImsIot_Functions
all
;
group
imsInvite
{
/**
* @desc Verify that the P-CSCF successfully processes an initial INVITE (Originating Leg)..
* Initial conditions with {
* the UE_A entity isAttachedTo the EPC_A and
* the PSAP entity isAttachedTo the EPC_B and
* the UE_A entity isRegisteredTo the IMS_A and
* the PSAP entity isRegisteredTo the IMS_B
* }
*
* Expected behaviour
* ensure that {
* when {
* the PSAP entity receives an INVITE containing
* From indicating value PX_UE_A_SIP_URI,
* To indicating value PX_PSAP_SIP_URI,
* CallId indicating value PX_UE_A_CALLID,
* Via indicating value PX_UE_A_VIA,
* Route indicating value PX_UE_A_SERVICE_ROUTE,
* PAccessNetworkInfo,
* MessageBody containing
* SDP containing
* Version indicating value "0"
* ;
* ;;
* from the IMS_EBCF_A entity
* }
* then {
* the PSAP entity sends an 100_Trying
* to the IMS_IBCF_A entity
* }
* }
*/
function
f_mtc_check_TP_MM_PSAP_INVITE_01
(
in
SipInterfaceMonitor
p_monitorCompRef
,
in
boolean
p_checkMessage
:=
false
,
out
SipMessage
p_sip
)
runs
on
ImsTestCoordinator
{
if
(
isvalue
(
p_monitorCompRef
))
{
var
ImsUserInfo
v_userInfoA
:=
f_getTelUserId
(
PX_EUT_A
);
var
ImsUserInfo
v_userInfoB
:=
f_getTelUserId
(
PX_PSAP
);
// Check the INVITE
p_monitorCompRef
.
start
(
f_Iot_Sip_receive
(
{
mw_SipRequest
(
mw_TP_MM_PSAP_INVITE_01
(
-
,
// FIXME Set expected value
mw_From_AddrUnion_TelUrl
(
-
),
// v_userInfoA.publicId
mw_To_AddrUnion_TelUrl
(
-
)
// v_userInfoB.publicId
))
},
{
mw_SipRequest
(
mw_INVITE_Request_Base
)
},
{
0
,
omit
},
"TP_MM_PSAP_INVITE_01 - Request"
,
true
,
p_checkMessage
)
);
p_monitorCompRef
.
done
;
// Retrieve messge
f_getSipMsgFromMonitor
(
p_monitorCompRef
,
p_sip
);
log
(
"##### p_sip: "
,
p_sip
);
}
}
// End of function f_mtc_check_TP_MM_PSAP_INVITE_01
}
// End of group imsInvite
}
// end module AtsImsIot_TP_behavior_MM
\ No newline at end of file
ttcn/AtsImsIot/AtsImsIot_Templates_MM.ttcn
0 → 100644
View file @
fb551caf
/*
* @author STF 574
* @version $Id$
* @desc This module provides TP related templates used at MM interface
*/
module
AtsImsIot_Templates_MM
{
// LibCommon
//import from LibCommon_BasicTypesAndValues all;
//import from LibCommon_VerdictControl all;
// libSip
import
from
LibSip_SIPTypesAndValues
all
;
import
from
LibSip_Templates
all
;
import
from
LibSip_Common
all
;
// LibIms
import
from
LibIms_Templates
all
;
//import from LibMsrp_TypesAndValues all;
// LibIot
//import from LibIot_TypesAndValues all;
import
from
LibIot_PIXITS
all
;
// AtsImsIot
//import from AtsImsIot_TypesAndValues all;
import
from
AtsImsIot_PIXITS
all
;
import
from
AtsImsIot_Templates
all
;
}
// End of module AtsImsIot_Templates_MM