Newer
Older
*/
group ENB_configuration_transfer_group {
} // End of group ENB_configuration_transfer_group
/**
* @desc MME configuration transfer group
* @see ETSI DTS/INT-00135-2 Clause 5.2.2.2.16 MME configuration transfer group
*/
group MME_configuration_transfer_group {
/**
* @desc Testcase function for TC_S1AP_MME_MCT_01
*/
function f_TC_S1AP_MME_MCT_01() runs on S1APComponent {
// Local variables
// Preamble
f_S1AP_mme_init();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. to indicate an MME Configuration Transfer procedure
if (fx_MME_Configuration_Transfer_procedure() == false) {
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
} else {
// 2. sends a MME_CONFIGURATION_TRANSFER
f_recv_Mme_Configuration_Transfer(
mw_sON_Configuration_Transfer_MCT(
mw_sON_Configuration_Transfer(
mw_TargeteNB_ID(mw_Global_eNB_ID, mw_TAI),
mw_SourceeNB_ID(mw_Global_eNB_ID, mw_TAI),
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
? // FIXME To be refined
)));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
}
// Postamble
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_MCT_01
} // End of group MME_configuration_transfer_group
/**
* @desc LPPa transport group
* @see ETSI DTS/INT-00135-2 Clause 5.2.2.2.17 LPPa transport group
*/
group LPPa_transport_group {
/**
* @desc Testcase function for TC_S1AP_MME_LPP_01
*/
function f_TC_S1AP_MME_LPP_01() runs on S1APComponent {
// Local variables
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. to indicate a LPPa Transport procedure using a UE associated signalling
if (fx_MME_LPPa_Transport_procedure_ind(true) == false) {
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
} else {
// 2. sends a DOWNLINK_UE_ASSOCIATED_LPPA_TRANSPORT
f_recv_Downlink_UE_Associated_Lppa_Transport(
mw_DownlinkUEAssociatedLppaTransportIEs_LPPa_PDU(
?
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
}
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_LPP_01
/**
* @desc Testcase function for TC_S1AP_MME_LPP_02
*/
function f_TC_S1AP_MME_LPP_02() runs on S1APComponent {
// Local variables
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. to indicate a LPPa Transport procedure using a UE associated signalling
if (fx_MME_LPPa_Transport_procedure_ind(false) == false) {
f_selfOrClientSyncAndVerdict(c_tbDone, e_error);
} else {
// 2. sends a DOWNLINK_NONE_UE_ASSOCIATED_LPPA_TRANSPORT
f_recv_Downlink_Non_UE_Associated_Lppa_Transport(
mw_DownlinkNonUEAssociatedLppaTransportIEs_LPPa_PDU(
?
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
}
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_LPP_02
} // End of group LPPa_transport_group
* @desc Unknown, Unforseen and Erroneous Protocol Data
* @see ETSI DTS/INT-00135-2 Clause 5.2.2.2.18 Unknown, Unforseen and Erroneous Protocol Data
*/
group Unknown_unforseen_errorneous_group {
/**
* @desc Testcase function for TC_S1AP_MME_ERR_01
*/
function f_TC_S1AP_MME_ERR_01() runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. on receipt of a UE_CONTEXT_RESUME_REQUEST
f_send_Ue_Context_Resume_Request(
m_UeContextResumeRequestIEs_RABFailedToResumeItem(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
m_E_RABFailedToResumeItemResumeReq(
c_E_RAB_ID_A,
m_cause_ran(user_inactivity)
)
}
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
),
PX_VA_CRITICALITY
);
// 2. sends an ERROR_INDICATION
f_recv_Error_Indication(
mw_error_IndicationIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
mw_criticalityDiagnostics_IE(
mw_criticalityDiagnostics(
PX_PROCEURE_CODE,
PX_TRIGGERING_CODE,
PX_CRITICALITY
)
)
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_ERR_01
/**
* @desc Testcase function for TC_S1AP_MME_ERR_02
*/
function f_TC_S1AP_MME_ERR_02() runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. on receipt of a UE_CONTEXT_RESUME_REQUEST
f_send_Ue_Context_Resume_Request(
m_UeContextResumeRequestIEs_Unknown_ID(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
m_E_RABFailedToResumeItemResumeReq(
c_E_RAB_ID_A,
m_cause_ran(user_inactivity)
)
}
));
// 2. sends an UE_CONTEXT_RESUME_FAILURE
f_recv_Ue_Context_Resume_Failure(
mw_UeContextResumeFailureIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
mw_cause_protocol(unspecified),
mw_criticalityDiagnostics(
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
{
mw_criticalityDiagnostics_IE_Item(
reject,
-,
missing
)
}
)
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_ERR_02
/**
* @desc Testcase function for TC_S1AP_MME_ERR_03
*/
function f_TC_S1AP_MME_ERR_03() runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. on receipt of a E-RAB_MODIFICATION_INDICATION
m_E_RABModifiedIndIEs_Unknown_ID(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
m_E_RABToBeModifiedItemBearerModInd(
c_E_RAB_ID_A,
-,
-
)
}
));
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
// 2. sends an ERROR_INDICATION
f_recv_Error_Indication(
mw_error_IndicationIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
mw_criticalityDiagnostics_IE(
mw_criticalityDiagnostics(
PX_PROCEURE_CODE,
PX_TRIGGERING_CODE,
PX_CRITICALITY,
{
mw_criticalityDiagnostics_IE_Item(
reject,
-,
missing
)
}
)
)
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_ERR_03
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
/**
* @desc Testcase function for TC_S1AP_MME_ERR_04
*/
function f_TC_S1AP_MME_ERR_04() runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. on receipt of a UE_CONTEXT_RESUME_REQUEST
f_send_Ue_Context_Resume_Request(
m_UeContextResumeRequestIEs_no_eNB(
vc_MME_UE_ID,
{
m_E_RABFailedToResumeItemResumeReq(
c_E_RAB_ID_A,
m_cause_ran(user_inactivity)
)
}
));
// 2. sends an UE_CONTEXT_RESUME_FAILURE
f_recv_Ue_Context_Resume_Failure(
mw_UeContextResumeFailureIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
mw_cause_protocol(unspecified),
mw_criticalityDiagnostics(
?,
?,
?,
{
mw_criticalityDiagnostics_IE_Item(
reject,
-,
missing
)
}
)
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_ERR_04
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
/**
* @desc Testcase function for TC_S1AP_MME_ERR_05
*/
function f_TC_S1AP_MME_ERR_05() runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. on receipt of a E-RAB_MODIFICATION_INDICATION
f_send_E_RABModifiedInd(
m_E_RABModifiedIndIEs_no_eNB(
vc_MME_UE_ID,
{
m_E_RABToBeModifiedItemBearerModInd(
c_E_RAB_ID_A,
-,
-
)
}
));
// 2. sends an ERROR_INDICATION
f_recv_Error_Indication(
mw_error_IndicationIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
mw_criticalityDiagnostics_IE(
mw_criticalityDiagnostics(
PX_PROCEURE_CODE,
PX_TRIGGERING_CODE,
PX_CRITICALITY,
{
mw_criticalityDiagnostics_IE_Item(
reject,
-,
missing
)
}
)
)
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_ERR_05
/**
* @desc Testcase function for TC_S1AP_MME_ERR_06
*/
function f_TC_S1AP_MME_ERR_06() runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. on receipt of a UE_CONTEXT_RESUME_REQUEST
f_send_Ue_Context_Resume_Request(
m_UeContextResumeRequestIEs_duplicate_ENB(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
m_E_RABFailedToResumeItemResumeReq(
c_E_RAB_ID_A,
m_cause_ran(user_inactivity)
)
}
));
// 2. sends an UE_CONTEXT_RESUME_FAILURE
f_recv_Ue_Context_Resume_Failure(
mw_UeContextResumeFailureIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
mw_cause_protocol(abstract_syntax_error_falsely_constructed_message),
mw_criticalityDiagnostics(
?,
?,
?
)
));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_ERR_06
/**
* @desc Testcase function for TC_S1AP_MME_ERR_07
*/
function f_TC_S1AP_MME_ERR_07() runs on S1APComponent {
// Local variables
const E_RAB_ID c_E_RAB_ID_A := 0;
// Preamble
f_S1AP_mme_init();
// Preamble action: E-RAB Setup is exchanged
f_rABSetupRequest();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");
// Test body
// 1. on receipt of a E-RAB_MODIFICATION_INDICATION
f_send_E_RABModifiedInd(
m_E_RABModifiedIndIEs_duplicate_eNB(
vc_MME_UE_ID,
vc_eNB_UE_ID,
{
m_E_RABToBeModifiedItemBearerModInd(
c_E_RAB_ID_A,
-,
-
)
}
));
// 2. sends an ERROR_INDICATION
f_recv_Error_Indication(
mw_error_IndicationIEs(
vc_MME_UE_ID,
vc_eNB_UE_ID,
mw_cause_IE(
mw_cause_protocol(
abstract_syntax_error_falsely_constructed_message
))));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
// Postamble
f_rABSetupRelease();
f_postamble_S1AP_MME();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());
log("*** " & __SCOPE__ & ": INFO: Postamble done. ***");
} // End of function f_TC_S1AP_MME_ERR_07
} // End of group Unknown_unforseen_errorneous_group