bts: Add TC_sms_cb_cmd_cbch_sdcch{4,8}_multi()

These new tests verify that multiple SMSCB commands are equeued,
and that each related message is sent exactly once.

Change-Id: Ice22fd2689a42c3b1951a02e65664102d4eaccc2
Related: OS#4011
This commit is contained in:
Harald Welte 2019-05-20 00:27:30 +02:00
parent 505cf9b519
commit e0026c3fb5
1 changed files with 36 additions and 0 deletions

View File

@ -242,6 +242,24 @@ private const CbchTestMsgs msgs_1m_4b_sched := {
omit }
}
private const CbchTestMsgs msgs_3m_4b_norm := {
{ RSL_CB_CMD_NORMAL, 3, '001000320f1141660c344dd3cba09a0c000000000000'O &
'000102030405060708090a0b0c0d0e0f101213141516'O &
'101112131415161718191a1b1c1d1e1f202223242526'O &
'201122232425262728292a2b2c2d2e2f303233343536'O,
omit },
{ RSL_CB_CMD_NORMAL, 3, '002000320f1141660c344dd3cba09a0c000000000000'O &
'002102030405060708090a0b0c0d0e0f101213141516'O &
'102112131415161718191a1b1c1d1e1f202223242526'O &
'202122232425262728292a2b2c2d2e2f303233343536'O,
omit },
{ RSL_CB_CMD_NORMAL, 3, '003000320f1141660c344dd3cba09a0c000000000000'O &
'003102030405060708090a0b0c0d0e0f101213141516'O &
'103112131415161718191a1b1c1d1e1f202223242526'O &
'203122232425262728292a2b2c2d2e2f303233343536'O,
omit }
}
/* transmit single-block SMSCB COMMAND */
testcase TC_sms_cb_cmd_sdcch4_1block() runs on test_CT {
var CbchTestPars pars := {
@ -306,6 +324,22 @@ testcase TC_sms_cb_cmd_sdcch8_4block() runs on test_CT {
f_TC_smscb(pars);
}
/* transmit multiple commands of each 4 blocks */
testcase TC_sms_cb_cmd_sdcch4_multi() runs on test_CT {
var CbchTestPars pars := {
use_sdcch4 := true,
msgs := msgs_3m_4b_norm
};
f_TC_smscb(pars);
}
testcase TC_sms_cb_cmd_sdcch8_multi() runs on test_CT {
var CbchTestPars pars := {
use_sdcch4 := false,
msgs := msgs_3m_4b_norm
};
f_TC_smscb(pars);
}
/* transmit SMSCB COMMAND with SCHEDULE payload */
testcase TC_sms_cb_cmd_sdcch4_schedule() runs on test_CT {
var CbchTestPars pars := {
@ -333,12 +367,14 @@ control {
execute( TC_sms_cb_cmd_sdcch4_2block() );
execute( TC_sms_cb_cmd_sdcch4_3block() );
execute( TC_sms_cb_cmd_sdcch4_4block() );
execute( TC_sms_cb_cmd_sdcch4_multi() );
execute( TC_sms_cb_cmd_sdcch4_schedule() );
if (false) { /* FIXME: SDCCH/8 support broken, needs trxcon + L1CTL work */
execute( TC_sms_cb_cmd_sdcch8_1block() );
execute( TC_sms_cb_cmd_sdcch8_2block() );
execute( TC_sms_cb_cmd_sdcch8_3block() );
execute( TC_sms_cb_cmd_sdcch8_4block() );
execute( TC_sms_cb_cmd_sdcch8_multi() );
execute( TC_sms_cb_cmd_sdcch8_schedule() );
}
}