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
51
52
53
54
55
56
57
58
59
60
61
62
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
/*
* @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;
// 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);
f_SendREGISTER(
m_sccas_register(
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",
-,
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)) {
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_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;
// 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);
f_SendREGISTER(
m_sccas_register(
vc_requestUri,
vc_callId,
vc_cSeq,
vc_from,
vc_to,
vc_via_REG,
vc_contact,
omit,
PX_IMS_SUT_SCSCF_IPADDR, // TODO To be refined during validation
PX_IMS_SUT_SCSCF_PORT, // TODO To be refined during validation
"0" // Expired
));
tc_ack.start;
alt {
[] SIPP.receive(mw_sccas_Response_2xxonREGISTER(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
}
}
// TODO Deregistration?
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;
// 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);
f_SendREGISTER(
m_sccas_register(
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",
m_sccas_featureCaps({m_fcValue("g3gppAtcfFeatureCapabilityIndicator")}),
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)) {
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
}
}
Loading full blame...