pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28856 )
Change subject: cbc: Enable MMEs and BSCs selectively ......................................................................
cbc: Enable MMEs and BSCs selectively
Let's only create BSC handlers (no MM handlers) in tests validating CBSP specific features. A new test is added to specifically validate scenarios with both an MME and BSC attached to the CBC.
Change-Id: I79ee41f183ef49e9fd606d2a3efa2767628bf142 --- M cbc/CBC_Tests.ttcn 1 file changed, 29 insertions(+), 17 deletions(-)
Approvals: laforge: Looks good to me, approved fixeria: Looks good to me, but someone else must approve osmith: Looks good to me, but someone else must approve Jenkins Builder: Verified
diff --git a/cbc/CBC_Tests.ttcn b/cbc/CBC_Tests.ttcn index 5240d85..9c9c644 100644 --- a/cbc/CBC_Tests.ttcn +++ b/cbc/CBC_Tests.ttcn @@ -135,7 +135,7 @@ g_vc_conn_MME[idx].start(f_MME_ConnHdlr_main(id, pars)); }
-private function f_init(integer num_bsc := 1, integer num_mme := 1) runs on test_CT { +private function f_init(integer num_bsc := 0, integer num_mme := 0) runs on test_CT { f_http_init(mp_cbc_host, mp_cbc_ecbe_port);
g_num_bsc := num_bsc; @@ -168,7 +168,7 @@ } testcase TC_rx_keepalive() runs on test_CT {
- f_init(); + f_init(num_bsc := 1); g_pars_BSC[0].start_fn := refers(f_bsc_TC_rx_keepalive); f_start(); f_shutdown_helper(); @@ -191,7 +191,7 @@ CBSP[0].receive(PortEvent:{connClosed:=?}) } testcase TC_rx_keepalive_timeout() runs on test_CT { - f_init(); + f_init(num_bsc := 1); g_pars_BSC[0].start_fn := refers(f_bsc_TC_rx_keepalive_timeout); f_start(); f_shutdown_helper(); @@ -220,7 +220,7 @@ } };
- f_init(); + f_init(num_bsc := 1); g_pars_BSC[0].exp_cbs_msg := msg; g_pars_BSC[0].start_fn := refers(f_bsc_TC_write_replace); f_start(); @@ -330,7 +330,7 @@
/* specify a variety of different Cell Identifier formats to extend test coverage */ testcase TC_ecbe_create_delete_cgi() runs on test_CT { - f_init(); + f_init(num_bsc := 1); var template (value) BSSMAP_FIELD_CellIdentificationList cell_list_success; var template (value) CBS_Message msg := t_CBSmsg(43, 16752);
@@ -342,14 +342,12 @@ g_pars_BSC[0].start_fn := refers(f_bsc_create_and_delete); g_pars_BSC[0].exp_cbs_msg := valueof(msg); g_pars_BSC[0].cell_list_success := valueof(cell_list_success); - g_pars_MME[0].start_fn := refers(f_mme_create_and_delete); - g_pars_MME[0].exp_cbs_msg := valueof(msg); f_start(); f_create_and_delete(valueof(msg)); f_shutdown_helper(); } testcase TC_ecbe_create_delete_lac_ci() runs on test_CT { - f_init(); + f_init(num_bsc := 1); var template (value) BSSMAP_FIELD_CellIdentificationList cell_list_success; var template (value) CBS_Message msg := t_CBSmsg(44, 16752); cell_list_success := ts_BSSMAP_CIL_LAC_CI({ @@ -360,14 +358,12 @@ g_pars_BSC[0].start_fn := refers(f_bsc_create_and_delete); g_pars_BSC[0].exp_cbs_msg := valueof(msg); g_pars_BSC[0].cell_list_success := valueof(cell_list_success); - g_pars_MME[0].start_fn := refers(f_mme_create_and_delete); - g_pars_MME[0].exp_cbs_msg := valueof(msg); f_start(); f_create_and_delete(valueof(msg)); f_shutdown_helper(); } testcase TC_ecbe_create_delete_lac() runs on test_CT { - f_init(); + f_init(num_bsc := 1); var template (value) BSSMAP_FIELD_CellIdentificationList cell_list_success; var template (value) CBS_Message msg := t_CBSmsg(45, 16752); cell_list_success := ts_BSSMAP_CIL_LAC({ @@ -378,14 +374,12 @@ g_pars_BSC[0].start_fn := refers(f_bsc_create_and_delete); g_pars_BSC[0].exp_cbs_msg := valueof(msg); g_pars_BSC[0].cell_list_success := valueof(cell_list_success); - g_pars_MME[0].start_fn := refers(f_mme_create_and_delete); - g_pars_MME[0].exp_cbs_msg := valueof(msg); f_start(); f_create_and_delete(valueof(msg)); f_shutdown_helper(); } testcase TC_ecbe_create_delete_ci() runs on test_CT { - f_init(); + f_init(num_bsc := 1); var template (value) BSSMAP_FIELD_CellIdentificationList cell_list_success; var template (value) CBS_Message msg := t_CBSmsg(46, 16752); cell_list_success := ts_BSSMAP_CIL_CI({ @@ -396,14 +390,12 @@ g_pars_BSC[0].start_fn := refers(f_bsc_create_and_delete); g_pars_BSC[0].exp_cbs_msg := valueof(msg); g_pars_BSC[0].cell_list_success := valueof(cell_list_success); - g_pars_MME[0].start_fn := refers(f_mme_create_and_delete); - g_pars_MME[0].exp_cbs_msg := valueof(msg); f_start(); f_create_and_delete(valueof(msg)); f_shutdown_helper(); } testcase TC_ecbe_create_delete_lai() runs on test_CT { - f_init(); + f_init(num_bsc := 1); var template (value) BSSMAP_FIELD_CellIdentificationList cell_list_success; var template (value) CBS_Message msg := t_CBSmsg(47, 16752); cell_list_success := ts_BSSMAP_CIL_LAI({ @@ -414,6 +406,25 @@ g_pars_BSC[0].start_fn := refers(f_bsc_create_and_delete); g_pars_BSC[0].exp_cbs_msg := valueof(msg); g_pars_BSC[0].cell_list_success := valueof(cell_list_success); + f_start(); + f_create_and_delete(valueof(msg)); + f_shutdown_helper(); +} + +/* Create and delete message with both BSC and MME available */ +testcase TC_ecbe_create_delete_bsc_and_mme() runs on test_CT { + f_init(num_bsc := 1, num_mme := 1); + var template (value) BSSMAP_FIELD_CellIdentificationList cell_list_success; + var template (value) CBS_Message msg := t_CBSmsg(43, 16752); + + cell_list_success := ts_BSSMAP_CIL_CGI({ + ts_BSSMAP_CI_CGI('901'H, '70'H, 23, 42), + ts_BSSMAP_CI_CGI('901'H, '70'H, 24, 42), + ts_BSSMAP_CI_CGI('901'H, '70'H, 24, 43) + }); + g_pars_BSC[0].start_fn := refers(f_bsc_create_and_delete); + g_pars_BSC[0].exp_cbs_msg := valueof(msg); + g_pars_BSC[0].cell_list_success := valueof(cell_list_success); g_pars_MME[0].start_fn := refers(f_mme_create_and_delete); g_pars_MME[0].exp_cbs_msg := valueof(msg); f_start(); @@ -429,6 +440,7 @@ execute( TC_ecbe_create_delete_lac() ); execute( TC_ecbe_create_delete_ci() ); execute( TC_ecbe_create_delete_lai() ); + execute( TC_ecbe_create_delete_bsc_and_mme() ); }
}