source: trunk/ETSI-Testsuites/ETSI_auto_IOT/ttcn/AtsImsIot/AtsImsIot_TestCases_SS.ttcn @ 36

Last change on this file since 36 was 22, checked in by rings, 14 years ago
  • Property svn:executable set to *
File size: 25.1 KB
Line 
1/**
2 *      @author         STF 370
3 *  @version    $Id: $
4 *      @desc           This module provides ATS specific test case definitions.
5 */
6module AtsImsIot_TestCases_SS {
7       
8        import from AtsImsIot_Behavior {
9        function all;
10    }
11
12        import from AtsImsIot_Functions {
13        function all;
14    }
15
16        import from LibIot_PIXITS {modulepar PX_EUT_A, PX_EUT_B;}
17
18        import from LibIms_UpperTester {type ImsUserInfo;}
19
20        import from LibIot_TestConfiguration {
21        function f_cf_create_IotEquipmentUser;
22    }
23
24        import from AtsImsIot_TestConfiguration {
25        const all;
26        function all;
27    }
28
29        import from LibIot_TestInterface {type IotEquipmentUser;}
30
31        import from AtsImsIot_TestSystem {
32        type ImsInterfaceMonitor, ImsTestCoordinator, IotSystemInterface, CF_INT_AS, CF_ROAM_AS;
33    }
34
35        /**
36         * @desc Supplementary Service HOLD with AS
37         * @see TS 186 011-2 V2.3.1 cause 4.5.5.1
38         */
39        testcase TC_IMS_SS_0001() runs on ImsTestCoordinator system IotSystemInterface {
40                // create components
41                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
42        var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
43                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
44                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
45                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
46                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
47                var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
48                var ImsUserInfo v_userInfoB := f_getHoldUser(PX_EUT_B);
49                var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, omit, v_iscB};
50                               
51                // map/connect component ports
52                f_cf_adapter_up();
53                f_cf_user_up(v_ueA);
54                f_cf_user_up(v_ueB);
55                f_cf_int_as_up(v_config);
56               
57                // preamble
58                f_mtc_userRegistration(v_ueA, v_userInfoA);
59                f_mtc_userRegistration(v_ueB, v_userInfoB);
60                               
61                // test body
62            f_mtc_StartAllTrafficCapture();             
63                f_mtc_userInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1
64
65                f_mtc_userCheckRinging(v_ueB);//Test Sequence Step 2
66                f_mtc_userCheckPeerIsRinging(v_ueA);//Test Sequence Step 3
67                f_mtc_userAnswerCall(v_ueB);//Test Sequence Step 4
68                f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 5
69                f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 6
70
71                f_mtc_userTriggerHold(v_ueB);//Test Sequence Step 7
72               
73                //check 1 - INVITE(hold)
74                f_mtc_check_TP_IMS_5310_01_gm(v_gmB, 0); // Check1
75                f_mtc_check_TP_IMS_5310_01_isc(v_iscB); // Check1
76               
77                f_mtc_userCheckUserOnHold(v_ueA);//Test Sequence Step 8
78               
79                //check 2 - 200 OK
80                f_mtc_check_TP_IMS_5312_01_ic(v_ic, 1); // Check2
81                f_mtc_check_TP_IMS_5312_01_isc(v_iscB); // Check2
82               
83                f_mtc_userCheckUserOnHold(v_ueB);//Test Sequence Step 9
84                               
85                f_mtc_userTriggerResume(v_ueB);//Test Sequence Step 10
86               
87                //check 3 - INVITE(resume)
88                f_mtc_check_TP_IMS_5310_01_gm(v_gmB, 0); // Check3
89                f_mtc_check_TP_IMS_5310_01_isc(v_iscB); // Check3
90               
91                f_mtc_userCheckCallResumed(v_ueA);//Test Sequence Step 11
92
93                //check 4 - 200 OK
94                f_mtc_check_TP_IMS_5312_01_ic(v_ic, 0); // Check4
95                f_mtc_check_TP_IMS_5312_01_isc(v_iscB); // Check4
96
97                f_mtc_userCheckCallResumed(v_ueB);//Test Sequence Step 12
98                f_mtc_EndCall(v_ueA);//Test Sequence Step 13
99                f_mtc_userCheckCallEnded(v_ueB );//Test Sequence Step 14
100                f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 15
101
102                // postamble
103                f_PO_user_home_deregistration(v_ueA);
104                f_PO_user_home_deregistration(v_ueB);
105               
106                //unmap/disconnet component ports
107                f_cf_user_down(v_ueA);
108                f_cf_user_down(v_ueB);
109                f_cf_int_as_down(v_config);
110                f_cf_adapter_down();
111        } //end testcase TC_IMS_SS_0001
112
113        /**
114         * @desc Supplementary Service HOLD with AS in roaming
115         * @see TS 186 011-2 V2.3.1 cause 4.5.5.2
116         */
117        testcase TC_IMS_SS_0002() runs on ImsTestCoordinator system IotSystemInterface {
118                // create components
119                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
120        var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
121                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
122                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
123                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
124                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
125                var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
126                var ImsUserInfo v_userInfoB := f_getHoldUser(PX_EUT_B);
127                var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, omit, v_iscB};
128                               
129                // map/connect component ports
130                f_cf_adapter_up();
131                f_cf_user_up(v_ueA);
132                f_cf_user_up(v_ueB);
133                f_cf_roam_as_up(v_config);
134               
135                // preamble
136                f_mtc_userRegistration(v_ueA, v_userInfoA);
137                f_mtc_userRegistration(v_ueB, v_userInfoB);
138                               
139                // test body
140            f_mtc_StartAllTrafficCapture();             
141                f_mtc_userInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1
142
143                f_mtc_userCheckRinging(v_ueB);//Test Sequence Step 2
144                f_mtc_userCheckPeerIsRinging(v_ueA);//Test Sequence Step 3
145                f_mtc_userAnswerCall(v_ueB);//Test Sequence Step 4
146                f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 5
147                f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 6
148
149                f_mtc_userTriggerHold(v_ueB);//Test Sequence Step 7
150
151                //check 1 - INVITE(hold)
152                f_mtc_check_TP_IMS_5310_01_gm(v_gmB, 1); // Check1 - skip one INVITE when call is established
153                f_mtc_check_TP_IMS_5310_01_isc(v_iscB); // Check1
154               
155                f_mtc_userCheckUserOnHold(v_ueA);//Test Sequence Step 8
156               
157                //check 2 - 200 OK
158                f_mtc_check_TP_IMS_5312_01_ic(v_ic, 2); // Check2 - skip two 200OK when call is established - because roaming
159                f_mtc_check_TP_IMS_5312_01_isc(v_iscB); // Check2
160               
161                f_mtc_userCheckUserOnHold(v_ueB);//Test Sequence Step 9
162                f_mtc_userTriggerResume(v_ueB);//Test Sequence Step 10
163               
164                //check 3 - INVITE(resume)
165                f_mtc_check_TP_IMS_5310_01_gm(v_gmB, 0); // Check3
166                f_mtc_check_TP_IMS_5310_01_isc(v_iscB); // Check3
167               
168                f_mtc_userCheckCallResumed(v_ueA);//Test Sequence Step 11
169               
170                //check 4 - 200 OK
171                f_mtc_check_TP_IMS_5312_01_ic(v_ic, 1); // Check4
172                f_mtc_check_TP_IMS_5312_01_isc(v_iscB); // Check4
173
174                f_mtc_userCheckCallResumed(v_ueB);//Test Sequence Step 12
175                f_mtc_EndCall(v_ueA);//Test Sequence Step 13
176                f_mtc_userCheckCallEnded(v_ueB );//Test Sequence Step 14
177                f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 15
178
179                // postamble
180                f_PO_user_home_deregistration(v_ueA);
181                f_PO_user_home_deregistration(v_ueB);
182               
183                //unmap/disconnet component ports
184                f_cf_user_down(v_ueA);
185                f_cf_user_down(v_ueB);
186                f_cf_roam_as_down(v_config);
187                f_cf_adapter_down();
188        } //end testcase TC_IMS_SS_0002
189
190        /**
191                * @desc Supplementary Service OIP with AS
192                * @see TS 186 011-2 V2.3.1 cause 4.5.5.3
193                */
194        testcase TC_IMS_SS_0003() runs on ImsTestCoordinator system IotSystemInterface {
195                // create components
196                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
197                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
198                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
199                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
200                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
201                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
202                var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
203                var ImsUserInfo v_userInfoB := f_getOIPUser(PX_EUT_B);
204                var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, omit, v_iscB};
205                               
206                // map/connect component ports
207                f_cf_adapter_up();
208                f_cf_user_up(v_ueA);
209                f_cf_user_up(v_ueB);
210                f_cf_int_as_up(v_config);
211               
212                // preamble
213                f_mtc_userRegistration(v_ueA, v_userInfoA);
214                f_mtc_userRegistration(v_ueB, v_userInfoB);
215                               
216                // test body
217                f_mtc_StartAllTrafficCapture();         
218                f_mtc_userInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1
219
220                //check 1,2 - INVITE
221                f_mtc_check_TP_IMS_5097_02_gm(v_gmA, false);// Check1
222                f_mtc_check_TP_IMS_5097_02_ic(v_ic, true);// Check1
223                f_mtc_check_TP_IMS_5108_03_ic(v_ic, false);// Check2
224                f_mtc_check_TP_IMS_5108_03_isc(v_iscB, false);// Check2
225
226                f_mtc_userCheckRinging(v_ueB);//Test Sequence Step 2
227                f_mtc_userCheckPeerIsRinging(v_ueA);//Test Sequence Step 3
228                f_mtc_userAnswerCall(v_ueB);//Test Sequence Step 4
229               
230                //check 3 - 200 OK
231                f_mtc_check_TP_IMS_5115_08_isc(v_iscB, false);// Check3
232                f_mtc_check_TP_IMS_5115_08_ic(v_ic, false, 0);// Check3
233               
234                f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 5
235                f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 6
236
237                f_mtc_EndCall(v_ueA);//Test Sequence Step 7
238                f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
239                f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 9
240
241                // postamble
242                f_PO_user_home_deregistration(v_ueA);
243                f_PO_user_home_deregistration(v_ueB);
244               
245                //unmap/disconnet component ports
246                f_cf_user_down(v_ueA);
247                f_cf_user_down(v_ueB);
248                f_cf_int_as_down(v_config);
249                f_cf_adapter_down();
250        } //end testcase TC_IMS_SS_0003
251
252        /**
253                * @desc Supplementary Service OIP with AS in roaming
254                * @see TS 186 011-2 V2.3.1 cause 4.5.5.4
255                */
256        testcase TC_IMS_SS_0004() runs on ImsTestCoordinator system IotSystemInterface {
257                // create components
258                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
259                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
260                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
261                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
262                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
263                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
264                var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
265                var ImsUserInfo v_userInfoB := f_getOIPUser(PX_EUT_B);
266                var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, omit, v_iscB};
267                               
268                // map/connect component ports
269                f_cf_adapter_up();
270                f_cf_user_up(v_ueA);
271                f_cf_user_up(v_ueB);
272                f_cf_roam_as_up(v_config);
273               
274                // preamble
275                f_mtc_userRegistration(v_ueA, v_userInfoA);
276                f_mtc_userRegistration(v_ueB, v_userInfoB);
277                               
278                // test body
279                f_mtc_StartAllTrafficCapture();         
280                f_mtc_userInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1
281
282                //checks 1,2 - INVITE
283                f_mtc_check_TP_IMS_5097_02_gm(v_gmA, false);// Check1
284                f_mtc_check_TP_IMS_5097_02_ic(v_ic, true);// Check1
285                f_mtc_check_TP_IMS_5108_03_ic(v_ic, false);// Check2
286                f_mtc_check_TP_IMS_5108_03_isc(v_iscB, false);// Check2
287
288                f_mtc_userCheckRinging(v_ueB);//Test Sequence Step 2
289                f_mtc_userCheckPeerIsRinging(v_ueA);//Test Sequence Step 3
290                f_mtc_userAnswerCall(v_ueB);//Test Sequence Step 4
291               
292                //check 3 - 200 OK
293                f_mtc_check_TP_IMS_5115_08_isc(v_iscB, false);// Check3
294                f_mtc_check_TP_IMS_5115_08_ic(v_ic, false, 1);// Check3 //skip 200OK IMSA->IMSB
295               
296                f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 5
297                f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 6
298
299                f_mtc_EndCall(v_ueA);//Test Sequence Step 7
300                f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
301                f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 9
302
303                // postamble
304                f_PO_user_home_deregistration(v_ueA);
305                f_PO_user_home_deregistration(v_ueB);
306               
307                //unmap/disconnet component ports
308                f_cf_user_down(v_ueA);
309                f_cf_user_down(v_ueB);
310                f_cf_roam_as_down(v_config);
311                f_cf_adapter_down();
312        } //end testcase TC_IMS_SS_0004
313
314        /**
315                * @desc Supplementary Service OIR and ACR with AS
316                * @see TS 186 011-2 V2.3.1 cause 4.5.5.5
317                */
318        testcase TC_IMS_SS_0005() runs on ImsTestCoordinator system IotSystemInterface {
319                // create components
320                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
321                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
322                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
323                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
324                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
325                var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
326                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
327                var ImsUserInfo v_userInfoA := f_getOIRUser(PX_EUT_A);
328                var ImsUserInfo v_userInfoB := f_getACRUser(PX_EUT_B);
329                var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB};
330                               
331                // map/connect component ports
332                f_cf_adapter_up();
333                f_cf_user_up(v_ueA);
334                f_cf_user_up(v_ueB);
335                f_cf_int_as_up(v_config);
336               
337                // preamble
338                f_mtc_userRegistration(v_ueA, v_userInfoA);
339                f_mtc_userRegistration(v_ueB, v_userInfoB);
340                               
341                // test body
342                f_mtc_StartAllTrafficCapture();         
343                f_mtc_userInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1
344
345                //check 1 - INVITE
346                f_mtc_check_TP_IMS_5108_03_ic(v_ic, false);// Check1
347                f_mtc_check_TP_IMS_5108_03_isc(v_iscB, false);// Check1
348               
349                //check 2 - 433 Anonymity Disallowe
350                f_mtc_check_TP_IMS_5313_01_ic(v_ic, false);// Check2
351                f_mtc_check_TP_IMS_5313_01_isc(v_iscA, false);// Check2
352
353                f_mtc_userCheckCallRejectedACR(v_ueA);//Test Sequence Step 2
354
355                // postamble
356                f_PO_user_home_deregistration(v_ueA);
357                f_PO_user_home_deregistration(v_ueB);
358               
359                //unmap/disconnet component ports
360                f_cf_user_down(v_ueA);
361                f_cf_user_down(v_ueB);
362                f_cf_int_as_down(v_config);
363                f_cf_adapter_down();
364        } //end testcase TC_IMS_SS_0005
365
366        /**
367                * @desc Supplementary Service OIR and ACR with AS in roaming
368                * @see TS 186 011-2 V2.3.1 cause 4.5.5.6
369                */
370        testcase TC_IMS_SS_0006() runs on ImsTestCoordinator system IotSystemInterface {
371                // create components
372                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
373                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
374                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
375                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
376                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
377                var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
378                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
379                var ImsUserInfo v_userInfoA := f_getACRUser(PX_EUT_A);
380                var ImsUserInfo v_userInfoB := f_getOIRUser(PX_EUT_B);
381                var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB};
382                               
383                // map/connect component ports
384                f_cf_adapter_up();
385                f_cf_user_up(v_ueA);
386                f_cf_user_up(v_ueB);
387                f_cf_roam_as_up(v_config);
388               
389                // preamble
390                f_mtc_userRegistration(v_ueA, v_userInfoA);
391                f_mtc_userRegistration(v_ueB, v_userInfoB);
392                               
393                // test body
394                f_mtc_StartAllTrafficCapture();         
395                f_mtc_userInitiateCall (v_ueB, v_userInfoA);//Test Sequence Step 1
396               
397                //checks 1,2,3 - INVITE
398                f_mtc_check_TP_IMS_5046_01_gm(v_gmB, true);// Check1
399                f_mtc_check_TP_IMS_5067_01_gm(v_gmB, false);// Check2
400                f_mtc_check_TP_IMS_5046_01_ic(v_ic, true);// Check1
401                f_mtc_check_TP_IMS_5067_01_ic(v_ic, true);// Check2
402                f_mtc_check_TP_IMS_5097_09_ic(v_ic, false);// Check3
403                f_mtc_check_TP_IMS_5097_09_isc(v_iscB, false);// Check3
404               
405                f_mtc_userCheckCallRejectedACR(v_ueB);//Test Sequence Step 2
406
407                // postamble
408                f_PO_user_home_deregistration(v_ueA);
409                f_PO_user_home_deregistration(v_ueB);
410               
411                //unmap/disconnet component ports
412                f_cf_user_down(v_ueA);
413                f_cf_user_down(v_ueB);
414                f_cf_roam_as_down(v_config);
415                f_cf_adapter_down();
416        } //end testcase TC_IMS_SS_0006
417       
418        /**
419         * @desc Supplementary Service CFU with AS
420         * @see TS 186 011-2 V2.3.1 cause 4.5.5.7
421         */
422        testcase TC_IMS_SS_0007() runs on ImsTestCoordinator system IotSystemInterface {
423                // create components
424                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
425                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
426                var IotEquipmentUser v_ueB2 := f_cf_create_IotEquipmentUser(c_userUE_B2);
427                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
428                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
429                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
430                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
431                var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
432                var ImsUserInfo v_userInfoB := f_getAnyValidUser(PX_EUT_B);
433                var ImsUserInfo v_userInfoB2 := f_getAnyValidUser(PX_EUT_B);//// TODO f_getAnyValidUser2 ?
434                var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, omit, v_iscB};
435               
436                // map/connect component ports
437                // f_cf_user_up(v_ueB);
438                f_cf_adapter_up();
439                f_cf_user_up(v_ueA);
440                f_cf_user_up(v_ueB);
441                f_cf_user_up(v_ueB2);
442                f_cf_int_as_up(v_config);
443               
444                // preamble
445                f_mtc_userRegistration(v_ueA, v_userInfoA);
446                f_mtc_userRegistration(v_ueB, v_userInfoB);
447                f_mtc_userRegistration(v_ueB2, v_userInfoB2);
448               
449                // test body
450                f_mtc_userInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1
451
452        // checks 1,2 - INVITE
453                f_mtc_check_TP_IMS_5097_01_gm(v_gmA, false); // Check1
454                f_mtc_check_TP_IMS_5097_01_ic(v_ic, true); // Check1
455                f_mtc_check_TP_IMS_5108_03_ic(v_ic, false); // Check2
456                f_mtc_check_TP_IMS_5108_03_isc(v_iscB, false); // Check2
457
458                //f_mtc_userCheckRinging(v_ueB2); //possible Test Sequence Step
459                //f_mtc_userCheckPeerIsRinging(v_ueA); //possible Test Sequence Step
460                f_mtc_userAnswerCall(v_ueB2);//Test Sequence Step 3
461
462                //check 3 - 200 OK
463                f_mtc_check_TP_IMS_5115_08_isc(v_iscB, false);// Check3
464                f_mtc_check_TP_IMS_5115_08_ic(v_ic, false, 0);// Check3
465               
466                f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 4
467                f_mtc_userCheckCallEstablished(v_ueB2);//Test Sequence Step 5
468
469                f_mtc_EndCall(v_ueA);//Test Sequence Step 6
470                f_mtc_userCheckCallEnded(v_ueB2);//Test Sequence Step 7
471                f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 8
472               
473                // postamble
474                f_PO_user_home_deregistration(v_ueA);
475                f_PO_user_home_deregistration(v_ueB);
476                f_PO_user_home_deregistration(v_ueB2);
477               
478                //unmap/disconnet component ports
479                f_cf_user_down(v_ueA);
480                f_cf_user_down(v_ueB);
481                f_cf_user_down(v_ueB2);
482                f_cf_int_as_down(v_config);
483                f_cf_adapter_down();
484        } //end testcase TC_IMS_SS_0007
485       
486        /**
487         * @desc Supplementary Service CFU with AS in roaming
488         * @see TS 186 011-2 V2.3.1 cause 4.5.5.8
489         */
490        testcase TC_IMS_SS_0008() runs on ImsTestCoordinator system IotSystemInterface {
491                // create components
492                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
493                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
494                var IotEquipmentUser v_ueA2 := f_cf_create_IotEquipmentUser(c_userUE_A2);
495                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
496                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
497                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
498                var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
499                var ImsUserInfo v_userInfoA := f_getAnyValidUser(PX_EUT_A);
500                var ImsUserInfo v_userInfoB := f_getAnyValidUser(PX_EUT_B);
501                var ImsUserInfo v_userInfoA2 := f_getAnyValidUser(PX_EUT_A);//// TODO f_getAnyValidUser2 ?
502                var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, omit};
503               
504                // map/connect component ports
505                // f_cf_user_up(v_ueB);
506                f_cf_adapter_up();
507                f_cf_user_up(v_ueA);
508                f_cf_user_up(v_ueB);
509                f_cf_user_up(v_ueA2);
510                f_cf_roam_as_up(v_config);
511               
512                // preamble
513                f_mtc_userRegistration(v_ueA, v_userInfoA);
514                f_mtc_userRegistration(v_ueB, v_userInfoB);
515                f_mtc_userRegistration(v_ueA2, v_userInfoA2);
516               
517                // test body
518                f_mtc_userInitiateCall (v_ueB, v_userInfoA);//Test Sequence Step 1
519
520        // checks 1,2,3 - INVITE
521                f_mtc_check_TP_IMS_5046_01_gm(v_gmB, true); // Check1
522                f_mtc_check_TP_IMS_5067_01_gm(v_gmB, false); // Check2
523                f_mtc_check_TP_IMS_5046_01_ic(v_ic, true); // Check1
524                f_mtc_check_TP_IMS_5067_01_ic(v_ic, true); // Check2
525                f_mtc_check_TP_IMS_5070_01_ic(v_ic, false); // Check3
526
527                //f_mtc_userCheckRinging(v_ueA2); //possible Test Sequence Step
528                //f_mtc_userCheckPeerIsRinging(v_ueA); //possible Test Sequence Step
529                f_mtc_userAnswerCall(v_ueA2);//Test Sequence Step 3
530
531                //check 4 - 200 OK
532                f_mtc_check_TP_IMS_5110_01_isc(v_iscA); // Check4
533                f_mtc_check_TP_IMS_5110_01_ic(v_ic); // Check4
534               
535                f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 4
536                f_mtc_userCheckCallEstablished(v_ueA2);//Test Sequence Step 5
537
538                f_mtc_EndCall(v_ueB);//Test Sequence Step 6
539                f_mtc_userCheckCallEnded(v_ueA2);//Test Sequence Step 7
540                f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
541               
542                // postamble
543                f_PO_user_home_deregistration(v_ueA);
544                f_PO_user_home_deregistration(v_ueB);
545                f_PO_user_home_deregistration(v_ueA2);
546               
547                //unmap/disconnet component ports
548                f_cf_user_down(v_ueA);
549                f_cf_user_down(v_ueB);
550                f_cf_user_down(v_ueA2);
551                f_cf_roam_as_down(v_config);
552                f_cf_adapter_down();
553        } //end testcase TC_IMS_SS_0008
554       
555        /**
556         * @desc Supplementary Service OIP and OIR with AS
557         * @see TS 186 011-2 V2.3.1 cause 4.5.5.9
558         */
559        testcase TC_IMS_SS_0009() runs on ImsTestCoordinator system IotSystemInterface {
560                // create components
561                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
562                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
563                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
564                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
565                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
566                var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
567                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
568                var ImsUserInfo v_userInfoA := f_getOIRUser(PX_EUT_A);
569                var ImsUserInfo v_userInfoB := f_getOIPUser(PX_EUT_B);
570                var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB};
571               
572                // map/connect component ports
573                // f_cf_user_up(v_ueB);
574                f_cf_adapter_up();
575                f_cf_user_up(v_ueA);
576                f_cf_user_up(v_ueB);
577                f_cf_int_as_up(v_config);
578               
579                // preamble
580                f_mtc_userRegistration(v_ueA, v_userInfoA);
581                f_mtc_userRegistration(v_ueB, v_userInfoB);
582               
583                // test body
584                f_mtc_userInitiateCall (v_ueA, v_userInfoB);//Test Sequence Step 1
585
586        // checks 1,2 - INVITE
587                f_mtc_check_TP_IMS_5097_01_gm(v_gmA, false); // Check1
588                f_mtc_check_TP_IMS_5097_01_ic(v_ic, true); // Check1
589                f_mtc_check_TP_IMS_5108_03_ic(v_ic, false); // Check2
590                f_mtc_check_TP_IMS_5108_03_isc(v_iscB, false); // Check2
591
592                f_mtc_userCheckRinging(v_ueB); //possible Test Sequence Step
593                f_mtc_userCheckPeerIsRinging(v_ueA); //possible Test Sequence Step
594                f_mtc_userAnswerCall(v_ueB);//Test Sequence Step 3
595               
596                f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 4
597                f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 5
598
599                f_mtc_EndCall(v_ueB);//Test Sequence Step 6
600                f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 7
601                f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
602               
603                // postamble
604                f_PO_user_home_deregistration(v_ueA);
605                f_PO_user_home_deregistration(v_ueB);
606               
607                //unmap/disconnet component ports
608                f_cf_user_down(v_ueA);
609                f_cf_user_down(v_ueB);
610                f_cf_int_as_down(v_config);
611                f_cf_adapter_down();
612        } //end testcase TC_IMS_SS_0009
613       
614        /**
615         * @desc Supplementary Service OIP and OIR with AS in roaming
616         * @see TS 186 011-2 V2.3.1 cause 4.5.5.10
617         */
618        testcase TC_IMS_SS_0010() runs on ImsTestCoordinator system IotSystemInterface {
619                // create components
620                var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A);
621                var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B);
622                var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A);
623                var ImsInterfaceMonitor v_gmB := f_cf_create_monitor(c_gm_B);
624                var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic);
625                var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A);
626                var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B);
627                var ImsUserInfo v_userInfoA := f_getOIRUser(PX_EUT_A);
628                var ImsUserInfo v_userInfoB := f_getOIPUser(PX_EUT_B);
629                var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB};
630               
631                // map/connect component ports
632                // f_cf_user_up(v_ueB);
633                f_cf_user_up(v_ueA);
634                f_cf_user_up(v_ueB);
635                f_cf_roam_as_up(v_config);
636               
637                // preamble
638                f_mtc_userRegistration(v_ueA, v_userInfoA);
639                f_mtc_userRegistration(v_ueB, v_userInfoB);
640               
641                // test body
642                f_mtc_userInitiateCall (v_ueB, v_userInfoA);//Test Sequence Step 1
643
644                //checks 1,2,5 - INVITE
645        f_mtc_check_TP_IMS_5046_01_gm(v_gmB, true);// Check1
646        f_mtc_check_TP_IMS_5067_01_gm(v_gmB, false);// Check5
647        f_mtc_check_TP_IMS_5046_01_ic(v_ic, true);// Check1
648        f_mtc_check_TP_IMS_5067_01_ic(v_ic, true);// Check5
649        f_mtc_check_TP_IMS_5097_09_ic(v_ic, false);// Check2
650        f_mtc_check_TP_IMS_5097_09_isc(v_iscB, false);// Check2
651
652                //check 3 -180 Ringing
653                f_mtc_check_TP_IMS_5308_01_gm(v_gmA, false);// Check3
654                f_mtc_check_TP_IMS_5308_01_isc(v_iscA, false);// Check3
655               
656                f_mtc_userCheckRinging(v_ueB); //possible Test Sequence Step
657                f_mtc_userCheckPeerIsRinging(v_ueA); //possible Test Sequence Step
658                f_mtc_userAnswerCall(v_ueA);//Test Sequence Step 3
659               
660                //check 4 -200 OK
661                f_mtc_check_TP_IMS_5308_02_gm(v_gmA, false);// Check4
662                f_mtc_check_TP_IMS_5308_02_isc(v_iscA, false);// Check4
663               
664                f_mtc_userCheckCallEstablished(v_ueB);//Test Sequence Step 4
665                f_mtc_userCheckCallEstablished(v_ueA);//Test Sequence Step 5
666
667                f_mtc_EndCall(v_ueB);//Test Sequence Step 6
668                f_mtc_userCheckCallEnded(v_ueA);//Test Sequence Step 7
669                f_mtc_userCheckCallEnded(v_ueB);//Test Sequence Step 8
670               
671                // postamble
672                f_PO_user_home_deregistration(v_ueA);
673                f_PO_user_home_deregistration(v_ueB);
674               
675                //unmap/disconnet component ports
676                f_cf_user_down(v_ueA);
677                f_cf_user_down(v_ueB);
678                f_cf_roam_as_down(v_config);
679        } //end testcase TC_IMS_SS_0010
680}
Note: See TracBrowser for help on using the repository browser.