Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
* @author TTF T016
* @version $Id$
* @desc This module provides the TCfunctions used by the test component
* for SCCAS tests.
*/
module AtsSccas_TCFunctions {
// XSD support
import from XSD all;
// LibCommon
import from LibCommon_Sync all;
import from LibCommon_VerdictControl all;
import from LibCommon_DataStrings all;
// LibSip
import from LibSip_SIPTypesAndValues all;
import from LibSip_SDPTypes all;
import from LibSip_Templates all;
import from LibSip_Steps all;
import from LibSip_Interface all;
import from LibSip_PIXITS all;
// LibIms
import from LibIms_Templates all;
import from LibIms_Steps all;
import from LibIms_SIPTypesAndValues all;
import from LibIms_Interface all;
// AtsSccas
// import from AtsSccas_TestSystem all;
import from AtsSccas_Templates all;
import from AtsSccas_Steps all;
import from AtsSccas_PICS all;
import from AtsSccas_PIXITS all;
import from AtsSccas_TestConfiguration all;
group Group_6_3 {
group TP_6_3_1_General {
/**
* @desc Verify that the SCCAS successfully obtain/processes 3pty registration information
* @param p_cSeq_s Random CSeq REGISTER number
*/
function f_TC_ISC_SCCAS_RSC_REG_01(in CSeq p_cSeq_s)
runs on ImsComponent {
// Local variables
var CSeq v_cSeq_s := p_cSeq_s;
var template(value) REGISTER_Request m_register3ptyUe;
var template(value) RequestUnion m_req;
var template(value) Response m_ResponseReg_3ptyUe;
// Preamble
f_init_userprofile(c_userProfile_PCSCFwithHomeUE);
f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
f_initSipUrl(c_userProfile_PCSCFwithHomeUE);
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
//Registration
f_setHeaders_REGISTER(v_cSeq_s);//UE REGISTER
m_register3ptyUe := m_register_ue_srvcc(
vc_requestUri,
vc_callId,
vc_cSeq,
vc_from,
vc_to,
vc_via_REG,
vc_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",
omit,
omit,
omit
);
m_req:= {Register:=valueof(m_register3ptyUe)};
m_ResponseReg_3ptyUe := m_Response_2xxonREGISTER_IMS(
c_statusLine200,
vc_callId,
p_cSeq_s,
vc_from,
vc_to,
vc_via_REG,
vc_contact,
m_SipUrl_currDomain(vc_userprofile),
vc_from.addressField.nameAddr.addrSpec
);
f_init_userprofile(c_userProfile_SCSCFwithHomeUE);
f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_AS); //AS as SCCAS
f_initSipUrl(c_userProfile_SCSCFwithHomeUE);
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync preambleDone
f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER
m_REGISTER_Request_AS(
vc_requestUri,
vc_callId,
vc_cSeq,
vc_from,
vc_to,
vc_via_REG,
vc_contact,
-,
"600000",
m_contentType("multipart/mixed",{m_contentTypeBoundary(c_boundary)}) ,
m_MBody_MIME_SipReqResp(c_boundary,m_req,m_ResponseReg_3ptyUe)
));
[] SIPP.receive(mw_Response_2xxonREGISTER_AS(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) {
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
}
}
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // End of function f_TC_ISC_SCCAS_RSC_REG_01
/**
* @desc Verify that the SCCAS successfully obtain/processes de-registration information (Expires=0)
* @param p_cSeq_s Random CSeq REGISTER number
*/
function f_TC_ISC_SCCAS_RSC_REG_02(in CSeq p_cSeq_s)
runs on ImsComponent {
// Local variables
var CSeq v_cSeq_s := p_cSeq_s;
// Preamble
f_init_userprofile(c_userProfile_SCSCFwithHomeUE);
f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_AS); //AS as SCCAS
f_initSipUrl(c_userProfile_SCSCFwithHomeUE);
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync preambleDone
f_setHeaders_REGISTER_AS(v_cSeq_s);//AS INTERFACE REGISTER
vc_requestUri,
vc_callId,
vc_cSeq,
vc_from,
vc_to,
vc_via_REG,
vc_contact,
[] SIPP.receive(mw_Response_2xxonREGISTER_AS(vc_callId, vc_cSeq, vc_from, vc_to, vc_via_REG, vc_contact)) {
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
}
}
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // End of function f_TC_ISC_SCCAS_RSC_REG_02
} // End of group TP_6_3_1_General
group TP_6_3_2_Triggers_To_ATCF {
/**
* @desc Verify that the SCCAS successfully obtain/processes SRVCC information
* @param p_cSeq_s Random CSeq REGISTER number
*/
function f_TC_ISC_SCCAS_RSC_REG_03(in CSeq p_cSeq_s)
runs on ImsComponent {
// Local variables
var CSeq v_cSeq_s := p_cSeq_s;
var template(value) REGISTER_Request m_register3ptyUe;
var template(value) RequestUnion m_req;
var template(value) Response m_ResponseReg_3ptyUe;
// Preamble
f_init_userprofile(c_userProfile_PCSCFwithHomeUE);
f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
Loading full blame...