diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2023-01-02 17:54:59 +0100 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2023-01-02 18:41:59 +0100 |
commit | 695ada5f725ac36f6b7394695867230b686eb529 (patch) | |
tree | 9898daa4b982474ae370b317a0f0043b4c92d5e8 /bsc | |
parent | 289056cf9bea37977d1fb2d54b2b60348d9a7710 (diff) |
bsc: Move hardcoded octetstring to single constant field
This makes it easier changing it to be a valid l3 payload in the future.
Related: SYS#6280
Change-Id: I888bcc42d4b68bac4c12dfbbf3c74e1734318699
Diffstat (limited to 'bsc')
-rw-r--r-- | bsc/BSC_Tests.ttcn | 134 | ||||
-rw-r--r-- | bsc/BSC_Tests_CBSP.ttcn | 2 | ||||
-rw-r--r-- | bsc/BSC_Tests_VAMOS.ttcn | 6 |
3 files changed, 66 insertions, 76 deletions
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index 501b3e93..de5b390b 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -115,6 +115,8 @@ private const BtsParams c_BtsParams[NUM_BTS_CFG] := { private const RSL_IE_Body c_mr_conf_5_90 := valueof(RSL_IE_Body:{multirate_cfg := ts_RSL_MultirateCfg(true, 0, '00000100'B /* 5,90k */)}); +friend const octetstring c_l3_payload := '00010203040506'O; + /* per-BTS state which we keep */ type record BTS_State { /* component reference to the IPA_Client component used for RSL */ @@ -1521,10 +1523,9 @@ testcase TC_chan_act_ack_est_ind_noreply() runs on test_CT { /* Send CHAN RQD and wait for allocation; acknowledge it */ var RslChannelNr chan_nr := f_chreq_act_ack(); - var octetstring l3 := '00010203040506'O - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))); + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))); /* expect BSC to disable the channel again if there's no response from MSC */ /* MS waits 20s (T3210) at LU; 10s (T3230) at CM SERV REQ and 5s (T3220) AT detach */ @@ -1542,10 +1543,9 @@ testcase TC_chan_act_ack_est_ind_refused() runs on test_CT { /* Send CHAN RQD and wait for allocation; acknowledge it */ var RslChannelNr chan_nr := f_chreq_act_ack(); - var octetstring l3 := '00010203040506'O - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind; + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind; BSSAP.send(ts_BSSAP_DISC_req(rx_c_ind.connectionId, 0)); /* expect BSC to disable the channel */ @@ -1680,7 +1680,7 @@ testcase TC_assignment_cic_only(integer bssap_idx := 0) runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00000000'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); if (mp_bssap_cfg[bssap_idx].transport == BSSAP_TRANSPORT_AoIP) { /* send assignment without AoIP IEs */ BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_AssignmentReq(ts_BSSMAP_IE_CIC(0, 1)))); @@ -1806,7 +1806,7 @@ runs on test_CT return DchanTuple { f_init(1); - dt := f_est_dchan('23'O, 23, '00000000'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* send assignment without AoIP IEs */ BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ass_cmd)); alt { @@ -1946,7 +1946,7 @@ testcase TC_chan_rel_rll_rel_ind() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* simulate RLL REL IND */ f_ipa_tx(ts_RSL_REL_IND(dt.rsl_chan_nr, valueof(ts_RslLinkID_DCCH(0)))); @@ -1974,7 +1974,7 @@ testcase TC_chan_rel_conn_fail() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* Sending CONN FAIL IND immediately may trigger a race condition. * Give the BSC some time to process a new SCCP connection (OS#5823). */ @@ -2031,7 +2031,7 @@ testcase TC_late_conn_fail() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* BSC<-MSC: Instruct BSC to clear connection */ BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_ClearCommand(0))); @@ -2198,7 +2198,7 @@ testcase TC_chan_rel_hard_clear() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* Instruct BSC to clear channel */ var BssmapCause cause := 0; @@ -2220,7 +2220,7 @@ function f_TC_chan_rel_last_eutran_plmn_hard_clear(boolean tx_csfb_ind) runs on f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* Send CommonID with some random PLMN (BSC doesn't take it into account /* yet when generating the EUTRAN neigh list in RR CHannel Release) */ BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_CommonId('001019876543210'H, '323454'O))); @@ -2276,7 +2276,7 @@ testcase TC_chan_rel_hard_clear_csfb() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* Instruct BSC to clear channel */ var BssmapCause cause := 0; @@ -2298,7 +2298,7 @@ testcase TC_chan_rel_hard_rlsd() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* release the SCCP connection */ BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0)); @@ -2313,7 +2313,7 @@ testcase TC_chan_rel_hard_rlsd_ms_dead() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* release the SCCP connection */ BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0)); @@ -2328,7 +2328,7 @@ testcase TC_chan_rel_a_reset() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* Clear the queue, it might still contain stuff like IMMEDIATE ASSIGN */ IPA_RSL[0][0].clear; @@ -2356,7 +2356,7 @@ testcase TC_chan_rel_sccp_tiar_timeout() runs on test_CT { f_init(1); - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); f_expect_chan_rel(dt.rsl_chan_nr, expect_rll_rel_req := false); f_shutdown_helper(); } @@ -2367,7 +2367,7 @@ runs on test_CT { var DchanTuple dt; - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); var BssmapCause cause := 0; BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_ClearCommand(enum2int(clear_cmd_cause)))); BSSAP.receive(tr_BSSAP_DATA_ind(dt.sccp_conn_id, tr_BSSMAP_ClearComplete)) { @@ -2397,13 +2397,12 @@ testcase TC_rll_est_ind_inact_lchan() runs on test_CT { f_init(1); - var octetstring l3 := '00010203040506'O; var RslChannelNr chan_nr := valueof(t_RslChanNr_Bm(6)); - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); T.start; alt { - [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) { + [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) { setverdict(fail, "MSC received COMPL L3 for non-active lchan"); } [] BSSAP.receive {} @@ -2422,13 +2421,12 @@ testcase TC_rll_est_ind_inval_sapi1() runs on test_CT { chan_nr := f_chreq_act_ack() - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(1)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(1)), c_l3_payload)); timer T := 2.0; T.start; alt { - [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) { + [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) { setverdict(fail, "MSC received COMPL L3 for invalid SAPI 1"); } [] BSSAP.receive { repeat; } @@ -2447,12 +2445,11 @@ testcase TC_rll_est_ind_inval_sapi3() runs on test_CT { var RslChannelNr chan_nr := f_chreq_act_ack(); - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(3)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(3)), c_l3_payload)); T.start; alt { - [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) { + [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) { setverdict(fail, "MSC received COMPL L3 for invalid SAPI 3"); } [] BSSAP.receive { repeat; } @@ -2471,12 +2468,11 @@ testcase TC_rll_est_ind_inval_sacch() runs on test_CT { var RslChannelNr chan_nr := f_chreq_act_ack(); - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_SACCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_SACCH(0)), c_l3_payload)); T.start; alt { - [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) { + [] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) { setverdict(fail, "MSC received COMPL L3 for invalid Link SACCH"); } [] BSSAP.receive { repeat; } @@ -2741,7 +2737,7 @@ function f_test_si2quater(integer total_earfcns, template SystemInformationConfi var BSSAP_N_DATA_ind rx_di; var DchanTuple dt; - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* Send CommonID with some random PLMN (BSC doesn't take it into account * yet when generating the EUTRAN neigh list in RR CHannel Release) */ BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_CommonId('001019876543210'H, '323454'O))); @@ -7555,7 +7551,7 @@ testcase TC_bssap_rlsd_does_not_cause_bssmap_reset() runs on test_CT { /* Setup a BSSAP connection and clear it right away. This is * the MSC telling the BSC about a planned release, it's not an * erratic loss of a connection. */ - dt := f_est_dchan(int2oct(i,1), 23+i, '00010203040506'O); + dt := f_est_dchan(int2oct(i,1), 23+i, c_l3_payload); /* MSC disconnects (RLSD). */ BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0)); @@ -7599,7 +7595,7 @@ testcase TC_bssmap_clear_does_not_cause_bssmap_reset() runs on test_CT { /* Setup a BSSAP connection and clear it right away. This is * the MSC telling the BSC about a planned release, it's not an * erratic loss of a connection. */ - dt := f_est_dchan(int2oct(i,1), 23+i, '00010203040506'O); + dt := f_est_dchan(int2oct(i,1), 23+i, c_l3_payload); /* Instruct BSC to clear channel */ BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_ClearCommand(cause))); @@ -7645,7 +7641,7 @@ testcase TC_ms_rel_ind_does_not_cause_bssmap_reset() runs on test_CT { /* Setup a BSSAP connection and clear it right away. This is * the MSC telling the BSC about a planned release, it's not an * erratic loss of a connection. */ - dt := f_est_dchan('23'O, 23, '00010203040506'O); + dt := f_est_dchan('23'O, 23, c_l3_payload); /* simulate RLL REL IND */ f_ipa_tx(ts_RSL_REL_IND(dt.rsl_chan_nr, valueof(ts_RslLinkID_DCCH(0)))); @@ -7959,7 +7955,7 @@ testcase TC_dyn_ts_sdcch8_act_deact() runs on test_CT { var DchanTuples sdcch_cleanup := {}; var integer i; for (i := 0; i < NUM_SDCCH_PER_BTS; i := i + 1) { - dt := f_est_dchan('23'O, i, '00010203040506'O); + dt := f_est_dchan('23'O, i, c_l3_payload); sdcch_cleanup := sdcch_cleanup & { dt }; } @@ -8036,14 +8032,14 @@ testcase TC_dyn_ts_sdcch8_all_subslots_used() runs on test_CT { */ var DchanTuples chan_cleanup := {}; for (i := 0; i < NUM_SDCCH_PER_BTS; i := i+1) { - chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; } /* Only the dyn TS is still available. Its first lchan gets converted to SDCCH8 */ - chan_cleanup := chan_cleanup & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + chan_cleanup := chan_cleanup & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; /* Also occupy the seven other SDCCH of the dyn TS */ for (i := 0; i < 7; i := i+1) { - chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; } /* Clean up SDCCH lchans */ @@ -8097,7 +8093,7 @@ testcase TC_dyn_ts_sdcch8_tch_call_act_deact() runs on test_CT { var DchanTuples chan_cleanup := {}; var OCT1 ra := '43'O; /* RA containing reason=originating speech call*/ for (i := 0; i < NUM_SDCCH_PER_BTS; i := i + 1) { - dt := f_est_dchan(ra, i, '00010203040506'O); + dt := f_est_dchan(ra, i, c_l3_payload); chan_cleanup := chan_cleanup & { dt }; } @@ -8175,7 +8171,7 @@ testcase TC_dyn_ts_sdcch8_act_nack() runs on test_CT { var DchanTuples chan_cleanup := {}; var integer i; for (i := 0; i < NUM_SDCCH_PER_BTS; i := i + 1) { - dt := f_est_dchan('23'O, i, '00010203040506'O); + dt := f_est_dchan('23'O, i, c_l3_payload); chan_cleanup := chan_cleanup & { dt }; } @@ -9234,12 +9230,11 @@ testcase TC_emerg_premption() runs on test_CT { /* Send EST IND for the first TCH, so we get to test the RR release cause */ var RslChannelNr first_tch := valueof(t_RslChanNr_Bm(1)); - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(first_tch, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(first_tch, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); /* Accept BSSAP conn, so we get to test the Clear Request cause */ var BSSAP_N_CONNECT_ind rx_c_ind; - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind; + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind; var integer sccp_conn_id := rx_c_ind.connectionId; BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId)); @@ -11063,11 +11058,10 @@ testcase TC_imm_ass_post_chan_ack() runs on test_CT { chan_ident_ie.chan_ident.ch_desc.v.tsc); /* Check that the lchan is working */ - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); var BSSAP_N_CONNECT_ind rx_c_ind; - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind; + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind; dt.sccp_conn_id := rx_c_ind.connectionId; BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId)); @@ -11111,11 +11105,10 @@ testcase TC_imm_ass_pre_chan_ack() runs on test_CT { f_ipa_tx(ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10)); /* Check that the lchan is working */ - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); var BSSAP_N_CONNECT_ind rx_c_ind; - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind; + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind; dt.sccp_conn_id := rx_c_ind.connectionId; BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId)); @@ -11159,11 +11152,10 @@ testcase TC_imm_ass_pre_ts_ack() runs on test_CT { f_ipa_tx(ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10)); /* Check that the lchan is working */ - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); var BSSAP_N_CONNECT_ind rx_c_ind; - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind; + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind; dt.sccp_conn_id := rx_c_ind.connectionId; BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId)); @@ -11228,11 +11220,10 @@ testcase TC_imm_ass_pre_chan_ack_dyn_ts() runs on test_CT { f_ipa_tx(ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10)); /* Check that the lchan is working */ - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); var BSSAP_N_CONNECT_ind rx_c_ind; - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind; + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind; dt.sccp_conn_id := rx_c_ind.connectionId; BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId)); @@ -11301,11 +11292,10 @@ testcase TC_imm_ass_pre_ts_ack_dyn_ts() runs on test_CT { chan_ident_ie.chan_ident.ch_desc.v.tsc); /* Check that the lchan is working */ - var octetstring l3 := '00010203040506'O; - f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3)); + f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); var BSSAP_N_CONNECT_ind rx_c_ind; - BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind; + BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind; dt.sccp_conn_id := rx_c_ind.connectionId; BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId)); @@ -11581,7 +11571,7 @@ testcase TC_ratectr_all_available_allocated() runs on test_CT { */ var DchanTuples chan_cleanup := {}; for (i := 0; i < NUM_SDCCH_PER_BTS; i := i+1) { - chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; } /* Since only bts 0 is connected, expecting all_allocated to become true for both bts 0 and the "global" bsc @@ -11591,7 +11581,7 @@ testcase TC_ratectr_all_available_allocated() runs on test_CT { /* Also fill up all remaining (TCH) channels */ for (i := 0; i < NUM_TCHF_PER_BTS + NUM_TCHH_PER_BTS; i := i+1) { - chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; } /* All TCH are now also occupied */ @@ -11631,7 +11621,7 @@ testcase TC_ratectr_all_available_allocated_dyn() runs on test_CT { */ var DchanTuples chan_cleanup := {}; for (i := 0; i < NUM_SDCCH_PER_BTS; i := i+1) { - chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; } /* The static SDCCH should now be occupied, while still 3x8 dynamic SDCCH potentially remain. So only @@ -11641,11 +11631,11 @@ testcase TC_ratectr_all_available_allocated_dyn() runs on test_CT { /* Request more SDCCH, hence convert the first dyn TS to SDCCH8. * Will release them later, so remember all the DchanTuples. */ var DchanTuples dyn_sddch := {}; - dyn_sddch := dyn_sddch & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + dyn_sddch := dyn_sddch & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; /* Also occupy the seven other SDCCH of the dyn TS */ for (i := 0; i < 7; i := i+1) { - dyn_sddch := dyn_sddch & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + dyn_sddch := dyn_sddch & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; } /* Now all dynamic SDCCH are also occupied, so for the first time all_allocated:sdcch will trigger... */ @@ -11653,7 +11643,7 @@ testcase TC_ratectr_all_available_allocated_dyn() runs on test_CT { /* occupy the remaining TCH, three TCH/F and two TCH/H lchans */ for (i := 0; i < 5; i := i+1) { - chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) }; + chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) }; } /* All TCH lchans are now also occupied, both static and dynamic */ @@ -11727,7 +11717,7 @@ testcase TC_chan_alloc_algo_ascending() runs on test_CT { /* Expect the BSC to allocate 4 x TCH/F channels on BTS2/TRX0 */ for (var integer i := 0; i < 4; i := i + 1) { - var DchanTuple dt := f_est_dchan('23'O, 23, '00000000'O, {2, 0}); + var DchanTuple dt := f_est_dchan('23'O, 23, c_l3_payload, {2, 0}); f_TC_chan_alloc_algo(dt, {2, 0}); f_perform_clear_test_ct(dt); } @@ -11750,7 +11740,7 @@ testcase TC_chan_alloc_algo_descending() runs on test_CT { /* Expect the BSC to allocate 5 x TCH/F channels on BTS2/TRX3 */ for (var integer i := 0; i < 5; i := i + 1) { - var DchanTuple dt := f_est_dchan('23'O, 23, '00000000'O, {2, 0}); + var DchanTuple dt := f_est_dchan('23'O, 23, c_l3_payload, {2, 0}); f_TC_chan_alloc_algo(dt, {2, 3}); f_perform_clear_test_ct(dt); } @@ -11779,12 +11769,12 @@ testcase TC_chan_alloc_algo_ass_dynamic() runs on test_CT { var DchanTuple dt; f_logp(BSCVTY, "Case a) Unknown Uplink RxLev, fall-back to ascending"); - dt := f_est_dchan('23'O, 23, '00000000'O, TRX0); + dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0); f_TC_chan_alloc_algo(dt, TRX0); f_perform_clear_test_ct(dt); f_logp(BSCVTY, "Case b) Not enough RxLev samples, use ascending"); - dt := f_est_dchan('23'O, 23, '00000000'O, TRX0); + dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0); f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0, ts_RSL_IE_UplinkMeas(30, 0), ts_RSL_IE_BS_Power(0)), TRX0); @@ -11793,7 +11783,7 @@ testcase TC_chan_alloc_algo_ass_dynamic() runs on test_CT { f_perform_clear_test_ct(dt); f_logp(BSCVTY, "Case c) Uplink RxLev below the threshold, use ascending"); - dt := f_est_dchan('23'O, 23, '00000000'O, TRX0); + dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0); f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0, ts_RSL_IE_UplinkMeas(45, 0), ts_RSL_IE_BS_Power(0)), TRX0); @@ -11805,7 +11795,7 @@ testcase TC_chan_alloc_algo_ass_dynamic() runs on test_CT { f_perform_clear_test_ct(dt); f_logp(BSCVTY, "Case d) Uplink RxLev above the threshold, use descending"); - dt := f_est_dchan('23'O, 23, '00000000'O, TRX0); + dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0); f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0, ts_RSL_IE_UplinkMeas(50, 0), ts_RSL_IE_BS_Power(0)), TRX0); @@ -11821,7 +11811,7 @@ testcase TC_chan_alloc_algo_ass_dynamic() runs on test_CT { f_vty_transceive(BSCVTY, "end"); f_logp(BSCVTY, "Case e) Uplink RxLev above the threshold, but C0 load is not"); - dt := f_est_dchan('23'O, 23, '00000000'O, TRX0); + dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0); f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0, ts_RSL_IE_UplinkMeas(50, 0), ts_RSL_IE_BS_Power(0)), TRX0); diff --git a/bsc/BSC_Tests_CBSP.ttcn b/bsc/BSC_Tests_CBSP.ttcn index c07b6057..ae77ac82 100644 --- a/bsc/BSC_Tests_CBSP.ttcn +++ b/bsc/BSC_Tests_CBSP.ttcn @@ -1005,7 +1005,7 @@ testcase TC_cbsp_emerg_write_bts_cgi_dchan() runs on cbsp_test_CT { cell_list := ts_BSSMAP_CIL_CGI({bssmap_cgi(mp_cgi_bts0)}); /* first establish a dedicated channel */ - var DchanTuple dt := f_est_dchan('23'O, 23, '00010203040506'O); + var DchanTuple dt := f_est_dchan('23'O, 23, c_l3_payload); /* then send ETWS PN */ f_cbsp_write_emerg(g_cbsp_msg_id, g_cbsp_ser_no, cell_list); diff --git a/bsc/BSC_Tests_VAMOS.ttcn b/bsc/BSC_Tests_VAMOS.ttcn index cd9ffd02..3ebcaaa2 100644 --- a/bsc/BSC_Tests_VAMOS.ttcn +++ b/bsc/BSC_Tests_VAMOS.ttcn @@ -279,13 +279,13 @@ testcase TC_chan_act_to_vamos() runs on test_CT { /* verify that DTAP passes through both ways with the right cbits */ private function f_verify_dtap() runs on MSC_ConnHdlr { - var octetstring l3_data := '00010203040506'O; var PDU_BSSAP rx_bssap_dtap; + var octetstring l3_data; /* MS to NW */ - RSL.send(ts_RSL_DATA_IND(g_chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3_data)); + RSL.send(ts_RSL_DATA_IND(g_chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload)); BSSAP.receive(tr_BSSAP_DTAP) -> value rx_bssap_dtap; - if (not match(rx_bssap_dtap.pdu.dtap, l3_data)) { + if (not match(rx_bssap_dtap.pdu.dtap, c_l3_payload)) { setverdict(fail, "unexpected L3 data"); mtc.stop; } |