// This C++ source file was generated by the TTCN-3 compiler
// of the TTCN-3 Test Executor version 11.1.0
// The generation of user and time information were disabled by the -D flag.

// Copyright (c) 2000-2025 Ericsson Telecom AB

// Do not edit this file unless you know what you are doing.

/* Including header files */

#include "BTS_Tests.hh"

namespace BTS__Tests {

/* Bodies of functions, altsteps and testcases */

verdicttype testcase_TC__rsl__ms__pwr__dyn__max(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3560, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_ms_pwr_dyn_max");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_ms_pwr_dyn_max", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3561);
/* BTS_Tests.ttcn, line 3561 */
COMPONENT vc__conn;
current_location.update_lineno(3562);
/* BTS_Tests.ttcn, line 3562 */
ConnHdlrPars pars;
current_location.update_lineno(3563);
/* BTS_Tests.ttcn, line 3563 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3564);
/* BTS_Tests.ttcn, line 3564 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_62);
{
current_location.update_lineno(3565);
/* BTS_Tests.ttcn, line 3565 */
INTEGER tn(1);
current_location.update_lineno(3565);
/* BTS_Tests.ttcn, line 3565 */
for ( ; ; ) {
current_location.update_lineno(3565);
/* BTS_Tests.ttcn, line 3565 */
if (!(tn <= 1)) break;
current_location.update_lineno(3566);
/* BTS_Tests.ttcn, line 3566 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(tn)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3567);
/* BTS_Tests.ttcn, line 3567 */
pars.bts0__band() = f__vty__get__bts0__band();
current_location.update_lineno(3568);
/* BTS_Tests.ttcn, line 3568 */
vc__conn = f__start__handler(&f__TC__rsl__ms__pwr__dyn__max, pars, f__start__handler_pcu__comp_defval, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3569);
/* BTS_Tests.ttcn, line 3569 */
{
tmp_391:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_391;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_391;
}
current_location.update_lineno(3569);
/* BTS_Tests.ttcn, line 3569 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3569.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3565);
/* BTS_Tests.ttcn, line 3565 */
{
INTEGER tmp_392;
++tn;
}
}
}
current_location.update_lineno(3571);
/* BTS_Tests.ttcn, line 3571 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_61);
current_location.update_lineno(3572);
/* BTS_Tests.ttcn, line 3572 */
Misc__Helpers::f__shutdown(cs_4, 3572, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_ms_pwr_dyn_max was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rsl__ms__pwr__dyn__down(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3575, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_ms_pwr_dyn_down");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_ms_pwr_dyn_down", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3576);
/* BTS_Tests.ttcn, line 3576 */
COMPONENT vc__conn;
current_location.update_lineno(3577);
/* BTS_Tests.ttcn, line 3577 */
ConnHdlrPars pars;
current_location.update_lineno(3578);
/* BTS_Tests.ttcn, line 3578 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3579);
/* BTS_Tests.ttcn, line 3579 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_60);
{
current_location.update_lineno(3580);
/* BTS_Tests.ttcn, line 3580 */
INTEGER tn(1);
current_location.update_lineno(3580);
/* BTS_Tests.ttcn, line 3580 */
for ( ; ; ) {
current_location.update_lineno(3580);
/* BTS_Tests.ttcn, line 3580 */
if (!(tn <= 1)) break;
current_location.update_lineno(3581);
/* BTS_Tests.ttcn, line 3581 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(tn)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3582);
/* BTS_Tests.ttcn, line 3582 */
pars.bts0__band() = f__vty__get__bts0__band();
current_location.update_lineno(3583);
/* BTS_Tests.ttcn, line 3583 */
vc__conn = f__start__handler(&f__TC__rsl__ms__pwr__dyn__down, pars, f__start__handler_pcu__comp_defval, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3584);
/* BTS_Tests.ttcn, line 3584 */
{
tmp_396:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_396;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_396;
}
current_location.update_lineno(3584);
/* BTS_Tests.ttcn, line 3584 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3584.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3580);
/* BTS_Tests.ttcn, line 3580 */
{
INTEGER tmp_397;
++tn;
}
}
}
current_location.update_lineno(3586);
/* BTS_Tests.ttcn, line 3586 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_61);
current_location.update_lineno(3587);
/* BTS_Tests.ttcn, line 3587 */
Misc__Helpers::f__shutdown(cs_4, 3587, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_ms_pwr_dyn_down was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rsl__ms__pwr__dyn__active(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3590, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_ms_pwr_dyn_active");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_ms_pwr_dyn_active", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3591);
/* BTS_Tests.ttcn, line 3591 */
COMPONENT vc__conn;
current_location.update_lineno(3592);
/* BTS_Tests.ttcn, line 3592 */
ConnHdlrPars pars;
current_location.update_lineno(3593);
/* BTS_Tests.ttcn, line 3593 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3594);
/* BTS_Tests.ttcn, line 3594 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_60);
{
current_location.update_lineno(3595);
/* BTS_Tests.ttcn, line 3595 */
INTEGER tn(1);
current_location.update_lineno(3595);
/* BTS_Tests.ttcn, line 3595 */
for ( ; ; ) {
current_location.update_lineno(3595);
/* BTS_Tests.ttcn, line 3595 */
if (!(tn <= 1)) break;
current_location.update_lineno(3596);
/* BTS_Tests.ttcn, line 3596 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(tn)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3597);
/* BTS_Tests.ttcn, line 3597 */
pars.bts0__band() = f__vty__get__bts0__band();
current_location.update_lineno(3598);
/* BTS_Tests.ttcn, line 3598 */
vc__conn = f__start__handler(&f__TC__rsl__ms__pwr__dyn__active, pars, f__start__handler_pcu__comp_defval, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3599);
/* BTS_Tests.ttcn, line 3599 */
{
tmp_401:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_401;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_401;
}
current_location.update_lineno(3599);
/* BTS_Tests.ttcn, line 3599 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3599.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3595);
/* BTS_Tests.ttcn, line 3595 */
{
INTEGER tmp_402;
++tn;
}
}
}
current_location.update_lineno(3601);
/* BTS_Tests.ttcn, line 3601 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_61);
current_location.update_lineno(3602);
/* BTS_Tests.ttcn, line 3602 */
Misc__Helpers::f__shutdown(cs_4, 3602, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_ms_pwr_dyn_active was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rsl__ms__pwr__dyn__active2(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3605, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_ms_pwr_dyn_active2");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_ms_pwr_dyn_active2", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3606);
/* BTS_Tests.ttcn, line 3606 */
COMPONENT vc__conn;
current_location.update_lineno(3607);
/* BTS_Tests.ttcn, line 3607 */
ConnHdlrPars pars;
current_location.update_lineno(3608);
/* BTS_Tests.ttcn, line 3608 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3609);
/* BTS_Tests.ttcn, line 3609 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_60);
{
current_location.update_lineno(3610);
/* BTS_Tests.ttcn, line 3610 */
INTEGER tn(1);
current_location.update_lineno(3610);
/* BTS_Tests.ttcn, line 3610 */
for ( ; ; ) {
current_location.update_lineno(3610);
/* BTS_Tests.ttcn, line 3610 */
if (!(tn <= 1)) break;
current_location.update_lineno(3611);
/* BTS_Tests.ttcn, line 3611 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(tn)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3612);
/* BTS_Tests.ttcn, line 3612 */
pars.bts0__band() = f__vty__get__bts0__band();
current_location.update_lineno(3613);
/* BTS_Tests.ttcn, line 3613 */
vc__conn = f__start__handler(&f__TC__rsl__ms__pwr__dyn__active2, pars, f__start__handler_pcu__comp_defval, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3614);
/* BTS_Tests.ttcn, line 3614 */
{
tmp_406:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_406;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_406;
}
current_location.update_lineno(3614);
/* BTS_Tests.ttcn, line 3614 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3614.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3610);
/* BTS_Tests.ttcn, line 3610 */
{
INTEGER tmp_407;
++tn;
}
}
}
current_location.update_lineno(3616);
/* BTS_Tests.ttcn, line 3616 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_59, cs_61);
current_location.update_lineno(3617);
/* BTS_Tests.ttcn, line 3617 */
Misc__Helpers::f__shutdown(cs_4, 3617, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_ms_pwr_dyn_active2 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__meas__res__speech__tchf(const BOOLEAN& facch__enabled)
{
TTCN_Location current_location("BTS_Tests.ttcn", 3620, TTCN_Location::LOCATION_FUNCTION, "f_TC_meas_res_speech_tchf");
current_location.update_lineno(3621);
/* BTS_Tests.ttcn, line 3621 */
RSL__Types::RSL__IE__ChannelMode_template ch__mode;
current_location.update_lineno(3622);
/* BTS_Tests.ttcn, line 3622 */
COMPONENT vc__conn;
current_location.update_lineno(3623);
/* BTS_Tests.ttcn, line 3623 */
ConnHdlrPars pars;
current_location.update_lineno(3624);
/* BTS_Tests.ttcn, line 3624 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3625);
/* BTS_Tests.ttcn, line 3625 */
ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval);
{
current_location.update_lineno(3626);
/* BTS_Tests.ttcn, line 3626 */
INTEGER tn(1);
current_location.update_lineno(3626);
/* BTS_Tests.ttcn, line 3626 */
for ( ; ; ) {
current_location.update_lineno(3626);
/* BTS_Tests.ttcn, line 3626 */
if (!(tn <= 1)) break;
current_location.update_lineno(3627);
/* BTS_Tests.ttcn, line 3627 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(tn)), ch__mode, t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3628);
/* BTS_Tests.ttcn, line 3628 */
pars.l1__pars().facch__enabled() = facch__enabled;
current_location.update_lineno(3629);
/* BTS_Tests.ttcn, line 3629 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3631);
/* BTS_Tests.ttcn, line 3631 */
{
tmp_412:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_412;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_412;
}
current_location.update_lineno(3631);
/* BTS_Tests.ttcn, line 3631 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3631.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3626);
/* BTS_Tests.ttcn, line 3626 */
{
INTEGER tmp_413;
++tn;
}
}
}
current_location.update_lineno(3633);
/* BTS_Tests.ttcn, line 3633 */
Misc__Helpers::f__shutdown(cs_4, 3633, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}

void start_f__TC__meas__res__speech__tchf(const COMPONENT& component_reference, const BOOLEAN& facch__enabled)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_meas_res_speech_tchf(");
facch__enabled.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_meas_res_speech_tchf", text_buf);
facch__enabled.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__meas__res__speech__tchf(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3636, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_speech_tchf");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_speech_tchf", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3637);
/* BTS_Tests.ttcn, line 3637 */
f__TC__meas__res__speech__tchf(FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_speech_tchf was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__speech__tchf__facch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3640, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_speech_tchf_facch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_speech_tchf_facch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3641);
/* BTS_Tests.ttcn, line 3641 */
f__TC__meas__res__speech__tchf(TRUE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_speech_tchf_facch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__meas__res__speech__tchh(const BOOLEAN& facch__enabled)
{
TTCN_Location current_location("BTS_Tests.ttcn", 3644, TTCN_Location::LOCATION_FUNCTION, "f_TC_meas_res_speech_tchh");
current_location.update_lineno(3645);
/* BTS_Tests.ttcn, line 3645 */
RSL__Types::RSL__IE__ChannelMode_template ch__mode;
current_location.update_lineno(3646);
/* BTS_Tests.ttcn, line 3646 */
COMPONENT vc__conn;
current_location.update_lineno(3647);
/* BTS_Tests.ttcn, line 3647 */
ConnHdlrPars pars;
current_location.update_lineno(3648);
/* BTS_Tests.ttcn, line 3648 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3649);
/* BTS_Tests.ttcn, line 3649 */
ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval);
{
current_location.update_lineno(3650);
/* BTS_Tests.ttcn, line 3650 */
INTEGER ss(0);
current_location.update_lineno(3650);
/* BTS_Tests.ttcn, line 3650 */
for ( ; ; ) {
current_location.update_lineno(3650);
/* BTS_Tests.ttcn, line 3650 */
if (!(ss <= 1)) break;
current_location.update_lineno(3651);
/* BTS_Tests.ttcn, line 3651 */
pars = t__Pars(GSM__Types::t__RslChanNr__Lm(INTEGER_template(5), INTEGER_template(ss)), ch__mode, t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3652);
/* BTS_Tests.ttcn, line 3652 */
pars.l1__pars().facch__enabled() = facch__enabled;
current_location.update_lineno(3653);
/* BTS_Tests.ttcn, line 3653 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3655);
/* BTS_Tests.ttcn, line 3655 */
{
tmp_418:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_418;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_418;
}
current_location.update_lineno(3655);
/* BTS_Tests.ttcn, line 3655 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3655.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3650);
/* BTS_Tests.ttcn, line 3650 */
{
INTEGER tmp_419;
++ss;
}
}
}
current_location.update_lineno(3657);
/* BTS_Tests.ttcn, line 3657 */
Misc__Helpers::f__shutdown(cs_4, 3657, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}

void start_f__TC__meas__res__speech__tchh(const COMPONENT& component_reference, const BOOLEAN& facch__enabled)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_meas_res_speech_tchh(");
facch__enabled.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_meas_res_speech_tchh", text_buf);
facch__enabled.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__meas__res__speech__tchh(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3660, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_speech_tchh");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_speech_tchh", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3661);
/* BTS_Tests.ttcn, line 3661 */
f__TC__meas__res__speech__tchh(FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_speech_tchh was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__speech__tchh__facch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3664, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_speech_tchh_facch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_speech_tchh_facch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3665);
/* BTS_Tests.ttcn, line 3665 */
f__TC__meas__res__speech__tchh(TRUE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_speech_tchh_facch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__speech__tchh__toa256(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3668, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_speech_tchh_toa256");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_speech_tchh_toa256", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3669);
/* BTS_Tests.ttcn, line 3669 */
RSL__Types::RSL__IE__ChannelMode_template ch__mode;
current_location.update_lineno(3670);
/* BTS_Tests.ttcn, line 3670 */
COMPONENT vc__conn;
current_location.update_lineno(3671);
/* BTS_Tests.ttcn, line 3671 */
ConnHdlrPars pars;
current_location.update_lineno(3672);
/* BTS_Tests.ttcn, line 3672 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3673);
/* BTS_Tests.ttcn, line 3673 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, cs_64);
current_location.update_lineno(3674);
/* BTS_Tests.ttcn, line 3674 */
ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval);
{
current_location.update_lineno(3675);
/* BTS_Tests.ttcn, line 3675 */
INTEGER ss(0);
current_location.update_lineno(3675);
/* BTS_Tests.ttcn, line 3675 */
for ( ; ; ) {
current_location.update_lineno(3675);
/* BTS_Tests.ttcn, line 3675 */
if (!(ss <= 1)) break;
current_location.update_lineno(3676);
/* BTS_Tests.ttcn, line 3676 */
pars = t__Pars(GSM__Types::t__RslChanNr__Lm(INTEGER_template(5), INTEGER_template(ss)), ch__mode, t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3677);
/* BTS_Tests.ttcn, line 3677 */
pars.l1__pars().toa256__enabled() = TRUE;
current_location.update_lineno(3678);
/* BTS_Tests.ttcn, line 3678 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3680);
/* BTS_Tests.ttcn, line 3680 */
{
tmp_424:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_424;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_424;
}
current_location.update_lineno(3680);
/* BTS_Tests.ttcn, line 3680 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3680.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3675);
/* BTS_Tests.ttcn, line 3675 */
{
INTEGER tmp_425;
++ss;
}
}
}
current_location.update_lineno(3682);
/* BTS_Tests.ttcn, line 3682 */
Misc__Helpers::f__shutdown(cs_4, 3682, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_speech_tchh_toa256 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__sign__tchf(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3685, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_sign_tchf");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_sign_tchf", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3686);
/* BTS_Tests.ttcn, line 3686 */
COMPONENT vc__conn;
current_location.update_lineno(3687);
/* BTS_Tests.ttcn, line 3687 */
ConnHdlrPars pars;
current_location.update_lineno(3688);
/* BTS_Tests.ttcn, line 3688 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3689);
/* BTS_Tests.ttcn, line 3689 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, cs_65);
{
current_location.update_lineno(3690);
/* BTS_Tests.ttcn, line 3690 */
INTEGER tn(1);
current_location.update_lineno(3690);
/* BTS_Tests.ttcn, line 3690 */
for ( ; ; ) {
current_location.update_lineno(3690);
/* BTS_Tests.ttcn, line 3690 */
if (!(tn <= 4)) break;
current_location.update_lineno(3691);
/* BTS_Tests.ttcn, line 3691 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(tn)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3692);
/* BTS_Tests.ttcn, line 3692 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3694);
/* BTS_Tests.ttcn, line 3694 */
{
tmp_428:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_428;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_428;
}
current_location.update_lineno(3694);
/* BTS_Tests.ttcn, line 3694 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3694.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3690);
/* BTS_Tests.ttcn, line 3690 */
{
INTEGER tmp_429;
++tn;
}
}
}
current_location.update_lineno(3696);
/* BTS_Tests.ttcn, line 3696 */
Misc__Helpers::f__shutdown(cs_4, 3696, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_sign_tchf was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__sign__tchh(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3698, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_sign_tchh");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_sign_tchh", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3699);
/* BTS_Tests.ttcn, line 3699 */
COMPONENT vc__conn;
current_location.update_lineno(3700);
/* BTS_Tests.ttcn, line 3700 */
ConnHdlrPars pars;
current_location.update_lineno(3701);
/* BTS_Tests.ttcn, line 3701 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3702);
/* BTS_Tests.ttcn, line 3702 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, cs_65);
{
current_location.update_lineno(3703);
/* BTS_Tests.ttcn, line 3703 */
INTEGER ss(0);
current_location.update_lineno(3703);
/* BTS_Tests.ttcn, line 3703 */
for ( ; ; ) {
current_location.update_lineno(3703);
/* BTS_Tests.ttcn, line 3703 */
if (!(ss <= 1)) break;
current_location.update_lineno(3704);
/* BTS_Tests.ttcn, line 3704 */
pars = t__Pars(GSM__Types::t__RslChanNr__Lm(INTEGER_template(5), INTEGER_template(ss)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3705);
/* BTS_Tests.ttcn, line 3705 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3707);
/* BTS_Tests.ttcn, line 3707 */
{
tmp_432:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_432;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_432;
}
current_location.update_lineno(3707);
/* BTS_Tests.ttcn, line 3707 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3707.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3703);
/* BTS_Tests.ttcn, line 3703 */
{
INTEGER tmp_433;
++ss;
}
}
}
current_location.update_lineno(3709);
/* BTS_Tests.ttcn, line 3709 */
Misc__Helpers::f__shutdown(cs_4, 3709, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_sign_tchh was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__sign__sdcch4(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3711, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_sign_sdcch4");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_sign_sdcch4", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3712);
/* BTS_Tests.ttcn, line 3712 */
COMPONENT vc__conn;
current_location.update_lineno(3713);
/* BTS_Tests.ttcn, line 3713 */
ConnHdlrPars pars;
current_location.update_lineno(3714);
/* BTS_Tests.ttcn, line 3714 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3715);
/* BTS_Tests.ttcn, line 3715 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, cs_65);
{
current_location.update_lineno(3716);
/* BTS_Tests.ttcn, line 3716 */
INTEGER ss(0);
current_location.update_lineno(3716);
/* BTS_Tests.ttcn, line 3716 */
for ( ; ; ) {
current_location.update_lineno(3716);
/* BTS_Tests.ttcn, line 3716 */
if (!(ss <= 3)) break;
current_location.update_lineno(3717);
/* BTS_Tests.ttcn, line 3717 */
pars = t__Pars(GSM__Types::t__RslChanNr__SDCCH4(INTEGER_template(0), INTEGER_template(ss)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3718);
/* BTS_Tests.ttcn, line 3718 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3720);
/* BTS_Tests.ttcn, line 3720 */
{
tmp_436:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_436;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_436;
}
current_location.update_lineno(3720);
/* BTS_Tests.ttcn, line 3720 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3720.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3716);
/* BTS_Tests.ttcn, line 3716 */
{
INTEGER tmp_437;
++ss;
}
}
}
current_location.update_lineno(3722);
/* BTS_Tests.ttcn, line 3722 */
Misc__Helpers::f__shutdown(cs_4, 3722, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_sign_sdcch4 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__sign__sdcch8(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3724, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_sign_sdcch8");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_sign_sdcch8", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3725);
/* BTS_Tests.ttcn, line 3725 */
COMPONENT vc__conn;
current_location.update_lineno(3726);
/* BTS_Tests.ttcn, line 3726 */
ConnHdlrPars pars;
current_location.update_lineno(3727);
/* BTS_Tests.ttcn, line 3727 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3728);
/* BTS_Tests.ttcn, line 3728 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, cs_65);
{
current_location.update_lineno(3729);
/* BTS_Tests.ttcn, line 3729 */
INTEGER ss(0);
current_location.update_lineno(3729);
/* BTS_Tests.ttcn, line 3729 */
for ( ; ; ) {
current_location.update_lineno(3729);
/* BTS_Tests.ttcn, line 3729 */
if (!(ss <= 7)) break;
current_location.update_lineno(3730);
/* BTS_Tests.ttcn, line 3730 */
pars = t__Pars(GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(6), INTEGER_template(ss)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3731);
/* BTS_Tests.ttcn, line 3731 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3733);
/* BTS_Tests.ttcn, line 3733 */
{
tmp_440:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_440;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_440;
}
current_location.update_lineno(3733);
/* BTS_Tests.ttcn, line 3733 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3733.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3729);
/* BTS_Tests.ttcn, line 3729 */
{
INTEGER tmp_441;
++ss;
}
}
}
current_location.update_lineno(3735);
/* BTS_Tests.ttcn, line 3735 */
Misc__Helpers::f__shutdown(cs_4, 3735, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_sign_sdcch8 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__sign__tchh__toa256(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3737, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_sign_tchh_toa256");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_sign_tchh_toa256", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3738);
/* BTS_Tests.ttcn, line 3738 */
COMPONENT vc__conn;
current_location.update_lineno(3739);
/* BTS_Tests.ttcn, line 3739 */
ConnHdlrPars pars;
current_location.update_lineno(3740);
/* BTS_Tests.ttcn, line 3740 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3741);
/* BTS_Tests.ttcn, line 3741 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, cs_64);
{
current_location.update_lineno(3742);
/* BTS_Tests.ttcn, line 3742 */
INTEGER ss(0);
current_location.update_lineno(3742);
/* BTS_Tests.ttcn, line 3742 */
for ( ; ; ) {
current_location.update_lineno(3742);
/* BTS_Tests.ttcn, line 3742 */
if (!(ss <= 1)) break;
current_location.update_lineno(3743);
/* BTS_Tests.ttcn, line 3743 */
pars = t__Pars(GSM__Types::t__RslChanNr__Lm(INTEGER_template(5), INTEGER_template(ss)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3744);
/* BTS_Tests.ttcn, line 3744 */
pars.l1__pars().toa256__enabled() = TRUE;
current_location.update_lineno(3745);
/* BTS_Tests.ttcn, line 3745 */
vc__conn = f__start__handler(&f__TC__meas__res__periodic, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3747);
/* BTS_Tests.ttcn, line 3747 */
{
tmp_445:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_445;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_445;
}
current_location.update_lineno(3747);
/* BTS_Tests.ttcn, line 3747 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3747.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3742);
/* BTS_Tests.ttcn, line 3742 */
{
INTEGER tmp_446;
++ss;
}
}
}
current_location.update_lineno(3749);
/* BTS_Tests.ttcn, line 3749 */
Misc__Helpers::f__shutdown(cs_4, 3749, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_sign_tchh_toa256 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__meas__res__sapi3(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 3754, TTCN_Location::LOCATION_FUNCTION, "f_TC_meas_res_sapi3");
current_location.update_lineno(3755);
/* BTS_Tests.ttcn, line 3755 */
TIMER Texec("Texec", 8.0);
current_location.update_lineno(3756);
/* BTS_Tests.ttcn, line 3756 */
TIMER Timpf("Timpf", 2.0);
current_location.update_lineno(3757);
/* BTS_Tests.ttcn, line 3757 */
TIMER Tmr("Tmr");
current_location.update_lineno(3759);
/* BTS_Tests.ttcn, line 3759 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(3760);
/* BTS_Tests.ttcn, line 3760 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(3762);
/* BTS_Tests.ttcn, line 3762 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(3763);
/* BTS_Tests.ttcn, line 3763 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(3766);
/* BTS_Tests.ttcn, line 3766 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__SABM(0, LAPDm__Types::cr__MO__CMD, TRUE, os_2), GSM__Types::ts__RslLinkID__DCCH(0));
current_location.update_lineno(3769);
/* BTS_Tests.ttcn, line 3769 */
Tmr.start(9.6e-1);
current_location.update_lineno(3770);
/* BTS_Tests.ttcn, line 3770 */
Texec.start();
current_location.update_lineno(3771);
/* BTS_Tests.ttcn, line 3771 */
Timpf.start();
current_location.update_lineno(3773);
/* BTS_Tests.ttcn, line 3773 */
{
tmp_447:
alt_status tmp_447_alt_flag_0 = ALT_MAYBE;
alt_status tmp_447_alt_flag_1 = ALT_MAYBE;
alt_status tmp_447_alt_flag_2 = ALT_MAYBE;
alt_status tmp_447_alt_flag_3 = ALT_MAYBE;
alt_status tmp_447_alt_flag_4 = ALT_MAYBE;
alt_status tmp_447_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_447_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(3775);
/* BTS_Tests.ttcn, line 3775 */
tmp_447_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__MEAS__RES(GSM__Types::RslChannelNr_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__nr()), RSL__Types::tr__RSL__MEAS__RES_meas__res__nr_defval, RSL__Types::tr__RSL__MEAS__RES_ul__meas_defval, RSL__Types::tr__RSL__MEAS__RES_bs__power_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_447_alt_flag_0 == ALT_YES) {
current_location.update_lineno(3777);
/* BTS_Tests.ttcn, line 3777 */
Tmr.start(6.0e-1);
current_location.update_lineno(3778);
/* BTS_Tests.ttcn, line 3778 */
goto tmp_447;
}
}
if (tmp_447_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(3780);
/* BTS_Tests.ttcn, line 3780 */
tmp_447_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL);
if (tmp_447_alt_flag_1 == ALT_YES) {
current_location.update_lineno(3780);
/* BTS_Tests.ttcn, line 3780 */
goto tmp_447;
}
}
if (tmp_447_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(3781);
/* BTS_Tests.ttcn, line 3781 */
tmp_447_alt_flag_2 = Tmr.timeout(NULL);
if (tmp_447_alt_flag_2 == ALT_YES) {
current_location.update_lineno(3782);
/* BTS_Tests.ttcn, line 3782 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for RSL MEAS RES"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_447_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(3785);
/* BTS_Tests.ttcn, line 3785 */
tmp_447_alt_flag_3 = Timpf.timeout(NULL);
if (tmp_447_alt_flag_3 == ALT_YES) {
current_location.update_lineno(3786);
/* BTS_Tests.ttcn, line 3786 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__SABM(3, LAPDm__Types::cr__MO__CMD, TRUE, os_2), GSM__Types::ts__RslLinkID__SACCH(3));
current_location.update_lineno(3787);
/* BTS_Tests.ttcn, line 3787 */
TTCN_Logger::log_str(TTCN_USER, "Injected SAPI=3 traffic on SACCH");
current_location.update_lineno(3788);
/* BTS_Tests.ttcn, line 3788 */
Timpf.start();
current_location.update_lineno(3789);
/* BTS_Tests.ttcn, line 3789 */
goto tmp_447;
}
}
if (tmp_447_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(3792);
/* BTS_Tests.ttcn, line 3792 */
tmp_447_alt_flag_4 = Texec.timeout(NULL);
if (tmp_447_alt_flag_4 == ALT_YES) {
current_location.update_lineno(3793);
/* BTS_Tests.ttcn, line 3793 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_447_default_flag == ALT_MAYBE) {
tmp_447_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_447_default_flag == ALT_YES || tmp_447_default_flag == ALT_BREAK) break;
else if (tmp_447_default_flag == ALT_REPEAT) goto tmp_447;
}
current_location.update_lineno(3773);
/* BTS_Tests.ttcn, line 3773 */
if (tmp_447_alt_flag_0 == ALT_NO && tmp_447_alt_flag_1 == ALT_NO && tmp_447_alt_flag_2 == ALT_NO && tmp_447_alt_flag_3 == ALT_NO && tmp_447_alt_flag_4 == ALT_NO && tmp_447_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 3773 and 3795.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3797);
/* BTS_Tests.ttcn, line 3797 */
f__rsl__chan__deact();
current_location.update_lineno(3798);
/* BTS_Tests.ttcn, line 3798 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(3799);
/* BTS_Tests.ttcn, line 3799 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__meas__res__sapi3(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_meas_res_sapi3(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_meas_res_sapi3", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__meas__res__speech__tchf__sapi3(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3801, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_speech_tchf_sapi3");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_speech_tchf_sapi3", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3802);
/* BTS_Tests.ttcn, line 3802 */
RSL__Types::RSL__IE__ChannelMode_template ch__mode;
current_location.update_lineno(3803);
/* BTS_Tests.ttcn, line 3803 */
ConnHdlrPars_template pars;
current_location.update_lineno(3804);
/* BTS_Tests.ttcn, line 3804 */
COMPONENT vc__conn;
current_location.update_lineno(3806);
/* BTS_Tests.ttcn, line 3806 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3808);
/* BTS_Tests.ttcn, line 3808 */
ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval);
current_location.update_lineno(3809);
/* BTS_Tests.ttcn, line 3809 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), ch__mode, t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval);
current_location.update_lineno(3811);
/* BTS_Tests.ttcn, line 3811 */
vc__conn = f__start__handler(&f__TC__meas__res__sapi3, pars.valueof(), f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(3812);
/* BTS_Tests.ttcn, line 3812 */
{
tmp_451:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_451;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_451;
}
current_location.update_lineno(3812);
/* BTS_Tests.ttcn, line 3812 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3812.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3814);
/* BTS_Tests.ttcn, line 3814 */
Misc__Helpers::f__shutdown(cs_4, 3814, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_speech_tchf_sapi3 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__meas__res__speech__tchh__sapi3(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3816, TTCN_Location::LOCATION_TESTCASE, "TC_meas_res_speech_tchh_sapi3");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_meas_res_speech_tchh_sapi3", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3817);
/* BTS_Tests.ttcn, line 3817 */
RSL__Types::RSL__IE__ChannelMode_template ch__mode;
current_location.update_lineno(3818);
/* BTS_Tests.ttcn, line 3818 */
ConnHdlrPars_template pars;
current_location.update_lineno(3819);
/* BTS_Tests.ttcn, line 3819 */
COMPONENT vc__conn;
current_location.update_lineno(3821);
/* BTS_Tests.ttcn, line 3821 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3823);
/* BTS_Tests.ttcn, line 3823 */
ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval);
current_location.update_lineno(3824);
/* BTS_Tests.ttcn, line 3824 */
pars = t__Pars(GSM__Types::t__RslChanNr__Lm(INTEGER_template(5), INTEGER_template(0)), ch__mode, t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval);
current_location.update_lineno(3826);
/* BTS_Tests.ttcn, line 3826 */
vc__conn = f__start__handler(&f__TC__meas__res__sapi3, pars.valueof(), f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(3827);
/* BTS_Tests.ttcn, line 3827 */
{
tmp_455:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_455;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_455;
}
current_location.update_lineno(3827);
/* BTS_Tests.ttcn, line 3827 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3827.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3829);
/* BTS_Tests.ttcn, line 3829 */
Misc__Helpers::f__shutdown(cs_4, 3829, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_meas_res_speech_tchh_sapi3 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__tc__rsl__ms__pwr__ctrl(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 3834, TTCN_Location::LOCATION_FUNCTION, "f_tc_rsl_ms_pwr_ctrl");
current_location.update_lineno(3835);
/* BTS_Tests.ttcn, line 3835 */
GSM__RR__Types::SacchL1Header l1h;
current_location.update_lineno(3836);
/* BTS_Tests.ttcn, line 3836 */
INTEGER power__level(0);
current_location.update_lineno(3838);
/* BTS_Tests.ttcn, line 3838 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(3839);
/* BTS_Tests.ttcn, line 3839 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(3841);
/* BTS_Tests.ttcn, line 3841 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(3847);
/* BTS_Tests.ttcn, line 3847 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__MS__PWR__CTRL(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__IE__MS__Power(power__level, RSL__Types::ts__RSL__IE__MS__Power_fpc__epc_defval)), FALSE, NULL);
current_location.update_lineno(3849);
/* BTS_Tests.ttcn, line 3849 */
{
tmp_456:
alt_status tmp_456_alt_flag_0 = ALT_MAYBE;
alt_status tmp_456_alt_flag_1 = ALT_MAYBE;
alt_status tmp_456_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_456_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(3850);
/* BTS_Tests.ttcn, line 3850 */
tmp_456_alt_flag_0 = as__l1__sacch__l1h_instance(l1h, FALSE, first_run);
if (tmp_456_alt_flag_0 == ALT_REPEAT) goto tmp_456;
if (tmp_456_alt_flag_0 == ALT_BREAK) break;
if (tmp_456_alt_flag_0 == ALT_YES) {
current_location.update_lineno(3851);
/* BTS_Tests.ttcn, line 3851 */
if ((const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).ms__power__lvl() != power__level)) {
current_location.update_lineno(3852);
/* BTS_Tests.ttcn, line 3852 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Power level := "),const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).ms__power__lvl().log(),TTCN_Logger::log_event_str("does not match the signaled (RSL) power level := "),power__level.log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(3854);
/* BTS_Tests.ttcn, line 3854 */
Misc__Helpers::f__shutdown(cs_4, 3854, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}
current_location.update_lineno(3858);
/* BTS_Tests.ttcn, line 3858 */
if ((power__level < 31)) {
current_location.update_lineno(3859);
/* BTS_Tests.ttcn, line 3859 */
{
INTEGER tmp_457;
++power__level;
}
current_location.update_lineno(3860);
/* BTS_Tests.ttcn, line 3860 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__MS__PWR__CTRL(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__IE__MS__Power(power__level, RSL__Types::ts__RSL__IE__MS__Power_fpc__epc_defval)), FALSE, NULL);
current_location.update_lineno(3861);
/* BTS_Tests.ttcn, line 3861 */
goto tmp_456;
}
break;
}
}
if (tmp_456_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(3867);
/* BTS_Tests.ttcn, line 3867 */
tmp_456_alt_flag_1 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_456_alt_flag_1 == ALT_YES) {
current_location.update_lineno(3867);
/* BTS_Tests.ttcn, line 3867 */
goto tmp_456;
}
}
if (tmp_456_default_flag == ALT_MAYBE) {
tmp_456_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_456_default_flag == ALT_YES || tmp_456_default_flag == ALT_BREAK) break;
else if (tmp_456_default_flag == ALT_REPEAT) goto tmp_456;
}
current_location.update_lineno(3849);
/* BTS_Tests.ttcn, line 3849 */
if (tmp_456_alt_flag_0 == ALT_NO && tmp_456_alt_flag_1 == ALT_NO && tmp_456_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 3849 and 3869.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3871);
/* BTS_Tests.ttcn, line 3871 */
f__rsl__chan__deact();
current_location.update_lineno(3872);
/* BTS_Tests.ttcn, line 3872 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(3874);
/* BTS_Tests.ttcn, line 3874 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__tc__rsl__ms__pwr__ctrl(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tc_rsl_ms_pwr_ctrl(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_tc_rsl_ms_pwr_ctrl", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rsl__ms__pwr__ctrl(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3877, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_ms_pwr_ctrl");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_ms_pwr_ctrl", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3878);
/* BTS_Tests.ttcn, line 3878 */
COMPONENT vc__conn;
current_location.update_lineno(3879);
/* BTS_Tests.ttcn, line 3879 */
ConnHdlrPars pars;
current_location.update_lineno(3880);
/* BTS_Tests.ttcn, line 3880 */
f__init(f__init_trx__nr_defval);
{
current_location.update_lineno(3882);
/* BTS_Tests.ttcn, line 3882 */
INTEGER tn(1);
current_location.update_lineno(3882);
/* BTS_Tests.ttcn, line 3882 */
for ( ; ; ) {
current_location.update_lineno(3882);
/* BTS_Tests.ttcn, line 3882 */
if (!(tn <= 4)) break;
current_location.update_lineno(3883);
/* BTS_Tests.ttcn, line 3883 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(tn)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3884);
/* BTS_Tests.ttcn, line 3884 */
vc__conn = f__start__handler(&f__tc__rsl__ms__pwr__ctrl, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(3885);
/* BTS_Tests.ttcn, line 3885 */
{
tmp_460:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_460;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_460;
}
current_location.update_lineno(3885);
/* BTS_Tests.ttcn, line 3885 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3885.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3882);
/* BTS_Tests.ttcn, line 3882 */
{
INTEGER tmp_461;
++tn;
}
}
}
current_location.update_lineno(3887);
/* BTS_Tests.ttcn, line 3887 */
Misc__Helpers::f__shutdown(cs_4, 3887, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_ms_pwr_ctrl was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__tc__rsl__chan__initial__ta(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 3892, TTCN_Location::LOCATION_FUNCTION, "f_tc_rsl_chan_initial_ta");
current_location.update_lineno(3893);
/* BTS_Tests.ttcn, line 3893 */
INTEGER ta__to__test(16);
current_location.update_lineno(3894);
/* BTS_Tests.ttcn, line 3894 */
GSM__RR__Types::SacchL1Header l1h;
current_location.update_lineno(3896);
/* BTS_Tests.ttcn, line 3896 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(3897);
/* BTS_Tests.ttcn, line 3897 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(3900);
/* BTS_Tests.ttcn, line 3900 */
f__trxc__fake__toffs256((ta__to__test * 256));
current_location.update_lineno(3902);
/* BTS_Tests.ttcn, line 3902 */
{
RSL__Types::RSL__IE__List tmp_462;
tmp_462.set_size(1);
{
RSL__Types::RSL__IE__Body_template tmp_463;
tmp_463.timing__adv() = ta__to__test;
tmp_462[0] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__TIMING__ADVANCE, tmp_463).valueof();
}
f__est__dchan(f__est__dchan_encr__enable_defval, tmp_462, f__est__dchan_act__type_defval);
}
current_location.update_lineno(3905);
/* BTS_Tests.ttcn, line 3905 */
{
tmp_464:
alt_status tmp_464_alt_flag_0 = ALT_MAYBE;
alt_status tmp_464_alt_flag_1 = ALT_MAYBE;
alt_status tmp_464_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_464_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(3906);
/* BTS_Tests.ttcn, line 3906 */
tmp_464_alt_flag_0 = as__l1__sacch__l1h_instance(l1h, FALSE, first_run);
if (tmp_464_alt_flag_0 == ALT_REPEAT) goto tmp_464;
if (tmp_464_alt_flag_0 == ALT_BREAK) break;
if (tmp_464_alt_flag_0 == ALT_YES) {
current_location.update_lineno(3907);
/* BTS_Tests.ttcn, line 3907 */
if ((const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).actual__ta() != ta__to__test)) {
current_location.update_lineno(3908);
/* BTS_Tests.ttcn, line 3908 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("TA in L1 header does not match the signaled (RSL) TA."),TTCN_Logger::end_event_log2str()));
}
break;
}
}
if (tmp_464_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(3914);
/* BTS_Tests.ttcn, line 3914 */
tmp_464_alt_flag_1 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_464_alt_flag_1 == ALT_YES) {
current_location.update_lineno(3914);
/* BTS_Tests.ttcn, line 3914 */
goto tmp_464;
}
}
if (tmp_464_default_flag == ALT_MAYBE) {
tmp_464_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_464_default_flag == ALT_YES || tmp_464_default_flag == ALT_BREAK) break;
else if (tmp_464_default_flag == ALT_REPEAT) goto tmp_464;
}
current_location.update_lineno(3905);
/* BTS_Tests.ttcn, line 3905 */
if (tmp_464_alt_flag_0 == ALT_NO && tmp_464_alt_flag_1 == ALT_NO && tmp_464_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 3905 and 3916.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3918);
/* BTS_Tests.ttcn, line 3918 */
f__rsl__chan__deact();
current_location.update_lineno(3919);
/* BTS_Tests.ttcn, line 3919 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(3921);
/* BTS_Tests.ttcn, line 3921 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__tc__rsl__chan__initial__ta(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tc_rsl_chan_initial_ta(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_tc_rsl_chan_initial_ta", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rsl__chan__initial__ta(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3924, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_chan_initial_ta");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_chan_initial_ta", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3925);
/* BTS_Tests.ttcn, line 3925 */
COMPONENT vc__conn;
current_location.update_lineno(3926);
/* BTS_Tests.ttcn, line 3926 */
ConnHdlrPars pars;
current_location.update_lineno(3927);
/* BTS_Tests.ttcn, line 3927 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(3928);
/* BTS_Tests.ttcn, line 3928 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(3929);
/* BTS_Tests.ttcn, line 3929 */
vc__conn = f__start__handler(&f__tc__rsl__chan__initial__ta, pars, FALSE, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(3931);
/* BTS_Tests.ttcn, line 3931 */
{
tmp_467:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_467;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_467;
}
current_location.update_lineno(3931);
/* BTS_Tests.ttcn, line 3931 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 3931.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3932);
/* BTS_Tests.ttcn, line 3932 */
Misc__Helpers::f__shutdown(cs_4, 3932, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_chan_initial_ta was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__tc__rsl__chan__initial__ms__pwr(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 3936, TTCN_Location::LOCATION_FUNCTION, "f_tc_rsl_chan_initial_ms_pwr");
current_location.update_lineno(3937);
/* BTS_Tests.ttcn, line 3937 */
INTEGER ms__power__level(7);
current_location.update_lineno(3938);
/* BTS_Tests.ttcn, line 3938 */
GSM__RR__Types::SacchL1Header l1h;
current_location.update_lineno(3940);
/* BTS_Tests.ttcn, line 3940 */
RSL__Types::RSL__IE__MS__Power ms__power;
current_location.update_lineno(3941);
/* BTS_Tests.ttcn, line 3941 */
ms__power.reserved() = 0;
current_location.update_lineno(3942);
/* BTS_Tests.ttcn, line 3942 */
ms__power.fpc__epc() = FALSE;
current_location.update_lineno(3943);
/* BTS_Tests.ttcn, line 3943 */
ms__power.power__level() = ms__power__level;
current_location.update_lineno(3945);
/* BTS_Tests.ttcn, line 3945 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(3946);
/* BTS_Tests.ttcn, line 3946 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(3948);
/* BTS_Tests.ttcn, line 3948 */
{
RSL__Types::RSL__IE__List tmp_471;
tmp_471.set_size(1);
{
RSL__Types::RSL__IE__Body_template tmp_472;
tmp_472.ms__power() = ms__power;
tmp_471[0] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__MS__POWER, tmp_472).valueof();
}
f__est__dchan(f__est__dchan_encr__enable_defval, tmp_471, f__est__dchan_act__type_defval);
}
current_location.update_lineno(3950);
/* BTS_Tests.ttcn, line 3950 */
TIMER T("T", 1.0);
current_location.update_lineno(3951);
/* BTS_Tests.ttcn, line 3951 */
T.start();
current_location.update_lineno(3952);
/* BTS_Tests.ttcn, line 3952 */
{
tmp_473:
alt_status tmp_473_alt_flag_0 = ALT_MAYBE;
alt_status tmp_473_alt_flag_1 = ALT_MAYBE;
alt_status tmp_473_alt_flag_2 = ALT_MAYBE;
alt_status tmp_473_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_473_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(3954);
/* BTS_Tests.ttcn, line 3954 */
tmp_473_alt_flag_0 = as__l1__sacch__l1h_instance(l1h, FALSE, first_run);
if (tmp_473_alt_flag_0 == ALT_REPEAT) goto tmp_473;
if (tmp_473_alt_flag_0 == ALT_BREAK) break;
if (tmp_473_alt_flag_0 == ALT_YES) {
current_location.update_lineno(3955);
/* BTS_Tests.ttcn, line 3955 */
if ((const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).ms__power__lvl() != ms__power__level)) {
current_location.update_lineno(3956);
/* BTS_Tests.ttcn, line 3956 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Power level := "),const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).ms__power__lvl().log(),TTCN_Logger::log_event_str("does not match the signaled (RSL) power level := "),ms__power__level.log(),TTCN_Logger::end_event_log2str()));
}
break;
}
}
if (tmp_473_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(3961);
/* BTS_Tests.ttcn, line 3961 */
tmp_473_alt_flag_1 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_473_alt_flag_1 == ALT_YES) {
current_location.update_lineno(3961);
/* BTS_Tests.ttcn, line 3961 */
goto tmp_473;
}
}
if (tmp_473_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(3962);
/* BTS_Tests.ttcn, line 3962 */
tmp_473_alt_flag_2 = T.timeout(NULL);
if (tmp_473_alt_flag_2 == ALT_YES) {
current_location.update_lineno(3963);
/* BTS_Tests.ttcn, line 3963 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Power Level in L1 header does not match the signaled (RSL) MS Power Level."),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_473_default_flag == ALT_MAYBE) {
tmp_473_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_473_default_flag == ALT_YES || tmp_473_default_flag == ALT_BREAK) break;
else if (tmp_473_default_flag == ALT_REPEAT) goto tmp_473;
}
current_location.update_lineno(3952);
/* BTS_Tests.ttcn, line 3952 */
if (tmp_473_alt_flag_0 == ALT_NO && tmp_473_alt_flag_1 == ALT_NO && tmp_473_alt_flag_2 == ALT_NO && tmp_473_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 3952 and 3965.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3967);
/* BTS_Tests.ttcn, line 3967 */
f__rsl__chan__deact();
current_location.update_lineno(3968);
/* BTS_Tests.ttcn, line 3968 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(3969);
/* BTS_Tests.ttcn, line 3969 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__tc__rsl__chan__initial__ms__pwr(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tc_rsl_chan_initial_ms_pwr(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_tc_rsl_chan_initial_ms_pwr", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rsl__chan__initial__ms__pwr(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 3972, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_chan_initial_ms_pwr");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_chan_initial_ms_pwr", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(3973);
/* BTS_Tests.ttcn, line 3973 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(3974);
/* BTS_Tests.ttcn, line 3974 */
f__testmatrix__each__chan(pars, &f__tc__rsl__chan__initial__ms__pwr);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_chan_initial_ms_pwr was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__conn__fail__crit(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 3978, TTCN_Location::LOCATION_FUNCTION, "f_TC_conn_fail_crit");
current_location.update_lineno(3979);
/* BTS_Tests.ttcn, line 3979 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(3980);
/* BTS_Tests.ttcn, line 3980 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(3982);
/* BTS_Tests.ttcn, line 3982 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(3983);
/* BTS_Tests.ttcn, line 3983 */
Osmocom__Types::f__sleep(2.0);
current_location.update_lineno(3984);
/* BTS_Tests.ttcn, line 3984 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(3985);
/* BTS_Tests.ttcn, line 3985 */
L1CTL__PortType::f__L1CTL__RESET(ConnHdlr_component_L1CTL, L1CTL__PortType::f__L1CTL__RESET_res__type_defval);
current_location.update_lineno(3986);
/* BTS_Tests.ttcn, line 3986 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(3988);
/* BTS_Tests.ttcn, line 3988 */
TIMER T("T", 4.0e1);
current_location.update_lineno(3989);
/* BTS_Tests.ttcn, line 3989 */
T.start();
current_location.update_lineno(3990);
/* BTS_Tests.ttcn, line 3990 */
{
tmp_474:
alt_status tmp_474_alt_flag_0 = ALT_MAYBE;
alt_status tmp_474_alt_flag_1 = ALT_MAYBE;
alt_status tmp_474_alt_flag_2 = ALT_MAYBE;
alt_status tmp_474_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_474_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(3991);
/* BTS_Tests.ttcn, line 3991 */
tmp_474_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__CONN__FAIL__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__Cause_template(ANY_VALUE)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_474_alt_flag_0 == ALT_YES) {
current_location.update_lineno(3992);
/* BTS_Tests.ttcn, line 3992 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_474_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(3994);
/* BTS_Tests.ttcn, line 3994 */
tmp_474_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL);
if (tmp_474_alt_flag_1 == ALT_YES) {
current_location.update_lineno(3994);
/* BTS_Tests.ttcn, line 3994 */
goto tmp_474;
}
}
if (tmp_474_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(3995);
/* BTS_Tests.ttcn, line 3995 */
tmp_474_alt_flag_2 = T.timeout(NULL);
if (tmp_474_alt_flag_2 == ALT_YES) {
current_location.update_lineno(3996);
/* BTS_Tests.ttcn, line 3996 */
Misc__Helpers::f__shutdown(cs_4, 3996, FAIL, cs_66);
break;
}
}
if (tmp_474_default_flag == ALT_MAYBE) {
tmp_474_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_474_default_flag == ALT_YES || tmp_474_default_flag == ALT_BREAK) break;
else if (tmp_474_default_flag == ALT_REPEAT) goto tmp_474;
}
current_location.update_lineno(3990);
/* BTS_Tests.ttcn, line 3990 */
if (tmp_474_alt_flag_0 == ALT_NO && tmp_474_alt_flag_1 == ALT_NO && tmp_474_alt_flag_2 == ALT_NO && tmp_474_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 3990 and 3998.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(3999);
/* BTS_Tests.ttcn, line 3999 */
f__rsl__chan__deact();
}

void start_f__TC__conn__fail__crit(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_conn_fail_crit(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_conn_fail_crit", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__conn__fail__crit(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4001, TTCN_Location::LOCATION_TESTCASE, "TC_conn_fail_crit");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_conn_fail_crit", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4002);
/* BTS_Tests.ttcn, line 4002 */
COMPONENT vc__conn;
current_location.update_lineno(4003);
/* BTS_Tests.ttcn, line 4003 */
ConnHdlrPars pars;
current_location.update_lineno(4004);
/* BTS_Tests.ttcn, line 4004 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4005);
/* BTS_Tests.ttcn, line 4005 */
pars = t__Pars(GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(6), INTEGER_template(3)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(4006);
/* BTS_Tests.ttcn, line 4006 */
pars.t__guard() = 6.0e1;
current_location.update_lineno(4007);
/* BTS_Tests.ttcn, line 4007 */
vc__conn = f__start__handler(&f__TC__conn__fail__crit, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(4008);
/* BTS_Tests.ttcn, line 4008 */
{
tmp_478:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_478;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_478;
}
current_location.update_lineno(4008);
/* BTS_Tests.ttcn, line 4008 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 4008.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_conn_fail_crit was stopped.");
}
return TTCN_Runtime::end_testcase();
}

BOOLEAN tmsi__is__dummy(const OCTETSTRING& tmsi)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4015, TTCN_Location::LOCATION_FUNCTION, "tmsi_is_dummy");
current_location.update_lineno(4016);
/* BTS_Tests.ttcn, line 4016 */
if ((tmsi == os_5)) {
current_location.update_lineno(4017);
/* BTS_Tests.ttcn, line 4017 */
return TRUE;
}
else {
current_location.update_lineno(4019);
/* BTS_Tests.ttcn, line 4019 */
return FALSE;
}
}

void check__pch__fn(const INTEGER& frame__nr, const INTEGER& bs__ag__blks__res)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4032, TTCN_Location::LOCATION_FUNCTION, "check_pch_fn");
current_location.update_lineno(4034);
/* BTS_Tests.ttcn, line 4034 */
INTEGER frame__nr__51;
current_location.update_lineno(4035);
/* BTS_Tests.ttcn, line 4035 */
frame__nr__51 = mod(frame__nr, 51);
current_location.update_lineno(4037);
/* BTS_Tests.ttcn, line 4037 */
allowedFn fn__check;
current_location.update_lineno(4038);
/* BTS_Tests.ttcn, line 4038 */
fn__check.frame__nr() = frame__nr__51;
current_location.update_lineno(4040);
/* BTS_Tests.ttcn, line 4040 */
{
boolean tmp_489;
tmp_489 = (bs__ag__blks__res < 0);
if (!tmp_489) tmp_489 = (bs__ag__blks__res > 7);
if (tmp_489) {
current_location.update_lineno(4041);
/* BTS_Tests.ttcn, line 4041 */
Misc__Helpers::f__shutdown(cs_4, 4041, FAIL, cs_67);
current_location.update_lineno(4042);
/* BTS_Tests.ttcn, line 4042 */
return;
}
}
current_location.update_lineno(4045);
/* BTS_Tests.ttcn, line 4045 */
{
boolean tmp_490;
tmp_490 = (bs__ag__blks__res == 0);
if (tmp_490) tmp_490 = bs__ag__blks__res__0.match(fn__check);
if (tmp_490) {
current_location.update_lineno(4046);
/* BTS_Tests.ttcn, line 4046 */
return;
}
}
current_location.update_lineno(4048);
/* BTS_Tests.ttcn, line 4048 */
{
boolean tmp_491;
tmp_491 = (bs__ag__blks__res == 1);
if (tmp_491) tmp_491 = bs__ag__blks__res__1.match(fn__check);
if (tmp_491) {
current_location.update_lineno(4049);
/* BTS_Tests.ttcn, line 4049 */
return;
}
}
current_location.update_lineno(4051);
/* BTS_Tests.ttcn, line 4051 */
{
boolean tmp_492;
tmp_492 = (bs__ag__blks__res == 2);
if (tmp_492) tmp_492 = bs__ag__blks__res__2.match(fn__check);
if (tmp_492) {
current_location.update_lineno(4052);
/* BTS_Tests.ttcn, line 4052 */
return;
}
}
current_location.update_lineno(4054);
/* BTS_Tests.ttcn, line 4054 */
{
boolean tmp_493;
tmp_493 = (bs__ag__blks__res == 3);
if (tmp_493) tmp_493 = bs__ag__blks__res__3.match(fn__check);
if (tmp_493) {
current_location.update_lineno(4055);
/* BTS_Tests.ttcn, line 4055 */
return;
}
}
current_location.update_lineno(4057);
/* BTS_Tests.ttcn, line 4057 */
{
boolean tmp_494;
tmp_494 = (bs__ag__blks__res == 4);
if (tmp_494) tmp_494 = bs__ag__blks__res__4.match(fn__check);
if (tmp_494) {
current_location.update_lineno(4058);
/* BTS_Tests.ttcn, line 4058 */
return;
}
}
current_location.update_lineno(4060);
/* BTS_Tests.ttcn, line 4060 */
{
boolean tmp_495;
tmp_495 = (bs__ag__blks__res == 5);
if (tmp_495) tmp_495 = bs__ag__blks__res__5.match(fn__check);
if (tmp_495) {
current_location.update_lineno(4061);
/* BTS_Tests.ttcn, line 4061 */
return;
}
}
current_location.update_lineno(4063);
/* BTS_Tests.ttcn, line 4063 */
{
boolean tmp_496;
tmp_496 = (bs__ag__blks__res == 6);
if (tmp_496) tmp_496 = bs__ag__blks__res__6.match(fn__check);
if (tmp_496) {
current_location.update_lineno(4064);
/* BTS_Tests.ttcn, line 4064 */
return;
}
}
current_location.update_lineno(4066);
/* BTS_Tests.ttcn, line 4066 */
{
boolean tmp_497;
tmp_497 = (bs__ag__blks__res == 7);
if (tmp_497) tmp_497 = bs__ag__blks__res__7.match(fn__check);
if (tmp_497) {
current_location.update_lineno(4067);
/* BTS_Tests.ttcn, line 4067 */
return;
}
}
current_location.update_lineno(4070);
/* BTS_Tests.ttcn, line 4070 */
Misc__Helpers::f__shutdown(cs_4, 4070, FAIL, cs_68);
current_location.update_lineno(4071);
/* BTS_Tests.ttcn, line 4071 */
return;
}

void start_check__pch__fn(const COMPONENT& component_reference, const INTEGER& frame__nr, const INTEGER& bs__ag__blks__res)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function check_pch_fn(");
frame__nr.log();
TTCN_Logger::log_event_str(", ");
bs__ag__blks__res.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "check_pch_fn", text_buf);
frame__nr.encode_text(text_buf);
bs__ag__blks__res.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

alt_status as__l1__count__paging_instance(INTEGER& num__paging__rcv__msgs, INTEGER& num__paging__rcv__ids, const PagingTestCfg& cfg, boolean first_alt_run)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4074, TTCN_Location::LOCATION_ALTSTEP, "as_l1_count_paging");
current_location.update_lineno(4078);
/* BTS_Tests.ttcn, line 4078 */
L1CTL__Types::L1ctlMessage dl;
alt_status ret_val = ALT_NO;
current_location.update_lineno(4079);
/* BTS_Tests.ttcn, line 4079 */
switch (test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), OCTETSTRING_template(L1CTL__Types::c__DummyUI), L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), NULL, any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(4080);
/* BTS_Tests.ttcn, line 4080 */
return ALT_REPEAT;
}
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
current_location.update_lineno(4082);
/* BTS_Tests.ttcn, line 4082 */
switch (test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), L1CTL__Types::tr__L1CTL__DATA__IND_link__id_defval, L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(dl), any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(4083);
/* BTS_Tests.ttcn, line 4083 */
OCTETSTRING without__plen(substr(const_cast< const L1CTL__Types::L1ctlMessage&>(dl).payload()().data__ind().payload(), 1, (const_cast< const L1CTL__Types::L1ctlMessage&>(dl).payload()().data__ind().payload().lengthof() - 1)));
current_location.update_lineno(4085);
/* BTS_Tests.ttcn, line 4085 */
MobileL3__Types::PDU__ML3__NW__MS rr(MobileL3__Types::dec__PDU__ML3__NW__MS(without__plen));
current_location.update_lineno(4087);
/* BTS_Tests.ttcn, line 4087 */
check__pch__fn(const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().frame__nr(), const_cast< const PagingTestCfg&>(cfg).bs__ag__blks__res());
current_location.update_lineno(4089);
/* BTS_Tests.ttcn, line 4089 */
if (L3__Templates::tr__PAGING__REQ1(L3__Templates::tr__MI__LV(L3__Templates::t__MI__NoIdentity(HEXSTRING_template(ANY_VALUE))), L3__Templates::tr__PAGING__REQ1_mi2_defval).match(rr)) {
}
else {
current_location.update_lineno(4092);
/* BTS_Tests.ttcn, line 4092 */
if (L3__Templates::tr__PAGING__REQ1(L3__Templates::tr__PAGING__REQ1_mi1_defval, L3__Templates::tr__PAGING__REQ1_mi2_defval).match(rr)) {
current_location.update_lineno(4093);
/* BTS_Tests.ttcn, line 4093 */
{
INTEGER tmp_498;
++num__paging__rcv__msgs;
}
current_location.update_lineno(4094);
/* BTS_Tests.ttcn, line 4094 */
{
INTEGER tmp_499;
++num__paging__rcv__ids;
}
current_location.update_lineno(4095);
/* BTS_Tests.ttcn, line 4095 */
{
boolean tmp_509;
{
boolean tmp_500 = rr.is_bound();
if(tmp_500) {
const MobileL3__Types::PDU__ML3__NW__MS& tmp_501 = rr;
const MobileL3__Types::ML3__Discr__NW__MS& tmp_502 = tmp_501.msgs();
tmp_500 = tmp_502.is_bound();
if(tmp_500) {
tmp_500 = tmp_502.ischosen(MobileL3__Types::ML3__Discr__NW__MS::ALT_rrm);
}
if(tmp_500) {
const MobileL3__Types::ML3__Discr__NW__MS& tmp_503 = tmp_502;
const MobileL3__RRM__Types::PDU__RRM__NW__MS& tmp_504 = tmp_503.rrm();
tmp_500 = tmp_504.is_bound();
if(tmp_500) {
tmp_500 = tmp_504.ischosen(MobileL3__RRM__Types::PDU__RRM__NW__MS::ALT_pagingReq__Type1);
}
if(tmp_500) {
const MobileL3__RRM__Types::PDU__RRM__NW__MS& tmp_505 = tmp_504;
const MobileL3__RRM__Types::PDU__RRM__PagingReq__Type1__NW__MS& tmp_506 = tmp_505.pagingReq__Type1();
tmp_500 = tmp_506.is_bound();
if(tmp_500) {
const OPTIONAL< MobileL3__CommonIE__Types::MobileIdentityTLV >& tmp_507 = tmp_506.mobileIdentity2();
switch (tmp_507.get_selection()) {
case OPTIONAL_UNBOUND:
tmp_500 = FALSE;
break;
case OPTIONAL_OMIT:
tmp_500 = FALSE;
break;
default:
{
const MobileL3__CommonIE__Types::MobileIdentityTLV& tmp_508 = (const MobileL3__CommonIE__Types::MobileIdentityTLV&) tmp_507;
tmp_500 = tmp_508.is_present();
break;}
}
}
}
}
}
tmp_509 = tmp_500;
}
if (tmp_509) {
current_location.update_lineno(4096);
/* BTS_Tests.ttcn, line 4096 */
{
INTEGER tmp_510;
++num__paging__rcv__ids;
}
}
}
}
else {
current_location.update_lineno(4098);
/* BTS_Tests.ttcn, line 4098 */
if (L3__Templates::tr__PAGING__REQ2(L3__Templates::tr__PAGING__REQ2_mi1_defval, L3__Templates::tr__PAGING__REQ2_mi2_defval, L3__Templates::tr__PAGING__REQ2_mi3_defval).match(rr)) {
current_location.update_lineno(4099);
/* BTS_Tests.ttcn, line 4099 */
{
INTEGER tmp_511;
++num__paging__rcv__msgs;
}
current_location.update_lineno(4100);
/* BTS_Tests.ttcn, line 4100 */
if ((!(tmsi__is__dummy(const_cast< const MobileL3__Types::PDU__ML3__NW__MS&>(rr).msgs().rrm().pagingReq__Type2().mobileIdentity1())))) {
current_location.update_lineno(4101);
/* BTS_Tests.ttcn, line 4101 */
{
INTEGER tmp_512;
++num__paging__rcv__ids;
}
}
current_location.update_lineno(4103);
/* BTS_Tests.ttcn, line 4103 */
if ((!(tmsi__is__dummy(const_cast< const MobileL3__Types::PDU__ML3__NW__MS&>(rr).msgs().rrm().pagingReq__Type2().mobileIdentity2())))) {
current_location.update_lineno(4104);
/* BTS_Tests.ttcn, line 4104 */
{
INTEGER tmp_513;
++num__paging__rcv__ids;
}
}
current_location.update_lineno(4106);
/* BTS_Tests.ttcn, line 4106 */
{
boolean tmp_523;
{
boolean tmp_514 = rr.is_bound();
if(tmp_514) {
const MobileL3__Types::PDU__ML3__NW__MS& tmp_515 = rr;
const MobileL3__Types::ML3__Discr__NW__MS& tmp_516 = tmp_515.msgs();
tmp_514 = tmp_516.is_bound();
if(tmp_514) {
tmp_514 = tmp_516.ischosen(MobileL3__Types::ML3__Discr__NW__MS::ALT_rrm);
}
if(tmp_514) {
const MobileL3__Types::ML3__Discr__NW__MS& tmp_517 = tmp_516;
const MobileL3__RRM__Types::PDU__RRM__NW__MS& tmp_518 = tmp_517.rrm();
tmp_514 = tmp_518.is_bound();
if(tmp_514) {
tmp_514 = tmp_518.ischosen(MobileL3__RRM__Types::PDU__RRM__NW__MS::ALT_pagingReq__Type2);
}
if(tmp_514) {
const MobileL3__RRM__Types::PDU__RRM__NW__MS& tmp_519 = tmp_518;
const MobileL3__RRM__Types::PDU__RRM__PagingReq__Type2__NW__MS& tmp_520 = tmp_519.pagingReq__Type2();
tmp_514 = tmp_520.is_bound();
if(tmp_514) {
const OPTIONAL< MobileL3__CommonIE__Types::MobileIdentityTLV >& tmp_521 = tmp_520.mobileIdentity3();
switch (tmp_521.get_selection()) {
case OPTIONAL_UNBOUND:
tmp_514 = FALSE;
break;
case OPTIONAL_OMIT:
tmp_514 = FALSE;
break;
default:
{
const MobileL3__CommonIE__Types::MobileIdentityTLV& tmp_522 = (const MobileL3__CommonIE__Types::MobileIdentityTLV&) tmp_521;
tmp_514 = tmp_522.is_present();
break;}
}
}
}
}
}
tmp_523 = tmp_514;
}
if (tmp_523) {
current_location.update_lineno(4107);
/* BTS_Tests.ttcn, line 4107 */
{
INTEGER tmp_524;
++num__paging__rcv__ids;
}
}
}
}
else {
current_location.update_lineno(4109);
/* BTS_Tests.ttcn, line 4109 */
if (L3__Templates::tr__PAGING__REQ3(L3__Templates::tr__PAGING__REQ3_mi1_defval, L3__Templates::tr__PAGING__REQ3_mi2_defval, L3__Templates::tr__PAGING__REQ3_mi3_defval, L3__Templates::tr__PAGING__REQ3_mi4_defval).match(rr)) {
current_location.update_lineno(4110);
/* BTS_Tests.ttcn, line 4110 */
{
INTEGER tmp_525;
++num__paging__rcv__msgs;
}
current_location.update_lineno(4111);
/* BTS_Tests.ttcn, line 4111 */
if ((!(tmsi__is__dummy(const_cast< const MobileL3__Types::PDU__ML3__NW__MS&>(rr).msgs().rrm().pagingReq__Type3().mobileIdentity1())))) {
current_location.update_lineno(4112);
/* BTS_Tests.ttcn, line 4112 */
{
INTEGER tmp_526;
++num__paging__rcv__ids;
}
}
current_location.update_lineno(4114);
/* BTS_Tests.ttcn, line 4114 */
if ((!(tmsi__is__dummy(const_cast< const MobileL3__Types::PDU__ML3__NW__MS&>(rr).msgs().rrm().pagingReq__Type3().mobileIdentity2())))) {
current_location.update_lineno(4115);
/* BTS_Tests.ttcn, line 4115 */
{
INTEGER tmp_527;
++num__paging__rcv__ids;
}
}
current_location.update_lineno(4117);
/* BTS_Tests.ttcn, line 4117 */
if ((!(tmsi__is__dummy(const_cast< const MobileL3__Types::PDU__ML3__NW__MS&>(rr).msgs().rrm().pagingReq__Type3().mobileIdentity3())))) {
current_location.update_lineno(4118);
/* BTS_Tests.ttcn, line 4118 */
{
INTEGER tmp_528;
++num__paging__rcv__ids;
}
}
current_location.update_lineno(4120);
/* BTS_Tests.ttcn, line 4120 */
if ((!(tmsi__is__dummy(const_cast< const MobileL3__Types::PDU__ML3__NW__MS&>(rr).msgs().rrm().pagingReq__Type3().mobileIdentity4())))) {
current_location.update_lineno(4121);
/* BTS_Tests.ttcn, line 4121 */
{
INTEGER tmp_529;
++num__paging__rcv__ids;
}
}
}
}
}
}
current_location.update_lineno(4124);
/* BTS_Tests.ttcn, line 4124 */
return ALT_REPEAT;
}
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
return ret_val;
}

void as__l1__count__paging(boolean nodefault_modifier, INTEGER& num__paging__rcv__msgs, INTEGER& num__paging__rcv__ids, const PagingTestCfg& cfg)
{
altstep_begin:
boolean block_flag = FALSE;
alt_status altstep_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
for ( ; ; ) {
TTCN_Snapshot::take_new(block_flag);
if (altstep_flag != ALT_NO) {
altstep_flag = as__l1__count__paging_instance(num__paging__rcv__msgs, num__paging__rcv__ids, cfg, !block_flag);
if (altstep_flag == ALT_YES || altstep_flag == ALT_BREAK) return;
else if (altstep_flag == ALT_REPEAT) goto altstep_begin;
}
if (!nodefault_modifier && default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(!block_flag);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) return;
else if (default_flag == ALT_REPEAT) goto altstep_begin;
}
if (altstep_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in altstep as_l1_count_paging.");
else block_flag = TRUE;
}
}

Default_Base *activate_as__l1__count__paging(INTEGER& num__paging__rcv__msgs, INTEGER& num__paging__rcv__ids, const PagingTestCfg& cfg)
{
return new as__l1__count__paging_Default(num__paging__rcv__msgs, num__paging__rcv__ids, cfg);
}

PagingTestState f__TC__paging(const PagingTestCfg& cfg)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4160, TTCN_Location::LOCATION_FUNCTION, "f_TC_paging");
current_location.update_lineno(4164);
/* BTS_Tests.ttcn, line 4164 */
if ((const_cast< const PagingTestCfg&>(cfg).ps__load__modulus() > 0)) {
current_location.update_lineno(4165);
/* BTS_Tests.ttcn, line 4165 */
f__init__with__pcuif();
}
else {
current_location.update_lineno(4167);
/* BTS_Tests.ttcn, line 4167 */
f__init(f__init_trx__nr_defval);
}
current_location.update_lineno(4169);
/* BTS_Tests.ttcn, line 4169 */
f__init__l1ctl();
current_location.update_lineno(4170);
/* BTS_Tests.ttcn, line 4170 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(4172);
/* BTS_Tests.ttcn, line 4172 */
OCTETSTRING imm__ass(Osmocom__Types::f__rnd__octstring(23));
current_location.update_lineno(4173);
/* BTS_Tests.ttcn, line 4173 */
IPA__Emulation::ASP__RSL__Unitdata load__ind;
current_location.update_lineno(4175);
/* BTS_Tests.ttcn, line 4175 */
PagingTestState st;
st.num__paging__sent() = 0;
st.num__paging__rcv__msgs() = 0;
st.num__paging__rcv__ids() = 0;
st.num__overload() = 0;
st.cong__detected() = FALSE;
current_location.update_lineno(4183);
/* BTS_Tests.ttcn, line 4183 */
FLOAT max__pch__blocks__per__sec(GSM__Types::f__pch__block__rate__est(const_cast< const PagingTestCfg&>(cfg).combined__ccch(), const_cast< const PagingTestCfg&>(cfg).bs__ag__blks__res()));
current_location.update_lineno(4184);
/* BTS_Tests.ttcn, line 4184 */
FLOAT max__pch__imsi__per__sec;
current_location.update_lineno(4185);
/* BTS_Tests.ttcn, line 4185 */
if (const_cast< const PagingTestCfg&>(cfg).use__tmsi()) {
current_location.update_lineno(4186);
/* BTS_Tests.ttcn, line 4186 */
max__pch__imsi__per__sec = (max__pch__blocks__per__sec * 4.0);
}
else {
current_location.update_lineno(4188);
/* BTS_Tests.ttcn, line 4188 */
max__pch__imsi__per__sec = (max__pch__blocks__per__sec * 2.0);
}
current_location.update_lineno(4190);
/* BTS_Tests.ttcn, line 4190 */
FLOAT pch__blocks__per__sec((max__pch__imsi__per__sec * const_cast< const PagingTestCfg&>(cfg).load__factor()));
current_location.update_lineno(4191);
/* BTS_Tests.ttcn, line 4191 */
FLOAT interval((1.0 / pch__blocks__per__sec));
current_location.update_lineno(4192);
/* BTS_Tests.ttcn, line 4192 */
FLOAT time__total(2.0e1);
current_location.update_lineno(4193);
/* BTS_Tests.ttcn, line 4193 */
INTEGER pkt__total(float2int((time__total * pch__blocks__per__sec)));
current_location.update_lineno(4194);
/* BTS_Tests.ttcn, line 4194 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("pch_blocks_total=");
pkt__total.log();
TTCN_Logger::log_event_str(" pch_blocks_per_sec=");
pch__blocks__per__sec.log();
TTCN_Logger::log_event_str(" interval=");
interval.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(4196);
/* BTS_Tests.ttcn, line 4196 */
TIMER T__total("T_total", 3.0e2);
current_location.update_lineno(4197);
/* BTS_Tests.ttcn, line 4197 */
T__total.start();
current_location.update_lineno(4199);
/* BTS_Tests.ttcn, line 4199 */
TIMER T__itv("T_itv", 0.0);
current_location.update_lineno(4200);
/* BTS_Tests.ttcn, line 4200 */
T__itv.start();
for ( ; ; ) {
current_location.update_lineno(4201);
/* BTS_Tests.ttcn, line 4201 */
if (!(const_cast< const PagingTestState&>(st).num__paging__sent() < pkt__total)) break;
current_location.update_lineno(4202);
/* BTS_Tests.ttcn, line 4202 */
{
tmp_532:
alt_status tmp_532_alt_flag_0 = ALT_UNCHECKED;
alt_status tmp_532_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_532_alt_flag_2 = ALT_UNCHECKED;
alt_status tmp_532_alt_flag_3 = ALT_MAYBE;
alt_status tmp_532_alt_flag_4 = ALT_MAYBE;
alt_status tmp_532_alt_flag_5 = ALT_MAYBE;
alt_status tmp_532_alt_flag_6 = ALT_MAYBE;
alt_status tmp_532_alt_flag_7 = ALT_MAYBE;
alt_status tmp_532_alt_flag_8 = ALT_MAYBE;
alt_status tmp_532_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_532_alt_flag_0 == ALT_UNCHECKED) {
current_location.update_lineno(4204);
/* BTS_Tests.ttcn, line 4204 */
if (const_cast< const PagingTestCfg&>(cfg).exp__overload()) tmp_532_alt_flag_0 = ALT_MAYBE;
else tmp_532_alt_flag_0 = ALT_NO;
}
if (tmp_532_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(4204);
/* BTS_Tests.ttcn, line 4204 */
tmp_532_alt_flag_0 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__PAGING__LOAD__IND(INTEGER_template(0)), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_532_alt_flag_0 == ALT_YES) {
current_location.update_lineno(4205);
/* BTS_Tests.ttcn, line 4205 */
{
INTEGER tmp_533;
tmp_533 = (const_cast< const PagingTestState&>(st).num__overload() + 1);
st.num__overload() = tmp_533;
}
current_location.update_lineno(4206);
/* BTS_Tests.ttcn, line 4206 */
goto tmp_532;
}
}
if (tmp_532_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(4208);
/* BTS_Tests.ttcn, line 4208 */
if ((!(const_cast< const PagingTestCfg&>(cfg).exp__overload()))) tmp_532_alt_flag_1 = ALT_MAYBE;
else tmp_532_alt_flag_1 = ALT_NO;
}
if (tmp_532_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(4208);
/* BTS_Tests.ttcn, line 4208 */
tmp_532_alt_flag_1 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__PAGING__LOAD__IND(INTEGER_template(0)), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_532_alt_flag_1 == ALT_YES) {
current_location.update_lineno(4209);
/* BTS_Tests.ttcn, line 4209 */
Misc__Helpers::f__shutdown(cs_4, 4209, FAIL, cs_69);
break;
}
}
if (tmp_532_alt_flag_2 == ALT_UNCHECKED) {
current_location.update_lineno(4211);
/* BTS_Tests.ttcn, line 4211 */
if (const_cast< const PagingTestCfg&>(cfg).exp__load__ind()) tmp_532_alt_flag_2 = ALT_MAYBE;
else tmp_532_alt_flag_2 = ALT_NO;
}
if (tmp_532_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(4211);
/* BTS_Tests.ttcn, line 4211 */
tmp_532_alt_flag_2 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__PAGING__LOAD__IND(RSL__Types::tr__RSL__PAGING__LOAD__IND_buffer__space_defval), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), &(load__ind), any_compref, NULL, NULL, NULL);
if (tmp_532_alt_flag_2 == ALT_YES) {
current_location.update_lineno(4212);
/* BTS_Tests.ttcn, line 4212 */
TTCN_Logger::log_str(TTCN_USER, "Rx LOAD_IND");
current_location.update_lineno(4219);
/* BTS_Tests.ttcn, line 4219 */
if ((const_cast< const IPA__Emulation::ASP__RSL__Unitdata&>(load__ind).rsl().ies()()[1].body().paging__load() < 66)) {
current_location.update_lineno(4220);
/* BTS_Tests.ttcn, line 4220 */
st.cong__detected() = TRUE;
}
current_location.update_lineno(4224);
/* BTS_Tests.ttcn, line 4224 */
goto tmp_532;
}
}
if (tmp_532_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(4227);
/* BTS_Tests.ttcn, line 4227 */
tmp_532_alt_flag_3 = test__CT_component_RSL__CCHAN.receive(any_compref, NULL, NULL, NULL);
if (tmp_532_alt_flag_3 == ALT_YES) {
current_location.update_lineno(4227);
/* BTS_Tests.ttcn, line 4227 */
goto tmp_532;
}
}
if (tmp_532_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(4229);
/* BTS_Tests.ttcn, line 4229 */
tmp_532_alt_flag_4 = as__l1__count__paging_instance(st.num__paging__rcv__msgs(), st.num__paging__rcv__ids(), cfg, first_run);
if (tmp_532_alt_flag_4 == ALT_REPEAT) goto tmp_532;
if (tmp_532_alt_flag_4 == ALT_BREAK) break;
if (tmp_532_alt_flag_4 == ALT_YES) break;
}
if (tmp_532_alt_flag_5 == ALT_MAYBE) {
current_location.update_lineno(4230);
/* BTS_Tests.ttcn, line 4230 */
tmp_532_alt_flag_5 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_532_alt_flag_5 == ALT_YES) {
current_location.update_lineno(4230);
/* BTS_Tests.ttcn, line 4230 */
goto tmp_532;
}
}
if (tmp_532_alt_flag_6 == ALT_MAYBE) {
current_location.update_lineno(4232);
/* BTS_Tests.ttcn, line 4232 */
tmp_532_alt_flag_6 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_532_alt_flag_6 == ALT_YES) {
current_location.update_lineno(4232);
/* BTS_Tests.ttcn, line 4232 */
goto tmp_532;
}
}
if (tmp_532_alt_flag_7 == ALT_MAYBE) {
current_location.update_lineno(4233);
/* BTS_Tests.ttcn, line 4233 */
tmp_532_alt_flag_7 = T__itv.timeout(NULL);
if (tmp_532_alt_flag_7 == ALT_YES) {
current_location.update_lineno(4235);
/* BTS_Tests.ttcn, line 4235 */
INTEGER new__sent(f__min(pkt__total, (float2int((T__total.read() * pch__blocks__per__sec)) + 1)));
for ( ; ; ) {
current_location.update_lineno(4236);
/* BTS_Tests.ttcn, line 4236 */
if (!(const_cast< const PagingTestState&>(st).num__paging__sent() < new__sent)) break;
current_location.update_lineno(4237);
/* BTS_Tests.ttcn, line 4237 */
MobileL3__CommonIE__Types::MobileIdentityV mi;
current_location.update_lineno(4240);
/* BTS_Tests.ttcn, line 4240 */
if (const_cast< const PagingTestCfg&>(cfg).use__tmsi()) {
current_location.update_lineno(4241);
/* BTS_Tests.ttcn, line 4241 */
mi = L3__Templates::t__MI__TMSI(OCTETSTRING_template(Osmocom__Types::f__rnd__octstring(4))).valueof();
}
else {
current_location.update_lineno(4243);
/* BTS_Tests.ttcn, line 4243 */
mi = L3__Templates::ts__MI__IMSI(Osmocom__Types::f__gen__imsi(const_cast< const PagingTestState&>(st).num__paging__sent())).valueof();
}
current_location.update_lineno(4247);
/* BTS_Tests.ttcn, line 4247 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::ts__RSL__PAGING__CMD(mi, mod(const_cast< const PagingTestState&>(st).num__paging__sent(), 4), RSL__Types::ts__RSL__PAGING__CMD_tn_defval), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(4250);
/* BTS_Tests.ttcn, line 4250 */
{
boolean tmp_537;
tmp_537 = (const_cast< const PagingTestCfg&>(cfg).ps__load__modulus() > 0);
if (tmp_537) tmp_537 = (mod(const_cast< const PagingTestState&>(st).num__paging__sent(), const_cast< const PagingTestCfg&>(cfg).ps__load__modulus()) == 0);
if (tmp_537) {
current_location.update_lineno(4251);
/* BTS_Tests.ttcn, line 4251 */
{
boolean tmp_538;
tmp_538 = (const_cast< const PagingTestState&>(st).cong__detected() == TRUE);
if (!tmp_538) tmp_538 = (const_cast< const PagingTestCfg&>(cfg).ps__wait__cong() == FALSE);
if (tmp_538) {
current_location.update_lineno(4252);
/* BTS_Tests.ttcn, line 4252 */
PCUIF__CodecPort::f__PCUIF__tx__imm__ass__pch(test__CT_component_PCU, test__CT_component_g__pcu__conn__id, imm__ass, hs_1, PCUIF__CodecPort::f__PCUIF__tx__imm__ass__pch_bts__nr_defval, FALSE, PCUIF__CodecPort::f__PCUIF__tx__imm__ass__pch_msg__id_defval);
}
}
}
}
current_location.update_lineno(4256);
/* BTS_Tests.ttcn, line 4256 */
{
INTEGER tmp_539;
tmp_539 = (const_cast< const PagingTestState&>(st).num__paging__sent() + 1);
st.num__paging__sent() = tmp_539;
}
}
current_location.update_lineno(4258);
/* BTS_Tests.ttcn, line 4258 */
if ((const_cast< const PagingTestState&>(st).num__paging__sent() < pkt__total)) {
current_location.update_lineno(4260);
/* BTS_Tests.ttcn, line 4260 */
FLOAT time__now(T__total.read());
current_location.update_lineno(4261);
/* BTS_Tests.ttcn, line 4261 */
FLOAT next__sched((int2float(const_cast< const PagingTestState&>(st).num__paging__sent()) * interval));
current_location.update_lineno(4262);
/* BTS_Tests.ttcn, line 4262 */
if ((next__sched > time__now)) {
current_location.update_lineno(4263);
/* BTS_Tests.ttcn, line 4263 */
T__itv.start((next__sched - time__now));
}
else {
current_location.update_lineno(4265);
/* BTS_Tests.ttcn, line 4265 */
T__itv.start(0.0);
}
}
else {
current_location.update_lineno(4269);
/* BTS_Tests.ttcn, line 4269 */
T__total.stop();
}
break;
}
}
if (tmp_532_alt_flag_8 == ALT_MAYBE) {
current_location.update_lineno(4272);
/* BTS_Tests.ttcn, line 4272 */
tmp_532_alt_flag_8 = T__total.timeout(NULL);
if (tmp_532_alt_flag_8 == ALT_YES) break;
}
if (tmp_532_default_flag == ALT_MAYBE) {
tmp_532_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_532_default_flag == ALT_YES || tmp_532_default_flag == ALT_BREAK) break;
else if (tmp_532_default_flag == ALT_REPEAT) goto tmp_532;
}
current_location.update_lineno(4202);
/* BTS_Tests.ttcn, line 4202 */
if (tmp_532_alt_flag_0 == ALT_NO && tmp_532_alt_flag_1 == ALT_NO && tmp_532_alt_flag_2 == ALT_NO && tmp_532_alt_flag_3 == ALT_NO && tmp_532_alt_flag_4 == ALT_NO && tmp_532_alt_flag_5 == ALT_NO && tmp_532_alt_flag_6 == ALT_NO && tmp_532_alt_flag_7 == ALT_NO && tmp_532_alt_flag_8 == ALT_NO && tmp_532_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 4202 and 4273.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}
current_location.update_lineno(4276);
/* BTS_Tests.ttcn, line 4276 */
TIMER T__wait("T_wait", const_cast< const PagingTestCfg&>(cfg).queue__drain__timeout());
current_location.update_lineno(4277);
/* BTS_Tests.ttcn, line 4277 */
T__wait.start();
current_location.update_lineno(4278);
/* BTS_Tests.ttcn, line 4278 */
{
tmp_540:
alt_status tmp_540_alt_flag_0 = ALT_MAYBE;
alt_status tmp_540_alt_flag_1 = ALT_MAYBE;
alt_status tmp_540_alt_flag_2 = ALT_MAYBE;
alt_status tmp_540_alt_flag_3 = ALT_MAYBE;
alt_status tmp_540_alt_flag_4 = ALT_MAYBE;
alt_status tmp_540_alt_flag_5 = ALT_MAYBE;
alt_status tmp_540_alt_flag_6 = ALT_MAYBE;
alt_status tmp_540_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_540_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(4279);
/* BTS_Tests.ttcn, line 4279 */
tmp_540_alt_flag_0 = as__l1__count__paging_instance(st.num__paging__rcv__msgs(), st.num__paging__rcv__ids(), cfg, first_run);
if (tmp_540_alt_flag_0 == ALT_REPEAT) goto tmp_540;
if (tmp_540_alt_flag_0 == ALT_BREAK) break;
if (tmp_540_alt_flag_0 == ALT_YES) break;
}
if (tmp_540_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(4280);
/* BTS_Tests.ttcn, line 4280 */
tmp_540_alt_flag_1 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_540_alt_flag_1 == ALT_YES) {
current_location.update_lineno(4280);
/* BTS_Tests.ttcn, line 4280 */
goto tmp_540;
}
}
if (tmp_540_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(4282);
/* BTS_Tests.ttcn, line 4282 */
tmp_540_alt_flag_2 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__PAGING__LOAD__IND(INTEGER_template(65535)), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_540_alt_flag_2 == ALT_YES) break;
}
if (tmp_540_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(4283);
/* BTS_Tests.ttcn, line 4283 */
tmp_540_alt_flag_3 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__PAGING__LOAD__IND(RSL__Types::tr__RSL__PAGING__LOAD__IND_buffer__space_defval), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), &(load__ind), any_compref, NULL, NULL, NULL);
if (tmp_540_alt_flag_3 == ALT_YES) {
current_location.update_lineno(4283);
/* BTS_Tests.ttcn, line 4283 */
goto tmp_540;
}
}
if (tmp_540_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(4285);
/* BTS_Tests.ttcn, line 4285 */
tmp_540_alt_flag_4 = test__CT_component_RSL__CCHAN.receive(any_compref, NULL, NULL, NULL);
if (tmp_540_alt_flag_4 == ALT_YES) {
current_location.update_lineno(4285);
/* BTS_Tests.ttcn, line 4285 */
goto tmp_540;
}
}
if (tmp_540_alt_flag_5 == ALT_MAYBE) {
current_location.update_lineno(4287);
/* BTS_Tests.ttcn, line 4287 */
tmp_540_alt_flag_5 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_540_alt_flag_5 == ALT_YES) {
current_location.update_lineno(4287);
/* BTS_Tests.ttcn, line 4287 */
goto tmp_540;
}
}
if (tmp_540_alt_flag_6 == ALT_MAYBE) {
current_location.update_lineno(4288);
/* BTS_Tests.ttcn, line 4288 */
tmp_540_alt_flag_6 = T__wait.timeout(NULL);
if (tmp_540_alt_flag_6 == ALT_YES) {
current_location.update_lineno(4289);
/* BTS_Tests.ttcn, line 4289 */
Misc__Helpers::f__shutdown(cs_4, 4289, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Waiting for paging queue, last detected fill state: "),const_cast< const IPA__Emulation::ASP__RSL__Unitdata&>(load__ind).rsl().ies()()[1].body().paging__load().log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_540_default_flag == ALT_MAYBE) {
tmp_540_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_540_default_flag == ALT_YES || tmp_540_default_flag == ALT_BREAK) break;
else if (tmp_540_default_flag == ALT_REPEAT) goto tmp_540;
}
current_location.update_lineno(4278);
/* BTS_Tests.ttcn, line 4278 */
if (tmp_540_alt_flag_0 == ALT_NO && tmp_540_alt_flag_1 == ALT_NO && tmp_540_alt_flag_2 == ALT_NO && tmp_540_alt_flag_3 == ALT_NO && tmp_540_alt_flag_4 == ALT_NO && tmp_540_alt_flag_5 == ALT_NO && tmp_540_alt_flag_6 == ALT_NO && tmp_540_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 4278 and 4291.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(4293);
/* BTS_Tests.ttcn, line 4293 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("num_paging_sent=");
const_cast< const PagingTestState&>(st).num__paging__sent().log();
TTCN_Logger::log_event_str(" rcvd_msgs=");
const_cast< const PagingTestState&>(st).num__paging__rcv__msgs().log();
TTCN_Logger::log_event_str(" rcvd_ids=");
const_cast< const PagingTestState&>(st).num__paging__rcv__ids().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(4295);
/* BTS_Tests.ttcn, line 4295 */
return st;
}

void start_f__TC__paging(const COMPONENT& component_reference, const PagingTestCfg& cfg)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_paging(");
cfg.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_paging", text_buf);
cfg.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__paging__imsi__80percent(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4302, TTCN_Location::LOCATION_TESTCASE, "TC_paging_imsi_80percent");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_paging_imsi_80percent", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4303);
/* BTS_Tests.ttcn, line 4303 */
GSM__SystemInformation::SystemInformation si3(ts__SI3__default.valueof());
current_location.update_lineno(4304);
/* BTS_Tests.ttcn, line 4304 */
PagingTestCfg cfg;
cfg.combined__ccch() = TRUE;
cfg.bs__ag__blks__res() = const_cast< const GSM__SystemInformation::SystemInformation&>(si3).payload().si3().ctrl__chan__desc().bs__ag__blks__res();
cfg.load__factor() = 8.0e-1;
cfg.ps__load__modulus() = 0;
cfg.ps__wait__cong() = FALSE;
cfg.queue__drain__timeout() = 1.8e1;
cfg.exp__load__ind() = TRUE;
cfg.exp__overload() = FALSE;
cfg.use__tmsi() = FALSE;
current_location.update_lineno(4315);
/* BTS_Tests.ttcn, line 4315 */
PagingTestState st(f__TC__paging(cfg));
current_location.update_lineno(4316);
/* BTS_Tests.ttcn, line 4316 */
if ((const_cast< const PagingTestState&>(st).num__paging__sent() != const_cast< const PagingTestState&>(st).num__paging__rcv__ids())) {
current_location.update_lineno(4317);
/* BTS_Tests.ttcn, line 4317 */
Misc__Helpers::f__shutdown(cs_4, 4317, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected "),const_cast< const PagingTestState&>(st).num__paging__sent().log(),TTCN_Logger::log_event_str(" pagings but have "),const_cast< const PagingTestState&>(st).num__paging__rcv__ids().log(),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(4320);
/* BTS_Tests.ttcn, line 4320 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(4322);
/* BTS_Tests.ttcn, line 4322 */
Misc__Helpers::f__shutdown(cs_4, 4322, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_paging_imsi_80percent was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__paging__tmsi__80percent(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4329, TTCN_Location::LOCATION_TESTCASE, "TC_paging_tmsi_80percent");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_paging_tmsi_80percent", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4330);
/* BTS_Tests.ttcn, line 4330 */
GSM__SystemInformation::SystemInformation si3(ts__SI3__default.valueof());
current_location.update_lineno(4331);
/* BTS_Tests.ttcn, line 4331 */
PagingTestCfg cfg;
cfg.combined__ccch() = TRUE;
cfg.bs__ag__blks__res() = const_cast< const GSM__SystemInformation::SystemInformation&>(si3).payload().si3().ctrl__chan__desc().bs__ag__blks__res();
cfg.load__factor() = 8.0e-1;
cfg.ps__load__modulus() = 0;
cfg.ps__wait__cong() = FALSE;
cfg.queue__drain__timeout() = 1.8e1;
cfg.exp__load__ind() = TRUE;
cfg.exp__overload() = FALSE;
cfg.use__tmsi() = TRUE;
current_location.update_lineno(4342);
/* BTS_Tests.ttcn, line 4342 */
PagingTestState st(f__TC__paging(cfg));
current_location.update_lineno(4343);
/* BTS_Tests.ttcn, line 4343 */
if ((const_cast< const PagingTestState&>(st).num__paging__sent() != const_cast< const PagingTestState&>(st).num__paging__rcv__ids())) {
current_location.update_lineno(4344);
/* BTS_Tests.ttcn, line 4344 */
Misc__Helpers::f__shutdown(cs_4, 4344, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected "),const_cast< const PagingTestState&>(st).num__paging__sent().log(),TTCN_Logger::log_event_str(" pagings but have "),const_cast< const PagingTestState&>(st).num__paging__rcv__ids().log(),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(4347);
/* BTS_Tests.ttcn, line 4347 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(4349);
/* BTS_Tests.ttcn, line 4349 */
Misc__Helpers::f__shutdown(cs_4, 4349, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_paging_tmsi_80percent was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__paging__imsi__200percent(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4356, TTCN_Location::LOCATION_TESTCASE, "TC_paging_imsi_200percent");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_paging_imsi_200percent", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4357);
/* BTS_Tests.ttcn, line 4357 */
GSM__SystemInformation::SystemInformation si3(ts__SI3__default.valueof());
current_location.update_lineno(4358);
/* BTS_Tests.ttcn, line 4358 */
PagingTestCfg cfg;
cfg.combined__ccch() = TRUE;
cfg.bs__ag__blks__res() = const_cast< const GSM__SystemInformation::SystemInformation&>(si3).payload().si3().ctrl__chan__desc().bs__ag__blks__res();
cfg.load__factor() = 2.0;
cfg.ps__load__modulus() = 0;
cfg.ps__wait__cong() = FALSE;
cfg.queue__drain__timeout() = 1.8e1;
cfg.exp__load__ind() = TRUE;
cfg.exp__overload() = TRUE;
cfg.use__tmsi() = FALSE;
current_location.update_lineno(4369);
/* BTS_Tests.ttcn, line 4369 */
PagingTestState st(f__TC__paging(cfg));
current_location.update_lineno(4372);
/* BTS_Tests.ttcn, line 4372 */
INTEGER_template tpl;
tpl.set_type(VALUE_RANGE);
tpl.set_min(((const_cast< const PagingTestState&>(st).num__paging__sent() * 78) / 100));
tpl.set_max(((const_cast< const PagingTestState&>(st).num__paging__sent() * 85) / 100));
current_location.update_lineno(4373);
/* BTS_Tests.ttcn, line 4373 */
if ((!(tpl.match(const_cast< const PagingTestState&>(st).num__paging__rcv__ids())))) {
current_location.update_lineno(4374);
/* BTS_Tests.ttcn, line 4374 */
Misc__Helpers::f__shutdown(cs_4, 4374, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected "),tpl.log(),TTCN_Logger::log_event_str(" pagings but have "),const_cast< const PagingTestState&>(st).num__paging__rcv__ids().log(),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(4376);
/* BTS_Tests.ttcn, line 4376 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(4378);
/* BTS_Tests.ttcn, line 4378 */
Misc__Helpers::f__shutdown(cs_4, 4378, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_paging_imsi_200percent was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__paging__tmsi__200percent(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4385, TTCN_Location::LOCATION_TESTCASE, "TC_paging_tmsi_200percent");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_paging_tmsi_200percent", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4386);
/* BTS_Tests.ttcn, line 4386 */
GSM__SystemInformation::SystemInformation si3(ts__SI3__default.valueof());
current_location.update_lineno(4387);
/* BTS_Tests.ttcn, line 4387 */
PagingTestCfg cfg;
cfg.combined__ccch() = TRUE;
cfg.bs__ag__blks__res() = const_cast< const GSM__SystemInformation::SystemInformation&>(si3).payload().si3().ctrl__chan__desc().bs__ag__blks__res();
cfg.load__factor() = 2.0;
cfg.ps__load__modulus() = 0;
cfg.ps__wait__cong() = FALSE;
cfg.queue__drain__timeout() = 1.8e1;
cfg.exp__load__ind() = TRUE;
cfg.exp__overload() = TRUE;
cfg.use__tmsi() = TRUE;
current_location.update_lineno(4398);
/* BTS_Tests.ttcn, line 4398 */
PagingTestState st(f__TC__paging(cfg));
current_location.update_lineno(4401);
/* BTS_Tests.ttcn, line 4401 */
INTEGER_template tpl;
tpl.set_type(VALUE_RANGE);
tpl.set_min(((const_cast< const PagingTestState&>(st).num__paging__sent() * 64) / 100));
tpl.set_max(((const_cast< const PagingTestState&>(st).num__paging__sent() * 72) / 100));
current_location.update_lineno(4402);
/* BTS_Tests.ttcn, line 4402 */
if ((!(tpl.match(const_cast< const PagingTestState&>(st).num__paging__rcv__ids())))) {
current_location.update_lineno(4403);
/* BTS_Tests.ttcn, line 4403 */
Misc__Helpers::f__shutdown(cs_4, 4403, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected "),tpl.log(),TTCN_Logger::log_event_str(" pagings but have "),const_cast< const PagingTestState&>(st).num__paging__rcv__ids().log(),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(4405);
/* BTS_Tests.ttcn, line 4405 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(4407);
/* BTS_Tests.ttcn, line 4407 */
Misc__Helpers::f__shutdown(cs_4, 4407, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_paging_tmsi_200percent was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__paging__imsi__200percent__with__ps(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4416, TTCN_Location::LOCATION_TESTCASE, "TC_paging_imsi_200percent_with_ps");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_paging_imsi_200percent_with_ps", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4417);
/* BTS_Tests.ttcn, line 4417 */
GSM__SystemInformation::SystemInformation si3(ts__SI3__default.valueof());
current_location.update_lineno(4418);
/* BTS_Tests.ttcn, line 4418 */
PagingTestCfg cfg;
cfg.combined__ccch() = TRUE;
cfg.bs__ag__blks__res() = const_cast< const GSM__SystemInformation::SystemInformation&>(si3).payload().si3().ctrl__chan__desc().bs__ag__blks__res();
cfg.load__factor() = 2.0;
cfg.ps__load__modulus() = 16;
cfg.ps__wait__cong() = TRUE;
cfg.queue__drain__timeout() = 1.8e1;
cfg.exp__load__ind() = TRUE;
cfg.exp__overload() = TRUE;
cfg.use__tmsi() = FALSE;
current_location.update_lineno(4429);
/* BTS_Tests.ttcn, line 4429 */
PagingTestState st(f__TC__paging(cfg));
current_location.update_lineno(4432);
/* BTS_Tests.ttcn, line 4432 */
INTEGER_template tpl;
tpl.set_type(VALUE_RANGE);
tpl.set_min(((const_cast< const PagingTestState&>(st).num__paging__sent() * 78) / 100));
tpl.set_max(((const_cast< const PagingTestState&>(st).num__paging__sent() * 85) / 100));
current_location.update_lineno(4433);
/* BTS_Tests.ttcn, line 4433 */
if ((!(tpl.match(const_cast< const PagingTestState&>(st).num__paging__rcv__ids())))) {
current_location.update_lineno(4434);
/* BTS_Tests.ttcn, line 4434 */
Misc__Helpers::f__shutdown(cs_4, 4434, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected "),tpl.log(),TTCN_Logger::log_event_str(" pagings but have "),const_cast< const PagingTestState&>(st).num__paging__rcv__ids().log(),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(4436);
/* BTS_Tests.ttcn, line 4436 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(4438);
/* BTS_Tests.ttcn, line 4438 */
Misc__Helpers::f__shutdown(cs_4, 4438, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_paging_imsi_200percent_with_ps was stopped.");
}
return TTCN_Runtime::end_testcase();
}

CHARSTRING f__fmt__ia__stats(const INTEGER& num__tx, const INTEGER& num__rx, const INTEGER& num__del)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4451, TTCN_Location::LOCATION_FUNCTION, "f_fmt_ia_stats");
current_location.update_lineno(4452);
/* BTS_Tests.ttcn, line 4452 */
return (((((int2str(num__tx) + cs_70) + int2str(num__rx)) + cs_71) + int2str(num__del)) + cs_72);
}

void f__TC__imm__ass(const INTEGER& num__total, const FLOAT& sleep__s, const FLOAT& exp__pass)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4457, TTCN_Location::LOCATION_FUNCTION, "f_TC_imm_ass");
current_location.update_lineno(4458);
/* BTS_Tests.ttcn, line 4458 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(4459);
/* BTS_Tests.ttcn, line 4459 */
TIMER T("T", 1.0e1);
current_location.update_lineno(4460);
/* BTS_Tests.ttcn, line 4460 */
INTEGER num__tx(0);
current_location.update_lineno(4461);
/* BTS_Tests.ttcn, line 4461 */
INTEGER num__rx(0);
current_location.update_lineno(4462);
/* BTS_Tests.ttcn, line 4462 */
INTEGER num__del(0);
current_location.update_lineno(4463);
/* BTS_Tests.ttcn, line 4463 */
CHARSTRING res__str;
current_location.update_lineno(4464);
/* BTS_Tests.ttcn, line 4464 */
FLOAT rx__ratio;
current_location.update_lineno(4466);
/* BTS_Tests.ttcn, line 4466 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4467);
/* BTS_Tests.ttcn, line 4467 */
f__init__l1ctl();
current_location.update_lineno(4468);
/* BTS_Tests.ttcn, line 4468 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
{
current_location.update_lineno(4470);
/* BTS_Tests.ttcn, line 4470 */
INTEGER i(0);
current_location.update_lineno(4470);
/* BTS_Tests.ttcn, line 4470 */
for ( ; ; ) {
current_location.update_lineno(4470);
/* BTS_Tests.ttcn, line 4470 */
if (!(i < num__total)) break;
current_location.update_lineno(4471);
/* BTS_Tests.ttcn, line 4471 */
GSM__RR__Types::ChannelDescription ch__desc(GSM__RR__Types::ts__ChanDescH0(GSM__Types::ts__RslChanNr__SDCCH4(0, 0), INTEGER_template(const_cast< const TrxPars&>(mp__trx__pars)[0].arfcn()), INTEGER_template(mp__tsc__def)).valueof());
current_location.update_lineno(4474);
/* BTS_Tests.ttcn, line 4474 */
GSM__RR__Types::GsmRrMessage ia(GSM__RR__Types::ts__IMM__ASS(42, i, 5, ch__desc, c__MA__null).valueof());
current_location.update_lineno(4475);
/* BTS_Tests.ttcn, line 4475 */
OCTETSTRING ia__enc(GSM__RR__Types::enc__GsmRrMessage(ia));
current_location.update_lineno(4476);
/* BTS_Tests.ttcn, line 4476 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::ts__RSL__IMM__ASSIGN(ia__enc, 0), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(4477);
/* BTS_Tests.ttcn, line 4477 */
{
INTEGER tmp_541;
++num__tx;
}
current_location.update_lineno(4478);
/* BTS_Tests.ttcn, line 4478 */
Osmocom__Types::f__sleep(sleep__s);
current_location.update_lineno(4470);
/* BTS_Tests.ttcn, line 4470 */
{
INTEGER tmp_542;
++i;
}
}
}
current_location.update_lineno(4481);
/* BTS_Tests.ttcn, line 4481 */
T.start();
current_location.update_lineno(4482);
/* BTS_Tests.ttcn, line 4482 */
{
tmp_543:
alt_status tmp_543_alt_flag_0 = ALT_MAYBE;
alt_status tmp_543_alt_flag_1 = ALT_MAYBE;
alt_status tmp_543_alt_flag_2 = ALT_MAYBE;
alt_status tmp_543_alt_flag_3 = ALT_MAYBE;
alt_status tmp_543_alt_flag_4 = ALT_MAYBE;
alt_status tmp_543_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_543_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(4483);
/* BTS_Tests.ttcn, line 4483 */
tmp_543_alt_flag_0 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__DELETE__IND(OCTETSTRING_template(ANY_VALUE), INTEGER_template(0)), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_543_alt_flag_0 == ALT_YES) {
current_location.update_lineno(4484);
/* BTS_Tests.ttcn, line 4484 */
{
INTEGER tmp_544;
++num__del;
}
current_location.update_lineno(4485);
/* BTS_Tests.ttcn, line 4485 */
goto tmp_543;
}
}
if (tmp_543_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(4487);
/* BTS_Tests.ttcn, line 4487 */
tmp_543_alt_flag_1 = test__CT_component_RSL__CCHAN.receive(any_compref, NULL, NULL, NULL);
if (tmp_543_alt_flag_1 == ALT_YES) {
current_location.update_lineno(4488);
/* BTS_Tests.ttcn, line 4488 */
goto tmp_543;
}
}
if (tmp_543_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(4490);
/* BTS_Tests.ttcn, line 4490 */
tmp_543_alt_flag_2 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_543_alt_flag_2 == ALT_YES) {
current_location.update_lineno(4491);
/* BTS_Tests.ttcn, line 4491 */
GSM__RR__Types::GsmRrMessage rr(GSM__RR__Types::dec__GsmRrMessage(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().data__ind().payload()));
current_location.update_lineno(4492);
/* BTS_Tests.ttcn, line 4492 */
if ((!(GSM__RR__Types::tr__IMM__ASS(INTEGER_template(42), INTEGER_template(ANY_VALUE), INTEGER_template(5), GSM__RR__Types::ChannelDescription_template(ANY_VALUE), GSM__RR__Types::MobileAllocationLV_template(ANY_VALUE), GSM__RR__Types::tr__IMM__ASS_page__mode_defval).match(rr)))) {
}
else {
current_location.update_lineno(4496);
/* BTS_Tests.ttcn, line 4496 */
{
INTEGER tmp_545;
++num__rx;
}
}
current_location.update_lineno(4498);
/* BTS_Tests.ttcn, line 4498 */
goto tmp_543;
}
}
if (tmp_543_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(4500);
/* BTS_Tests.ttcn, line 4500 */
tmp_543_alt_flag_3 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_543_alt_flag_3 == ALT_YES) {
current_location.update_lineno(4500);
/* BTS_Tests.ttcn, line 4500 */
goto tmp_543;
}
}
if (tmp_543_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(4501);
/* BTS_Tests.ttcn, line 4501 */
tmp_543_alt_flag_4 = T.timeout(NULL);
if (tmp_543_alt_flag_4 == ALT_YES) break;
}
if (tmp_543_default_flag == ALT_MAYBE) {
tmp_543_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_543_default_flag == ALT_YES || tmp_543_default_flag == ALT_BREAK) break;
else if (tmp_543_default_flag == ALT_REPEAT) goto tmp_543;
}
current_location.update_lineno(4482);
/* BTS_Tests.ttcn, line 4482 */
if (tmp_543_alt_flag_0 == ALT_NO && tmp_543_alt_flag_1 == ALT_NO && tmp_543_alt_flag_2 == ALT_NO && tmp_543_alt_flag_3 == ALT_NO && tmp_543_alt_flag_4 == ALT_NO && tmp_543_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 4482 and 4502.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(4503);
/* BTS_Tests.ttcn, line 4503 */
res__str = f__fmt__ia__stats(num__tx, num__rx, num__del);
current_location.update_lineno(4504);
/* BTS_Tests.ttcn, line 4504 */
try {
TTCN_Logger::begin_event(TTCN_USER);
(cs_73 + res__str).log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(4505);
/* BTS_Tests.ttcn, line 4505 */
if (((num__rx + num__del) != num__tx)) {
current_location.update_lineno(4506);
/* BTS_Tests.ttcn, line 4506 */
Misc__Helpers::f__shutdown(cs_4, 4506, FAIL, (cs_74 + res__str));
}
current_location.update_lineno(4508);
/* BTS_Tests.ttcn, line 4508 */
rx__ratio = (int2float(num__rx) / int2float(num__tx));
current_location.update_lineno(4509);
/* BTS_Tests.ttcn, line 4509 */
{
boolean tmp_548;
tmp_548 = (rx__ratio < (exp__pass * 8.0e-1));
if (!tmp_548) tmp_548 = (rx__ratio > (exp__pass * 1.2));
if (tmp_548) {
current_location.update_lineno(4510);
/* BTS_Tests.ttcn, line 4510 */
Misc__Helpers::f__shutdown(cs_4, 4510, FAIL, (((((cs_75 + float2str(rx__ratio)) + cs_76) + float2str(exp__pass)) + cs_77) + res__str));
}
else {
current_location.update_lineno(4512);
/* BTS_Tests.ttcn, line 4512 */
TTCN_Runtime::setverdict(PASS);
}
}
current_location.update_lineno(4514);
/* BTS_Tests.ttcn, line 4514 */
Misc__Helpers::f__shutdown(cs_4, 4514, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}

void start_f__TC__imm__ass(const COMPONENT& component_reference, const INTEGER& num__total, const FLOAT& sleep__s, const FLOAT& exp__pass)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_imm_ass(");
num__total.log();
TTCN_Logger::log_event_str(", ");
sleep__s.log();
TTCN_Logger::log_event_str(", ");
exp__pass.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_imm_ass", text_buf);
num__total.encode_text(text_buf);
sleep__s.encode_text(text_buf);
exp__pass.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__imm__ass__1000__20ms(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4518, TTCN_Location::LOCATION_TESTCASE, "TC_imm_ass_1000_20ms");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_imm_ass_1000_20ms", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4519);
/* BTS_Tests.ttcn, line 4519 */
f__TC__imm__ass(1000, 2.0e-2, 2.5e-1);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_imm_ass_1000_20ms was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__imm__ass__200__0ms(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4523, TTCN_Location::LOCATION_TESTCASE, "TC_imm_ass_200_0ms");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_imm_ass_200_0ms", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4524);
/* BTS_Tests.ttcn, line 4524 */
f__TC__imm__ass(200, 0.0, 5.0e-2);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_imm_ass_200_0ms was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__imm__ass__200__76ms(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4528, TTCN_Location::LOCATION_TESTCASE, "TC_imm_ass_200_76ms");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_imm_ass_200_76ms", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4529);
/* BTS_Tests.ttcn, line 4529 */
f__TC__imm__ass(150, 7.6e-2, 1.0);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_imm_ass_200_76ms was stopped.");
}
return TTCN_Runtime::end_testcase();
}

boolean operator==(null_type, const SystemInformationVector& other_value)
{
if (other_value.val_ptr == NULL)
TTCN_error("The right operand of comparison is an unbound value of type @BTS_Tests.SystemInformationVector.");
return other_value.val_ptr->n_elements == 0;
}

BOOLEAN f__si__vecslot__contains(const SystemInformationVector& arr, const GSM__RR__Types::RrMessageType& key, const BOOLEAN& bcch__ext)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4551, TTCN_Location::LOCATION_FUNCTION, "f_si_vecslot_contains");
{
current_location.update_lineno(4555);
/* BTS_Tests.ttcn, line 4555 */
INTEGER i(0);
current_location.update_lineno(4555);
/* BTS_Tests.ttcn, line 4555 */
for ( ; ; ) {
current_location.update_lineno(4555);
/* BTS_Tests.ttcn, line 4555 */
if (!(i < arr.size_of())) break;
current_location.update_lineno(4556);
/* BTS_Tests.ttcn, line 4556 */
INTEGER fn__mod51(mod(const_cast< const SystemInformationVector&>(arr)[i].frame__number(), 51));
current_location.update_lineno(4557);
/* BTS_Tests.ttcn, line 4557 */
{
boolean tmp_549;
{
boolean tmp_550;
tmp_550 = (!(bcch__ext));
if (tmp_550) tmp_550 = (fn__mod51 == 2);
tmp_549 = tmp_550;
}
if (!tmp_549) {
boolean tmp_551;
tmp_551 = bcch__ext;
if (tmp_551) tmp_551 = (fn__mod51 == 6);
tmp_549 = tmp_551;
}
if (tmp_549) {
current_location.update_lineno(4559);
/* BTS_Tests.ttcn, line 4559 */
if ((const_cast< const SystemInformationVector&>(arr)[i].si().header().message__type() == key)) {
current_location.update_lineno(4560);
/* BTS_Tests.ttcn, line 4560 */
return TRUE;
}
}
}
current_location.update_lineno(4555);
/* BTS_Tests.ttcn, line 4555 */
{
INTEGER tmp_552;
++i;
}
}
}
current_location.update_lineno(4564);
/* BTS_Tests.ttcn, line 4564 */
return FALSE;
}

void f__ensure__si__vec__contains(const SystemInformationVectorPerTc& arr, const INTEGER& tc, const GSM__RR__Types::RrMessageType& key, const BOOLEAN& ext__bcch)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4568, TTCN_Location::LOCATION_FUNCTION, "f_ensure_si_vec_contains");
current_location.update_lineno(4572);
/* BTS_Tests.ttcn, line 4572 */
if ((!(f__si__vecslot__contains(const_cast< const SystemInformationVectorPerTc&>(arr)[tc], key, ext__bcch)))) {
current_location.update_lineno(4573);
/* BTS_Tests.ttcn, line 4573 */
Misc__Helpers::f__shutdown(cs_4, 4573, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("No "),key.log(),TTCN_Logger::log_event_str(" in TC="),tc.log(),TTCN_Logger::log_char('!'),TTCN_Logger::end_event_log2str()));
}
}

BOOLEAN f__si__vec__contains(const SystemInformationVectorPerTc& arr, const GSM__RR__Types::RrMessageType& key)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4578, TTCN_Location::LOCATION_FUNCTION, "f_si_vec_contains");
{
current_location.update_lineno(4581);
/* BTS_Tests.ttcn, line 4581 */
INTEGER tc(0);
current_location.update_lineno(4581);
/* BTS_Tests.ttcn, line 4581 */
for ( ; ; ) {
current_location.update_lineno(4581);
/* BTS_Tests.ttcn, line 4581 */
if (!(tc < 8)) break;
current_location.update_lineno(4582);
/* BTS_Tests.ttcn, line 4582 */
{
boolean tmp_553;
tmp_553 = f__si__vecslot__contains(const_cast< const SystemInformationVectorPerTc&>(arr)[tc], key, f__si__vecslot__contains_bcch__ext_defval);
if (!tmp_553) tmp_553 = f__si__vecslot__contains(const_cast< const SystemInformationVectorPerTc&>(arr)[tc], key, TRUE);
if (tmp_553) {
current_location.update_lineno(4584);
/* BTS_Tests.ttcn, line 4584 */
return TRUE;
}
}
current_location.update_lineno(4581);
/* BTS_Tests.ttcn, line 4581 */
{
INTEGER tmp_554;
++tc;
}
}
}
current_location.update_lineno(4587);
/* BTS_Tests.ttcn, line 4587 */
return FALSE;
}

BOOLEAN f__si__vecslot__contains__n__of__m(const SystemInformationVector& arr, const GSM__RR__Types::RrMessageType& key, const BOOLEAN& bcch__ext, const INTEGER& n, const INTEGER& m)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4591, TTCN_Location::LOCATION_FUNCTION, "f_si_vecslot_contains_n_of_m");
current_location.update_lineno(4596);
/* BTS_Tests.ttcn, line 4596 */
INTEGER count(0);
current_location.update_lineno(4597);
/* BTS_Tests.ttcn, line 4597 */
if ((arr.size_of() < m)) {
current_location.update_lineno(4598);
/* BTS_Tests.ttcn, line 4598 */
Misc__Helpers::f__shutdown(cs_4, 4598, FAIL, (((cs_78 + int2str(arr.size_of())) + cs_79) + int2str(m)));
}
{
current_location.update_lineno(4601);
/* BTS_Tests.ttcn, line 4601 */
INTEGER i(0);
current_location.update_lineno(4601);
/* BTS_Tests.ttcn, line 4601 */
for ( ; ; ) {
current_location.update_lineno(4601);
/* BTS_Tests.ttcn, line 4601 */
if (!(i < m)) break;
current_location.update_lineno(4602);
/* BTS_Tests.ttcn, line 4602 */
INTEGER fn__mod51(mod(const_cast< const SystemInformationVector&>(arr)[i].frame__number(), 51));
current_location.update_lineno(4603);
/* BTS_Tests.ttcn, line 4603 */
{
boolean tmp_555;
{
boolean tmp_556;
tmp_556 = (!(bcch__ext));
if (tmp_556) tmp_556 = (fn__mod51 == 2);
tmp_555 = tmp_556;
}
if (!tmp_555) {
boolean tmp_557;
tmp_557 = bcch__ext;
if (tmp_557) tmp_557 = (fn__mod51 == 6);
tmp_555 = tmp_557;
}
if (tmp_555) {
current_location.update_lineno(4605);
/* BTS_Tests.ttcn, line 4605 */
if ((const_cast< const SystemInformationVector&>(arr)[i].si().header().message__type() == key)) {
current_location.update_lineno(4606);
/* BTS_Tests.ttcn, line 4606 */
{
INTEGER tmp_558;
++count;
}
}
}
}
current_location.update_lineno(4601);
/* BTS_Tests.ttcn, line 4601 */
{
INTEGER tmp_559;
++i;
}
}
}
current_location.update_lineno(4610);
/* BTS_Tests.ttcn, line 4610 */
if ((count >= n)) {
current_location.update_lineno(4611);
/* BTS_Tests.ttcn, line 4611 */
return TRUE;
}
else {
current_location.update_lineno(4613);
/* BTS_Tests.ttcn, line 4613 */
return FALSE;
}
}

void f__ensure__si__vec__contains__n__of__m(const SystemInformationVectorPerTc& arr, const INTEGER& tc, const GSM__RR__Types::RrMessageType& key, const BOOLEAN& ext__bcch, const INTEGER& n, const INTEGER& m)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4618, TTCN_Location::LOCATION_FUNCTION, "f_ensure_si_vec_contains_n_of_m");
current_location.update_lineno(4623);
/* BTS_Tests.ttcn, line 4623 */
if ((!(f__si__vecslot__contains__n__of__m(const_cast< const SystemInformationVectorPerTc&>(arr)[tc], key, ext__bcch, n, m)))) {
current_location.update_lineno(4624);
/* BTS_Tests.ttcn, line 4624 */
Misc__Helpers::f__shutdown(cs_4, 4624, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Not "),n.log(),TTCN_Logger::log_char('/'),m.log(),TTCN_Logger::log_event_str(" of "),key.log(),TTCN_Logger::log_event_str(" in TC="),tc.log(),TTCN_Logger::log_char('!'),TTCN_Logger::end_event_log2str()));
}
}

BOOLEAN f__si__vecslot__contains__only(const SystemInformationVector& arr, const GSM__RR__Types::RrMessageType& key, const BOOLEAN& bcch__ext)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4629, TTCN_Location::LOCATION_FUNCTION, "f_si_vecslot_contains_only");
{
current_location.update_lineno(4633);
/* BTS_Tests.ttcn, line 4633 */
INTEGER i(0);
current_location.update_lineno(4633);
/* BTS_Tests.ttcn, line 4633 */
for ( ; ; ) {
current_location.update_lineno(4633);
/* BTS_Tests.ttcn, line 4633 */
if (!(i < arr.size_of())) break;
current_location.update_lineno(4634);
/* BTS_Tests.ttcn, line 4634 */
INTEGER fn__mod51(mod(const_cast< const SystemInformationVector&>(arr)[i].frame__number(), 51));
current_location.update_lineno(4635);
/* BTS_Tests.ttcn, line 4635 */
{
boolean tmp_560;
{
boolean tmp_561;
tmp_561 = (!(bcch__ext));
if (tmp_561) tmp_561 = (fn__mod51 == 2);
tmp_560 = tmp_561;
}
if (!tmp_560) {
boolean tmp_562;
tmp_562 = bcch__ext;
if (tmp_562) tmp_562 = (fn__mod51 == 6);
tmp_560 = tmp_562;
}
if (tmp_560) {
current_location.update_lineno(4637);
/* BTS_Tests.ttcn, line 4637 */
if ((const_cast< const SystemInformationVector&>(arr)[i].si().header().message__type() != key)) {
current_location.update_lineno(4638);
/* BTS_Tests.ttcn, line 4638 */
return FALSE;
}
}
}
current_location.update_lineno(4633);
/* BTS_Tests.ttcn, line 4633 */
{
INTEGER tmp_563;
++i;
}
}
}
current_location.update_lineno(4642);
/* BTS_Tests.ttcn, line 4642 */
return TRUE;
}

void f__ensure__si__vec__contains__only(const SystemInformationVectorPerTc& arr, const INTEGER& tc, const GSM__RR__Types::RrMessageType& key, const BOOLEAN& ext__bcch)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4646, TTCN_Location::LOCATION_FUNCTION, "f_ensure_si_vec_contains_only");
current_location.update_lineno(4650);
/* BTS_Tests.ttcn, line 4650 */
if ((!(f__si__vecslot__contains__only(const_cast< const SystemInformationVectorPerTc&>(arr)[tc], key, ext__bcch)))) {
current_location.update_lineno(4651);
/* BTS_Tests.ttcn, line 4651 */
Misc__Helpers::f__shutdown(cs_4, 4651, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Not all "),key.log(),TTCN_Logger::log_event_str(" in TC="),tc.log(),TTCN_Logger::log_char('!'),TTCN_Logger::end_event_log2str()));
}
}

void f__validate__si__scheduling(const SystemInformationConfig& cfg, const SystemInformationVectorPerTc& si__per__tc)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4676, TTCN_Location::LOCATION_FUNCTION, "f_validate_si_scheduling");
current_location.update_lineno(4679);
/* BTS_Tests.ttcn, line 4679 */
INTEGER i;
current_location.update_lineno(4680);
/* BTS_Tests.ttcn, line 4680 */
i = 0;
current_location.update_lineno(4680);
/* BTS_Tests.ttcn, line 4680 */
for ( ; ; ) {
current_location.update_lineno(4680);
/* BTS_Tests.ttcn, line 4680 */
if (!(i < 8)) break;
current_location.update_lineno(4681);
/* BTS_Tests.ttcn, line 4681 */
if ((const_cast< const SystemInformationVectorPerTc&>(si__per__tc)[i].size_of() == 0)) {
current_location.update_lineno(4682);
/* BTS_Tests.ttcn, line 4682 */
Misc__Helpers::f__shutdown(cs_4, 4682, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("No SI messages for TC="),i.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(4680);
/* BTS_Tests.ttcn, line 4680 */
{
INTEGER tmp_565;
++i;
}
}
current_location.update_lineno(4685);
/* BTS_Tests.ttcn, line 4685 */
if (const_cast< const SystemInformationConfig&>(cfg).si1__present()) {
current_location.update_lineno(4689);
/* BTS_Tests.ttcn, line 4689 */
f__ensure__si__vec__contains(si__per__tc, 0, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__1, f__ensure__si__vec__contains_ext__bcch_defval);
current_location.update_lineno(4691);
/* BTS_Tests.ttcn, line 4691 */
f__ensure__si__vec__contains__only(si__per__tc, 0, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__1, f__ensure__si__vec__contains__only_ext__bcch_defval);
}
current_location.update_lineno(4693);
/* BTS_Tests.ttcn, line 4693 */
f__ensure__si__vec__contains(si__per__tc, 1, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2, f__ensure__si__vec__contains_ext__bcch_defval);
current_location.update_lineno(4695);
/* BTS_Tests.ttcn, line 4695 */
f__ensure__si__vec__contains(si__per__tc, 2, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__3, f__ensure__si__vec__contains_ext__bcch_defval);
current_location.update_lineno(4696);
/* BTS_Tests.ttcn, line 4696 */
f__ensure__si__vec__contains(si__per__tc, 6, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__3, f__ensure__si__vec__contains_ext__bcch_defval);
current_location.update_lineno(4697);
/* BTS_Tests.ttcn, line 4697 */
f__ensure__si__vec__contains(si__per__tc, 3, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__4, f__ensure__si__vec__contains_ext__bcch_defval);
current_location.update_lineno(4698);
/* BTS_Tests.ttcn, line 4698 */
f__ensure__si__vec__contains(si__per__tc, 7, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__4, f__ensure__si__vec__contains_ext__bcch_defval);
current_location.update_lineno(4704);
/* BTS_Tests.ttcn, line 4704 */
{
boolean tmp_566;
tmp_566 = const_cast< const SystemInformationConfig&>(cfg).si2bis__present();
if (tmp_566) tmp_566 = (!(const_cast< const SystemInformationConfig&>(cfg).si2ter__present()));
if (tmp_566) {
current_location.update_lineno(4705);
/* BTS_Tests.ttcn, line 4705 */
f__ensure__si__vec__contains(si__per__tc, 5, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2bis, f__ensure__si__vec__contains_ext__bcch_defval);
}
else {
current_location.update_lineno(4706);
/* BTS_Tests.ttcn, line 4706 */
boolean tmp_567;
tmp_567 = const_cast< const SystemInformationConfig&>(cfg).si2ter__present();
if (tmp_567) tmp_567 = (!(const_cast< const SystemInformationConfig&>(cfg).si2bis__present()));
if (tmp_567) {
current_location.update_lineno(4707);
/* BTS_Tests.ttcn, line 4707 */
f__ensure__si__vec__contains(si__per__tc, 5, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2ter, f__ensure__si__vec__contains_ext__bcch_defval);
}
else {
current_location.update_lineno(4708);
/* BTS_Tests.ttcn, line 4708 */
if ((const_cast< const SystemInformationConfig&>(cfg).si2ter__present() && const_cast< const SystemInformationConfig&>(cfg).si2bis__present())) {
current_location.update_lineno(4709);
/* BTS_Tests.ttcn, line 4709 */
f__ensure__si__vec__contains(si__per__tc, 5, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2bis, f__ensure__si__vec__contains_ext__bcch_defval);
current_location.update_lineno(4710);
/* BTS_Tests.ttcn, line 4710 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2ter, FALSE, 1, 4);
}
}
}
}
current_location.update_lineno(4713);
/* BTS_Tests.ttcn, line 4713 */
if ((const_cast< const SystemInformationConfig&>(cfg).si7__present() || const_cast< const SystemInformationConfig&>(cfg).si8__present())) {
current_location.update_lineno(4717);
/* BTS_Tests.ttcn, line 4717 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4718);
/* BTS_Tests.ttcn, line 4718 */
TTCN_Logger::log_str(TTCN_USER, "Error: SI7/SI8 require BCCH Extd.");
TTCN_error("testcase.stop");
}
current_location.update_lineno(4720);
/* BTS_Tests.ttcn, line 4720 */
if (const_cast< const SystemInformationConfig&>(cfg).si7__present()) {
current_location.update_lineno(4721);
/* BTS_Tests.ttcn, line 4721 */
f__ensure__si__vec__contains(si__per__tc, 7, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__7, TRUE);
}
current_location.update_lineno(4723);
/* BTS_Tests.ttcn, line 4723 */
if (const_cast< const SystemInformationConfig&>(cfg).si8__present()) {
current_location.update_lineno(4724);
/* BTS_Tests.ttcn, line 4724 */
f__ensure__si__vec__contains(si__per__tc, 3, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__8, TRUE);
}
}
current_location.update_lineno(4728);
/* BTS_Tests.ttcn, line 4728 */
if (const_cast< const SystemInformationConfig&>(cfg).si2quater__present()) {
current_location.update_lineno(4734);
/* BTS_Tests.ttcn, line 4734 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4735);
/* BTS_Tests.ttcn, line 4735 */
if ((!((const_cast< const SystemInformationConfig&>(cfg).si2bis__present() || const_cast< const SystemInformationConfig&>(cfg).si2ter__present())))) {
current_location.update_lineno(4736);
/* BTS_Tests.ttcn, line 4736 */
f__ensure__si__vec__contains(si__per__tc, 5, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2quater, f__ensure__si__vec__contains_ext__bcch_defval);
}
else {
current_location.update_lineno(4738);
/* BTS_Tests.ttcn, line 4738 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2quater, FALSE, 1, 4);
}
}
else {
current_location.update_lineno(4741);
/* BTS_Tests.ttcn, line 4741 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 5, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2quater, TRUE, 1, 4);
}
}
current_location.update_lineno(4744);
/* BTS_Tests.ttcn, line 4744 */
if (const_cast< const SystemInformationConfig&>(cfg).si9__present()) {
current_location.update_lineno(4747);
/* BTS_Tests.ttcn, line 4747 */
f__ensure__si__vec__contains(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__9, f__ensure__si__vec__contains_ext__bcch_defval);
}
current_location.update_lineno(4749);
/* BTS_Tests.ttcn, line 4749 */
if (const_cast< const SystemInformationConfig&>(cfg).si13__present()) {
current_location.update_lineno(4756);
/* BTS_Tests.ttcn, line 4756 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4757);
/* BTS_Tests.ttcn, line 4757 */
TTCN_Logger::log_str(TTCN_USER, "not-bccch-extended");
current_location.update_lineno(4758);
/* BTS_Tests.ttcn, line 4758 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__13, FALSE, 1, 4);
}
else {
current_location.update_lineno(4760);
/* BTS_Tests.ttcn, line 4760 */
TTCN_Logger::log_str(TTCN_USER, "bccch-extended");
current_location.update_lineno(4761);
/* BTS_Tests.ttcn, line 4761 */
f__ensure__si__vec__contains(si__per__tc, 0, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__13, TRUE);
}
current_location.update_lineno(4763);
/* BTS_Tests.ttcn, line 4763 */
if (f__si__vec__contains(si__per__tc, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__13alt)) {
current_location.update_lineno(4764);
/* BTS_Tests.ttcn, line 4764 */
Misc__Helpers::f__shutdown(cs_4, 4764, FAIL, cs_80);
}
}
current_location.update_lineno(4767);
/* BTS_Tests.ttcn, line 4767 */
if ((const_cast< const SystemInformationConfig&>(cfg).si16__present() || const_cast< const SystemInformationConfig&>(cfg).si17__present())) {
current_location.update_lineno(4770);
/* BTS_Tests.ttcn, line 4770 */
if (const_cast< const SystemInformationConfig&>(cfg).si22__present()) {
current_location.update_lineno(4771);
/* BTS_Tests.ttcn, line 4771 */
TTCN_Logger::log_str(TTCN_USER, "Error: Cannot have SI16/SI17 and SI22!");
TTCN_error("testcase.stop");
}
current_location.update_lineno(4773);
/* BTS_Tests.ttcn, line 4773 */
if (f__si__vec__contains(si__per__tc, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__22)) {
current_location.update_lineno(4774);
/* BTS_Tests.ttcn, line 4774 */
Misc__Helpers::f__shutdown(cs_4, 4774, FAIL, cs_81);
}
current_location.update_lineno(4776);
/* BTS_Tests.ttcn, line 4776 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4777);
/* BTS_Tests.ttcn, line 4777 */
TTCN_Logger::log_str(TTCN_USER, "Error: SI16/SI17 requires BCCH Extd!");
TTCN_error("testcase.stop");
}
current_location.update_lineno(4779);
/* BTS_Tests.ttcn, line 4779 */
if (const_cast< const SystemInformationConfig&>(cfg).si16__present()) {
current_location.update_lineno(4780);
/* BTS_Tests.ttcn, line 4780 */
f__ensure__si__vec__contains(si__per__tc, 6, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__16, TRUE);
}
current_location.update_lineno(4782);
/* BTS_Tests.ttcn, line 4782 */
if (const_cast< const SystemInformationConfig&>(cfg).si17__present()) {
current_location.update_lineno(4783);
/* BTS_Tests.ttcn, line 4783 */
f__ensure__si__vec__contains(si__per__tc, 2, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__17, TRUE);
}
}
current_location.update_lineno(4796);
/* BTS_Tests.ttcn, line 4796 */
if (const_cast< const SystemInformationConfig&>(cfg).si15__present()) {
current_location.update_lineno(4801);
/* BTS_Tests.ttcn, line 4801 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4802);
/* BTS_Tests.ttcn, line 4802 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__15, FALSE, 1, 4);
}
else {
current_location.update_lineno(4804);
/* BTS_Tests.ttcn, line 4804 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 1, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__15, TRUE, 1, 4);
}
}
current_location.update_lineno(4807);
/* BTS_Tests.ttcn, line 4807 */
if (const_cast< const SystemInformationConfig&>(cfg).si13alt__present()) {
current_location.update_lineno(4815);
/* BTS_Tests.ttcn, line 4815 */
if (const_cast< const SystemInformationConfig&>(cfg).si13__present()) {
current_location.update_lineno(4816);
/* BTS_Tests.ttcn, line 4816 */
TTCN_Logger::log_str(TTCN_USER, "Error: Cannot have SI13alt and SI13");
TTCN_error("testcase.stop");
}
current_location.update_lineno(4818);
/* BTS_Tests.ttcn, line 4818 */
if (f__si__vec__contains(si__per__tc, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__13)) {
current_location.update_lineno(4819);
/* BTS_Tests.ttcn, line 4819 */
Misc__Helpers::f__shutdown(cs_4, 4819, FAIL, cs_80);
}
current_location.update_lineno(4821);
/* BTS_Tests.ttcn, line 4821 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4822);
/* BTS_Tests.ttcn, line 4822 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__13alt, FALSE, 1, 4);
}
else {
current_location.update_lineno(4824);
/* BTS_Tests.ttcn, line 4824 */
f__ensure__si__vec__contains(si__per__tc, 0, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__13alt, TRUE);
}
}
current_location.update_lineno(4827);
/* BTS_Tests.ttcn, line 4827 */
if (const_cast< const SystemInformationConfig&>(cfg).si2n__present()) {
current_location.update_lineno(4833);
/* BTS_Tests.ttcn, line 4833 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4834);
/* BTS_Tests.ttcn, line 4834 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2n, FALSE, 1, 4);
}
else {
current_location.update_lineno(4836);
/* BTS_Tests.ttcn, line 4836 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2n, TRUE, 2, 4);
}
}
current_location.update_lineno(4839);
/* BTS_Tests.ttcn, line 4839 */
if (const_cast< const SystemInformationConfig&>(cfg).si21__present()) {
current_location.update_lineno(4845);
/* BTS_Tests.ttcn, line 4845 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4846);
/* BTS_Tests.ttcn, line 4846 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__21, FALSE, 1, 4);
}
else {
current_location.update_lineno(4848);
/* BTS_Tests.ttcn, line 4848 */
f__ensure__si__vec__contains__n__of__m(si__per__tc, 4, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__21, TRUE, 1, 4);
current_location.update_lineno(4849);
/* BTS_Tests.ttcn, line 4849 */
if (f__si__vecslot__contains(const_cast< const SystemInformationVectorPerTc&>(si__per__tc)[4], GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__21, f__si__vecslot__contains_bcch__ext_defval)) {
current_location.update_lineno(4850);
/* BTS_Tests.ttcn, line 4850 */
Misc__Helpers::f__shutdown(cs_4, 4850, FAIL, cs_82);
}
}
}
current_location.update_lineno(4854);
/* BTS_Tests.ttcn, line 4854 */
if (const_cast< const SystemInformationConfig&>(cfg).si22__present()) {
current_location.update_lineno(4859);
/* BTS_Tests.ttcn, line 4859 */
if ((const_cast< const SystemInformationConfig&>(cfg).si16__present() || const_cast< const SystemInformationConfig&>(cfg).si17__present())) {
current_location.update_lineno(4860);
/* BTS_Tests.ttcn, line 4860 */
TTCN_Logger::log_str(TTCN_USER, "Error: Cannot have SI16/SI17 and SI22!");
TTCN_error("testcase.stop");
}
current_location.update_lineno(4862);
/* BTS_Tests.ttcn, line 4862 */
{
boolean tmp_568;
tmp_568 = f__si__vec__contains(si__per__tc, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__16);
if (!tmp_568) tmp_568 = f__si__vec__contains(si__per__tc, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__17);
if (tmp_568) {
current_location.update_lineno(4864);
/* BTS_Tests.ttcn, line 4864 */
Misc__Helpers::f__shutdown(cs_4, 4864, FAIL, cs_81);
}
}
current_location.update_lineno(4866);
/* BTS_Tests.ttcn, line 4866 */
if ((!(const_cast< const SystemInformationConfig&>(cfg).bcch__extended()))) {
current_location.update_lineno(4867);
/* BTS_Tests.ttcn, line 4867 */
TTCN_Logger::log_str(TTCN_USER, "Error: SI22 requires BCCH Extd!");
TTCN_error("testcase.stop");
}
else {
current_location.update_lineno(4869);
/* BTS_Tests.ttcn, line 4869 */
f__ensure__si__vec__contains__only(si__per__tc, 2, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__22, TRUE);
current_location.update_lineno(4870);
/* BTS_Tests.ttcn, line 4870 */
f__ensure__si__vec__contains__only(si__per__tc, 6, GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__22, TRUE);
}
}
}

SystemInformationVectorPerTc f__l1__sample__si(L1CTL__PortType::L1CTL__PT& pt, const FLOAT& duration)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4876, TTCN_Location::LOCATION_FUNCTION, "f_l1_sample_si");
current_location.update_lineno(4878);
/* BTS_Tests.ttcn, line 4878 */
TIMER T("T", duration);
current_location.update_lineno(4879);
/* BTS_Tests.ttcn, line 4879 */
SystemInformationVectorPerTc si__per__tc;
current_location.update_lineno(4880);
/* BTS_Tests.ttcn, line 4880 */
L1CTL__Types::L1ctlMessage l1__dl;
{
current_location.update_lineno(4883);
/* BTS_Tests.ttcn, line 4883 */
INTEGER i(0);
current_location.update_lineno(4883);
/* BTS_Tests.ttcn, line 4883 */
for ( ; ; ) {
current_location.update_lineno(4883);
/* BTS_Tests.ttcn, line 4883 */
if (!(i < 8)) break;
current_location.update_lineno(4884);
/* BTS_Tests.ttcn, line 4884 */
si__per__tc[i] = NULL_VALUE;
current_location.update_lineno(4883);
/* BTS_Tests.ttcn, line 4883 */
{
INTEGER tmp_570;
++i;
}
}
}
current_location.update_lineno(4888);
/* BTS_Tests.ttcn, line 4888 */
pt.clear();
current_location.update_lineno(4890);
/* BTS_Tests.ttcn, line 4890 */
T.start();
current_location.update_lineno(4891);
/* BTS_Tests.ttcn, line 4891 */
{
tmp_571:
alt_status tmp_571_alt_flag_0 = ALT_MAYBE;
alt_status tmp_571_alt_flag_1 = ALT_MAYBE;
alt_status tmp_571_alt_flag_2 = ALT_MAYBE;
alt_status tmp_571_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_571_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(4892);
/* BTS_Tests.ttcn, line 4892 */
tmp_571_alt_flag_0 = pt.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__BCCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_571_alt_flag_0 == ALT_YES) {
current_location.update_lineno(4893);
/* BTS_Tests.ttcn, line 4893 */
SystemInformationFn sig;
sig.frame__number() = const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).dl__info()().frame__nr();
current_location.update_lineno(4894);
/* BTS_Tests.ttcn, line 4894 */
{
boolean tmp_574;
{
GSM__SystemInformation::SystemInformation tmp_572;
INTEGER tmp_573 = GSM__SystemInformation::dec__SystemInformationSafe(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().data__ind().payload(), tmp_572);
if (tmp_572.is_bound()) sig.si() = tmp_572;
tmp_574 = (tmp_573 != 0);
}
if (tmp_574) {
current_location.update_lineno(4895);
/* BTS_Tests.ttcn, line 4895 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Ignoring non-RR or invalid SI ");
l1__dl.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(4896);
/* BTS_Tests.ttcn, line 4896 */
goto tmp_571;
}
}
current_location.update_lineno(4899);
/* BTS_Tests.ttcn, line 4899 */
INTEGER tc(GSM__Types::f__gsm__compute__tc(const_cast< const SystemInformationFn&>(sig).frame__number()));
current_location.update_lineno(4900);
/* BTS_Tests.ttcn, line 4900 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("SI received at TC=");
tc.log();
TTCN_Logger::log_event_str(": ");
const_cast< const SystemInformationFn&>(sig).si().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(4902);
/* BTS_Tests.ttcn, line 4902 */
{
SystemInformationVector tmp_575;
{
SystemInformationVector tmp_577;
tmp_577.set_size(1);
tmp_577[0] = sig;
tmp_575 = (const_cast< const SystemInformationVectorPerTc&>(si__per__tc)[tc] + tmp_577);
}
{
SystemInformationVector& tmp_576 = si__per__tc[tc]; /* 7388 */
tmp_576 = tmp_575;
}
}
current_location.update_lineno(4903);
/* BTS_Tests.ttcn, line 4903 */
goto tmp_571;
}
}
if (tmp_571_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(4905);
/* BTS_Tests.ttcn, line 4905 */
tmp_571_alt_flag_1 = pt.receive(any_compref, NULL, NULL, NULL);
if (tmp_571_alt_flag_1 == ALT_YES) {
current_location.update_lineno(4905);
/* BTS_Tests.ttcn, line 4905 */
goto tmp_571;
}
}
if (tmp_571_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(4906);
/* BTS_Tests.ttcn, line 4906 */
tmp_571_alt_flag_2 = T.timeout(NULL);
if (tmp_571_alt_flag_2 == ALT_YES) break;
}
if (tmp_571_default_flag == ALT_MAYBE) {
tmp_571_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_571_default_flag == ALT_YES || tmp_571_default_flag == ALT_BREAK) break;
else if (tmp_571_default_flag == ALT_REPEAT) goto tmp_571;
}
current_location.update_lineno(4891);
/* BTS_Tests.ttcn, line 4891 */
if (tmp_571_alt_flag_0 == ALT_NO && tmp_571_alt_flag_1 == ALT_NO && tmp_571_alt_flag_2 == ALT_NO && tmp_571_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 4891 and 4907.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
{
current_location.update_lineno(4909);
/* BTS_Tests.ttcn, line 4909 */
INTEGER i(0);
current_location.update_lineno(4909);
/* BTS_Tests.ttcn, line 4909 */
for ( ; ; ) {
current_location.update_lineno(4909);
/* BTS_Tests.ttcn, line 4909 */
if (!(i < 8)) break;
current_location.update_lineno(4910);
/* BTS_Tests.ttcn, line 4910 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Runtime::get_testcasename().log();
TTCN_Logger::log_event_str(": TC=");
i.log();
TTCN_Logger::log_event_str(" has #of SI=");
{
INTEGER tmp_578(const_cast< const SystemInformationVectorPerTc&>(si__per__tc)[i].size_of());
tmp_578.log();
}
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(4909);
/* BTS_Tests.ttcn, line 4909 */
{
INTEGER tmp_579;
++i;
}
}
}
current_location.update_lineno(4912);
/* BTS_Tests.ttcn, line 4912 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("si_per_tc=");
si__per__tc.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(4913);
/* BTS_Tests.ttcn, line 4913 */
return si__per__tc;
}

void f__TC__si__sched(const FLOAT& duration)
{
TTCN_Location current_location("BTS_Tests.ttcn", 4918, TTCN_Location::LOCATION_FUNCTION, "f_TC_si_sched");
current_location.update_lineno(4919);
/* BTS_Tests.ttcn, line 4919 */
SystemInformationVectorPerTc si__per__tc;
current_location.update_lineno(4920);
/* BTS_Tests.ttcn, line 4920 */
f__init__l1ctl();
current_location.update_lineno(4921);
/* BTS_Tests.ttcn, line 4921 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(4924);
/* BTS_Tests.ttcn, line 4924 */
si__per__tc = f__l1__sample__si(test__CT_component_L1CTL, duration);
current_location.update_lineno(4925);
/* BTS_Tests.ttcn, line 4925 */
f__validate__si__scheduling(test__CT_component_si__cfg, si__per__tc);
current_location.update_lineno(4927);
/* BTS_Tests.ttcn, line 4927 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__si__sched(const COMPONENT& component_reference, const FLOAT& duration)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_si_sched(");
duration.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_si_sched", text_buf);
duration.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__si__sched__default(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4930, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_default");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_default", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4931);
/* BTS_Tests.ttcn, line 4931 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4933);
/* BTS_Tests.ttcn, line 4933 */
f__TC__si__sched(f__TC__si__sched_duration_defval);
current_location.update_lineno(4934);
/* BTS_Tests.ttcn, line 4934 */
Misc__Helpers::f__shutdown(cs_4, 4934, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_default was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__si__sched__1(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4937, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_1");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_1", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4938);
/* BTS_Tests.ttcn, line 4938 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4939);
/* BTS_Tests.ttcn, line 4939 */
test__CT_component_si__cfg.si1__present() = TRUE;
current_location.update_lineno(4940);
/* BTS_Tests.ttcn, line 4940 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__1, os_6);
current_location.update_lineno(4941);
/* BTS_Tests.ttcn, line 4941 */
f__TC__si__sched(f__TC__si__sched_duration_defval);
current_location.update_lineno(4942);
/* BTS_Tests.ttcn, line 4942 */
Misc__Helpers::f__shutdown(cs_4, 4942, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_1 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__si__sched__2bis(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4945, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_2bis");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_2bis", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4946);
/* BTS_Tests.ttcn, line 4946 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4947);
/* BTS_Tests.ttcn, line 4947 */
test__CT_component_si__cfg.si2bis__present() = TRUE;
current_location.update_lineno(4948);
/* BTS_Tests.ttcn, line 4948 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2bis, os_7);
current_location.update_lineno(4949);
/* BTS_Tests.ttcn, line 4949 */
f__TC__si__sched(f__TC__si__sched_duration_defval);
current_location.update_lineno(4950);
/* BTS_Tests.ttcn, line 4950 */
Misc__Helpers::f__shutdown(cs_4, 4950, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_2bis was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__si__sched__2ter(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4953, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_2ter");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_2ter", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4954);
/* BTS_Tests.ttcn, line 4954 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4955);
/* BTS_Tests.ttcn, line 4955 */
test__CT_component_si__cfg.si2ter__present() = TRUE;
current_location.update_lineno(4956);
/* BTS_Tests.ttcn, line 4956 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2ter, os_8);
current_location.update_lineno(4957);
/* BTS_Tests.ttcn, line 4957 */
f__TC__si__sched(f__TC__si__sched_duration_defval);
current_location.update_lineno(4958);
/* BTS_Tests.ttcn, line 4958 */
Misc__Helpers::f__shutdown(cs_4, 4958, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_2ter was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__si__sched__2ter__2bis(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4961, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_2ter_2bis");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_2ter_2bis", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4962);
/* BTS_Tests.ttcn, line 4962 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4963);
/* BTS_Tests.ttcn, line 4963 */
test__CT_component_si__cfg.si2bis__present() = TRUE;
current_location.update_lineno(4964);
/* BTS_Tests.ttcn, line 4964 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2bis, os_7);
current_location.update_lineno(4965);
/* BTS_Tests.ttcn, line 4965 */
test__CT_component_si__cfg.si2ter__present() = TRUE;
current_location.update_lineno(4966);
/* BTS_Tests.ttcn, line 4966 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2ter, os_8);
current_location.update_lineno(4967);
/* BTS_Tests.ttcn, line 4967 */
f__TC__si__sched(f__TC__si__sched_duration_defval);
current_location.update_lineno(4968);
/* BTS_Tests.ttcn, line 4968 */
Misc__Helpers::f__shutdown(cs_4, 4968, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_2ter_2bis was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__si__sched__2quater(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4971, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_2quater");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_2quater", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4972);
/* BTS_Tests.ttcn, line 4972 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(4973);
/* BTS_Tests.ttcn, line 4973 */
test__CT_component_si__cfg.si2quater__present() = TRUE;
current_location.update_lineno(4974);
/* BTS_Tests.ttcn, line 4974 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2quater, os_9);
current_location.update_lineno(4975);
/* BTS_Tests.ttcn, line 4975 */
f__TC__si__sched(1.6e1);
current_location.update_lineno(4976);
/* BTS_Tests.ttcn, line 4976 */
Misc__Helpers::f__shutdown(cs_4, 4976, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_2quater was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__si__sched__13(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4979, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_13");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_13", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4982);
/* BTS_Tests.ttcn, line 4982 */
f__init__with__pcuif();
current_location.update_lineno(4983);
/* BTS_Tests.ttcn, line 4983 */
test__CT_component_si__cfg.si13__present() = TRUE;
current_location.update_lineno(4984);
/* BTS_Tests.ttcn, line 4984 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__13, os_10);
current_location.update_lineno(4985);
/* BTS_Tests.ttcn, line 4985 */
f__TC__si__sched(f__TC__si__sched_duration_defval);
current_location.update_lineno(4986);
/* BTS_Tests.ttcn, line 4986 */
Misc__Helpers::f__shutdown(cs_4, 4986, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_13 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__si__sched__13__2bis__2ter__2quater(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 4989, TTCN_Location::LOCATION_TESTCASE, "TC_si_sched_13_2bis_2ter_2quater");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_si_sched_13_2bis_2ter_2quater", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(4992);
/* BTS_Tests.ttcn, line 4992 */
f__init__with__pcuif();
current_location.update_lineno(4993);
/* BTS_Tests.ttcn, line 4993 */
test__CT_component_si__cfg.si2bis__present() = TRUE;
current_location.update_lineno(4994);
/* BTS_Tests.ttcn, line 4994 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2bis, os_7);
current_location.update_lineno(4995);
/* BTS_Tests.ttcn, line 4995 */
test__CT_component_si__cfg.si2ter__present() = TRUE;
current_location.update_lineno(4996);
/* BTS_Tests.ttcn, line 4996 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2ter, os_8);
current_location.update_lineno(4997);
/* BTS_Tests.ttcn, line 4997 */
test__CT_component_si__cfg.si2quater__present() = TRUE;
current_location.update_lineno(4998);
/* BTS_Tests.ttcn, line 4998 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__2quater, os_9);
current_location.update_lineno(4999);
/* BTS_Tests.ttcn, line 4999 */
test__CT_component_si__cfg.si13__present() = TRUE;
current_location.update_lineno(5000);
/* BTS_Tests.ttcn, line 5000 */
f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__13, os_10);
current_location.update_lineno(5001);
/* BTS_Tests.ttcn, line 5001 */
f__TC__si__sched(1.6e1);
current_location.update_lineno(5002);
/* BTS_Tests.ttcn, line 5002 */
Misc__Helpers::f__shutdown(cs_4, 5002, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_si_sched_13_2bis_2ter_2quater was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__bcch__info(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5006, TTCN_Location::LOCATION_TESTCASE, "TC_bcch_info");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_bcch_info", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5007);
/* BTS_Tests.ttcn, line 5007 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5012);
/* BTS_Tests.ttcn, line 5012 */
Misc__Helpers::f__shutdown(cs_4, 5012, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_bcch_info was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__exp__err__rep(const RSL__Types::RSL__Cause_template& cause)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5019, TTCN_Location::LOCATION_FUNCTION, "f_exp_err_rep");
current_location.update_lineno(5020);
/* BTS_Tests.ttcn, line 5020 */
TIMER T("T", 5.0);
current_location.update_lineno(5021);
/* BTS_Tests.ttcn, line 5021 */
T.start();
current_location.update_lineno(5022);
/* BTS_Tests.ttcn, line 5022 */
{
tmp_592:
alt_status tmp_592_alt_flag_0 = ALT_MAYBE;
alt_status tmp_592_alt_flag_1 = ALT_MAYBE;
alt_status tmp_592_alt_flag_2 = ALT_MAYBE;
alt_status tmp_592_alt_flag_3 = ALT_MAYBE;
alt_status tmp_592_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_592_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5023);
/* BTS_Tests.ttcn, line 5023 */
tmp_592_alt_flag_0 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__ERROR__REPORT(cause), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_592_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5024);
/* BTS_Tests.ttcn, line 5024 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_592_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5026);
/* BTS_Tests.ttcn, line 5026 */
tmp_592_alt_flag_1 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__ERROR__REPORT(RSL__Types::RSL__Cause_template(ANY_VALUE)), IPA__Emulation::tr__ASP__RSL__UD_sid_defval, IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_592_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5027);
/* BTS_Tests.ttcn, line 5027 */
Misc__Helpers::f__shutdown(cs_4, 5027, FAIL, cs_83);
break;
}
}
if (tmp_592_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5029);
/* BTS_Tests.ttcn, line 5029 */
tmp_592_alt_flag_2 = test__CT_component_RSL__CCHAN.receive(any_compref, NULL, NULL, NULL);
if (tmp_592_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5030);
/* BTS_Tests.ttcn, line 5030 */
goto tmp_592;
}
}
if (tmp_592_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(5032);
/* BTS_Tests.ttcn, line 5032 */
tmp_592_alt_flag_3 = T.timeout(NULL);
if (tmp_592_alt_flag_3 == ALT_YES) {
current_location.update_lineno(5033);
/* BTS_Tests.ttcn, line 5033 */
Misc__Helpers::f__shutdown(cs_4, 5033, FAIL, cs_84);
break;
}
}
if (tmp_592_default_flag == ALT_MAYBE) {
tmp_592_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_592_default_flag == ALT_YES || tmp_592_default_flag == ALT_BREAK) break;
else if (tmp_592_default_flag == ALT_REPEAT) goto tmp_592;
}
current_location.update_lineno(5022);
/* BTS_Tests.ttcn, line 5022 */
if (tmp_592_alt_flag_0 == ALT_NO && tmp_592_alt_flag_1 == ALT_NO && tmp_592_alt_flag_2 == ALT_NO && tmp_592_alt_flag_3 == ALT_NO && tmp_592_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5022 and 5035.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__exp__err__rep(const COMPONENT& component_reference, const RSL__Types::RSL__Cause_template& cause)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_exp_err_rep(");
cause.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_exp_err_rep", text_buf);
cause.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rsl__protocol__error(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5039, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_protocol_error");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_protocol_error", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5040);
/* BTS_Tests.ttcn, line 5040 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5041);
/* BTS_Tests.ttcn, line 5041 */
RSL__Types::RSL__Message rsl(RSL__Types::ts__RSL__BCCH__INFO(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__1, os_2).valueof());
current_location.update_lineno(5042);
/* BTS_Tests.ttcn, line 5042 */
rsl.ies() = OMIT_VALUE;
current_location.update_lineno(5043);
/* BTS_Tests.ttcn, line 5043 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::RSL__Message_template(rsl), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(5045);
/* BTS_Tests.ttcn, line 5045 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__PROTO));
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_protocol_error was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rsl__mand__ie__error(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5049, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_mand_ie_error");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_mand_ie_error", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5050);
/* BTS_Tests.ttcn, line 5050 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5052);
/* BTS_Tests.ttcn, line 5052 */
RSL__Types::RSL__Message rsl(RSL__Types::ts__RSL__BCCH__INFO(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__1, os_2).valueof());
current_location.update_lineno(5053);
/* BTS_Tests.ttcn, line 5053 */
{
OPTIONAL< RSL__Types::RSL__IE__List > tmp_594;
tmp_594().set_size(1);
tmp_594()[0] = const_cast< const RSL__Types::RSL__Message&>(rsl).ies()()[0];
{
RSL__Types::RSL__IE__List& tmp_595 = rsl.ies(); /* 7388 */
tmp_595 = tmp_594;
}
}
current_location.update_lineno(5054);
/* BTS_Tests.ttcn, line 5054 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::RSL__Message_template(rsl), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(5056);
/* BTS_Tests.ttcn, line 5056 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__MAND__IE__ERROR));
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_mand_ie_error was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rsl__ie__content__error(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5060, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_ie_content_error");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_ie_content_error", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5061);
/* BTS_Tests.ttcn, line 5061 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5062);
/* BTS_Tests.ttcn, line 5062 */
RSL__Types::RSL__Message rsl(RSL__Types::ts__RSL__BCCH__INFO(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__1, os_2).valueof());
current_location.update_lineno(5063);
/* BTS_Tests.ttcn, line 5063 */
rsl.ies()()[1].body().sysinfo__type() = RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__5;
current_location.update_lineno(5064);
/* BTS_Tests.ttcn, line 5064 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::RSL__Message_template(rsl), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(5066);
/* BTS_Tests.ttcn, line 5066 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__IE__CONTENT));
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_ie_content_error was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__chan__act__wrong__mdisc(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5070, TTCN_Location::LOCATION_FUNCTION, "f_TC_chan_act_wrong_mdisc");
current_location.update_lineno(5071);
/* BTS_Tests.ttcn, line 5071 */
RSL__Types::RSL__Message_template rsl(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval));
current_location.update_lineno(5072);
/* BTS_Tests.ttcn, line 5072 */
rsl.msg__disc() = RSL__Types::ts__RSL__MsgDisc(RSL__Types::RSL__MessageGroup::RSL__MDISC__RESERVED, FALSE);
current_location.update_lineno(5073);
/* BTS_Tests.ttcn, line 5073 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(rsl, FALSE, NULL);
current_location.update_lineno(5074);
/* BTS_Tests.ttcn, line 5074 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__chan__act__wrong__mdisc(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_act_wrong_mdisc(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_chan_act_wrong_mdisc", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__err__rep__wrong__mdisc(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5076, TTCN_Location::LOCATION_TESTCASE, "TC_err_rep_wrong_mdisc");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_err_rep_wrong_mdisc", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5077);
/* BTS_Tests.ttcn, line 5077 */
COMPONENT vc__conn;
current_location.update_lineno(5078);
/* BTS_Tests.ttcn, line 5078 */
ConnHdlrPars pars(t__Pars(GSM__Types::ts__RslChanNr__SDCCH4(0, 0), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5080);
/* BTS_Tests.ttcn, line 5080 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5082);
/* BTS_Tests.ttcn, line 5082 */
vc__conn = f__start__handler(&f__TC__chan__act__wrong__mdisc, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5083);
/* BTS_Tests.ttcn, line 5083 */
{
tmp_599:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_599;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_599;
}
current_location.update_lineno(5083);
/* BTS_Tests.ttcn, line 5083 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5083.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5084);
/* BTS_Tests.ttcn, line 5084 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__MSG__DISCR));
current_location.update_lineno(5086);
/* BTS_Tests.ttcn, line 5086 */
Misc__Helpers::f__shutdown(cs_4, 5086, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_err_rep_wrong_mdisc was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__wrong__msg__type__dchan(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5090, TTCN_Location::LOCATION_FUNCTION, "f_TC_wrong_msg_type_dchan");
current_location.update_lineno(5091);
/* BTS_Tests.ttcn, line 5091 */
RSL__Types::RSL__Message_template rsl__tx;
current_location.update_lineno(5092);
/* BTS_Tests.ttcn, line 5092 */
rsl__tx = RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval);
current_location.update_lineno(5093);
/* BTS_Tests.ttcn, line 5093 */
rsl__tx.msg__type() = RSL__Types::RSL__MessageType::RSL__MT__NOT__CMD;
current_location.update_lineno(5094);
/* BTS_Tests.ttcn, line 5094 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(rsl__tx, FALSE, NULL);
current_location.update_lineno(5095);
/* BTS_Tests.ttcn, line 5095 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__wrong__msg__type__dchan(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_wrong_msg_type_dchan(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_wrong_msg_type_dchan", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__wrong__msg__type__rll(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5097, TTCN_Location::LOCATION_FUNCTION, "f_TC_wrong_msg_type_rll");
current_location.update_lineno(5098);
/* BTS_Tests.ttcn, line 5098 */
RSL__Types::RSL__Message_template rsl__tx;
current_location.update_lineno(5100);
/* BTS_Tests.ttcn, line 5100 */
f__rsl__chan__act(RSL__Types::RSL__IE__ChannelMode(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), f__rsl__chan__act_encr__enable_defval, f__rsl__chan__act_more__ies_defval, f__rsl__chan__act_act__type_defval);
current_location.update_lineno(5102);
/* BTS_Tests.ttcn, line 5102 */
rsl__tx = RSL__Types::ts__RSL__UNITDATA__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::ts__RslLinkID__DCCH(0), os_11);
current_location.update_lineno(5103);
/* BTS_Tests.ttcn, line 5103 */
rsl__tx.msg__type() = RSL__Types::RSL__MessageType::RSL__MT__CBCH__LOAD__IND;
current_location.update_lineno(5104);
/* BTS_Tests.ttcn, line 5104 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(rsl__tx, FALSE, NULL);
current_location.update_lineno(5105);
/* BTS_Tests.ttcn, line 5105 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__wrong__msg__type__rll(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_wrong_msg_type_rll(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_wrong_msg_type_rll", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__err__rep__wrong__msg__type(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5107, TTCN_Location::LOCATION_TESTCASE, "TC_err_rep_wrong_msg_type");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_err_rep_wrong_msg_type", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5108);
/* BTS_Tests.ttcn, line 5108 */
COMPONENT vc__conn;
current_location.update_lineno(5109);
/* BTS_Tests.ttcn, line 5109 */
ConnHdlrPars pars(t__Pars(GSM__Types::ts__RslChanNr__SDCCH4(0, 0), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5110);
/* BTS_Tests.ttcn, line 5110 */
RSL__Types::RSL__Message_template rsl__tx;
current_location.update_lineno(5112);
/* BTS_Tests.ttcn, line 5112 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5115);
/* BTS_Tests.ttcn, line 5115 */
test__CT_component_RSL__CCHAN.clear();
current_location.update_lineno(5116);
/* BTS_Tests.ttcn, line 5116 */
rsl__tx = RSL__Types::ts__RSL__BCCH__INFO(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__1, os_2).valueof();
current_location.update_lineno(5117);
/* BTS_Tests.ttcn, line 5117 */
rsl__tx.msg__type() = RSL__Types::RSL__MessageType::RSL__MT__LOCATION__INFO;
current_location.update_lineno(5118);
/* BTS_Tests.ttcn, line 5118 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(rsl__tx, IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(5119);
/* BTS_Tests.ttcn, line 5119 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__MSG__TYPE));
current_location.update_lineno(5122);
/* BTS_Tests.ttcn, line 5122 */
test__CT_component_RSL__CCHAN.clear();
current_location.update_lineno(5123);
/* BTS_Tests.ttcn, line 5123 */
rsl__tx = RSL__Types::ts__RSL__SACCH__FILL(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__5, os_2);
current_location.update_lineno(5124);
/* BTS_Tests.ttcn, line 5124 */
rsl__tx.msg__type() = RSL__Types::RSL__MessageType::RSL__MT__UNIT__DATA__IND;
current_location.update_lineno(5125);
/* BTS_Tests.ttcn, line 5125 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(rsl__tx, IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(5126);
/* BTS_Tests.ttcn, line 5126 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__MSG__TYPE));
current_location.update_lineno(5129);
/* BTS_Tests.ttcn, line 5129 */
test__CT_component_RSL__CCHAN.clear();
current_location.update_lineno(5130);
/* BTS_Tests.ttcn, line 5130 */
vc__conn = f__start__handler(&f__TC__wrong__msg__type__dchan, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5131);
/* BTS_Tests.ttcn, line 5131 */
{
tmp_609:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_609;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_609;
}
current_location.update_lineno(5131);
/* BTS_Tests.ttcn, line 5131 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5131.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5132);
/* BTS_Tests.ttcn, line 5132 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__MSG__TYPE));
current_location.update_lineno(5135);
/* BTS_Tests.ttcn, line 5135 */
test__CT_component_RSL__CCHAN.clear();
current_location.update_lineno(5136);
/* BTS_Tests.ttcn, line 5136 */
vc__conn = f__start__handler(&f__TC__wrong__msg__type__rll, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5137);
/* BTS_Tests.ttcn, line 5137 */
{
tmp_611:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_611;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_611;
}
current_location.update_lineno(5137);
/* BTS_Tests.ttcn, line 5137 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5137.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5138);
/* BTS_Tests.ttcn, line 5138 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__MSG__TYPE));
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_err_rep_wrong_msg_type was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__err__rep__wrong__sequence(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5142, TTCN_Location::LOCATION_FUNCTION, "f_TC_err_rep_wrong_sequence");
current_location.update_lineno(5143);
/* BTS_Tests.ttcn, line 5143 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__UNITDATA__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::ts__RslLinkID__DCCH(0), os_11), FALSE, NULL);
current_location.update_lineno(5144);
/* BTS_Tests.ttcn, line 5144 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__err__rep__wrong__sequence(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_err_rep_wrong_sequence(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_err_rep_wrong_sequence", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__err__rep__wrong__sequence(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5146, TTCN_Location::LOCATION_TESTCASE, "TC_err_rep_wrong_sequence");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_err_rep_wrong_sequence", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5147);
/* BTS_Tests.ttcn, line 5147 */
COMPONENT vc__conn;
current_location.update_lineno(5148);
/* BTS_Tests.ttcn, line 5148 */
ConnHdlrPars pars(t__Pars(GSM__Types::ts__RslChanNr__SDCCH4(0, 0), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5150);
/* BTS_Tests.ttcn, line 5150 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5152);
/* BTS_Tests.ttcn, line 5152 */
test__CT_component_RSL__CCHAN.clear();
current_location.update_lineno(5153);
/* BTS_Tests.ttcn, line 5153 */
vc__conn = f__start__handler(&f__TC__err__rep__wrong__sequence, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5154);
/* BTS_Tests.ttcn, line 5154 */
{
tmp_613:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_613;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_613;
}
current_location.update_lineno(5154);
/* BTS_Tests.ttcn, line 5154 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5154.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5155);
/* BTS_Tests.ttcn, line 5155 */
f__exp__err__rep(RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__MSG__SEQ));
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_err_rep_wrong_sequence was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__ipa__dlcx__not__active(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5163, TTCN_Location::LOCATION_FUNCTION, "f_TC_ipa_dlcx_not_active");
current_location.update_lineno(5164);
/* BTS_Tests.ttcn, line 5164 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__DLCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), 0), RSL__Types::tr__RSL__IPA__DLCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), RSL__Types::RSL__IE__IPA__ConnectionStats_template(ANY_VALUE)), cs_85, f__rsl__transceive_ignore__other_defval);
}

void start_f__TC__ipa__dlcx__not__active(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_dlcx_not_active(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ipa_dlcx_not_active", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ipa__dlcx__not__active(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5167, TTCN_Location::LOCATION_TESTCASE, "TC_ipa_dlcx_not_active");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ipa_dlcx_not_active", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5168);
/* BTS_Tests.ttcn, line 5168 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5169);
/* BTS_Tests.ttcn, line 5169 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5170);
/* BTS_Tests.ttcn, line 5170 */
COMPONENT vc__conn(f__start__handler(&f__TC__ipa__dlcx__not__active, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval));
current_location.update_lineno(5171);
/* BTS_Tests.ttcn, line 5171 */
{
tmp_614:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_614;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_614;
}
current_location.update_lineno(5171);
/* BTS_Tests.ttcn, line 5171 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5171.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ipa_dlcx_not_active was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__ipa__crcx__twice__not__active(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5175, TTCN_Location::LOCATION_FUNCTION, "f_TC_ipa_crcx_twice_not_active");
current_location.update_lineno(5176);
/* BTS_Tests.ttcn, line 5176 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__CRCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__IPA__CRCX_remote__ip_defval, RSL__Types::ts__RSL__IPA__CRCX_remote__port_defval, RSL__Types::ts__RSL__IPA__CRCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__CRCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), RSL__Types::tr__RSL__IPA__CRCX__ACK_osmux__cid_defval), cs_42, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(5178);
/* BTS_Tests.ttcn, line 5178 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__CRCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__IPA__CRCX_remote__ip_defval, RSL__Types::ts__RSL__IPA__CRCX_remote__port_defval, RSL__Types::ts__RSL__IPA__CRCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__CRCX__NACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__Cause_template(RSL__Types::RSL__Cause::RSL__ERR__RES__UNAVAIL)), cs_86, f__rsl__transceive_ignore__other_defval);
}

void start_f__TC__ipa__crcx__twice__not__active(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_twice_not_active(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ipa_crcx_twice_not_active", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ipa__crcx__twice__not__active(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5181, TTCN_Location::LOCATION_TESTCASE, "TC_ipa_crcx_twice_not_active");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ipa_crcx_twice_not_active", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5182);
/* BTS_Tests.ttcn, line 5182 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5183);
/* BTS_Tests.ttcn, line 5183 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5184);
/* BTS_Tests.ttcn, line 5184 */
COMPONENT vc__conn(f__start__handler(&f__TC__ipa__crcx__twice__not__active, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval));
current_location.update_lineno(5185);
/* BTS_Tests.ttcn, line 5185 */
{
tmp_615:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_615;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_615;
}
current_location.update_lineno(5185);
/* BTS_Tests.ttcn, line 5185 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5185.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ipa_crcx_twice_not_active was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__ipa__crcx__mdcx__dlcx__not__active(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5189, TTCN_Location::LOCATION_FUNCTION, "f_TC_ipa_crcx_mdcx_dlcx_not_active");
current_location.update_lineno(5190);
/* BTS_Tests.ttcn, line 5190 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__CRCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__IPA__CRCX_remote__ip_defval, RSL__Types::ts__RSL__IPA__CRCX_remote__port_defval, RSL__Types::ts__RSL__IPA__CRCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__CRCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), RSL__Types::tr__RSL__IPA__CRCX__ACK_osmux__cid_defval), cs_42, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(5192);
/* BTS_Tests.ttcn, line 5192 */
OCTETSTRING remote__ip(Osmocom__Types::f__rnd__octstring(4));
current_location.update_lineno(5193);
/* BTS_Tests.ttcn, line 5193 */
INTEGER remote__port(Osmocom__Types::f__rnd__int(Osmocom__Types::c__UINT16__MAX));
current_location.update_lineno(5194);
/* BTS_Tests.ttcn, line 5194 */
INTEGER rtp__pt2(Osmocom__Types::f__rnd__int(127));
current_location.update_lineno(5195);
/* BTS_Tests.ttcn, line 5195 */
INTEGER fake__conn__id(23);
current_location.update_lineno(5196);
/* BTS_Tests.ttcn, line 5196 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__MDCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), fake__conn__id, remote__ip, remote__port, rtp__pt2, RSL__Types::ts__RSL__IPA__MDCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__MDCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), INTEGER_template(rtp__pt2), RSL__Types::tr__RSL__IPA__MDCX__ACK_osmux__cid_defval), cs_43, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(5199);
/* BTS_Tests.ttcn, line 5199 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__DLCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), fake__conn__id), RSL__Types::tr__RSL__IPA__DLCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), RSL__Types::RSL__IE__IPA__ConnectionStats_template(ANY_VALUE)), cs_85, f__rsl__transceive_ignore__other_defval);
}

void start_f__TC__ipa__crcx__mdcx__dlcx__not__active(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_mdcx_dlcx_not_active(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ipa_crcx_mdcx_dlcx_not_active", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ipa__crcx__mdcx__dlcx__not__active(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5202, TTCN_Location::LOCATION_TESTCASE, "TC_ipa_crcx_mdcx_dlcx_not_active");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ipa_crcx_mdcx_dlcx_not_active", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5203);
/* BTS_Tests.ttcn, line 5203 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5204);
/* BTS_Tests.ttcn, line 5204 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5205);
/* BTS_Tests.ttcn, line 5205 */
COMPONENT vc__conn(f__start__handler(&f__TC__ipa__crcx__mdcx__dlcx__not__active, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval));
current_location.update_lineno(5206);
/* BTS_Tests.ttcn, line 5206 */
{
tmp_616:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_616;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_616;
}
current_location.update_lineno(5206);
/* BTS_Tests.ttcn, line 5206 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5206.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ipa_crcx_mdcx_dlcx_not_active was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__ipa__crcx__mdcx__mdcx__dlcx__not__active(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5210, TTCN_Location::LOCATION_FUNCTION, "f_TC_ipa_crcx_mdcx_mdcx_dlcx_not_active");
current_location.update_lineno(5211);
/* BTS_Tests.ttcn, line 5211 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__CRCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__IPA__CRCX_remote__ip_defval, RSL__Types::ts__RSL__IPA__CRCX_remote__port_defval, RSL__Types::ts__RSL__IPA__CRCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__CRCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), RSL__Types::tr__RSL__IPA__CRCX__ACK_osmux__cid_defval), cs_42, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(5213);
/* BTS_Tests.ttcn, line 5213 */
OCTETSTRING remote__ip(Osmocom__Types::f__rnd__octstring(4));
current_location.update_lineno(5214);
/* BTS_Tests.ttcn, line 5214 */
INTEGER remote__port(Osmocom__Types::f__rnd__int(Osmocom__Types::c__UINT16__MAX));
current_location.update_lineno(5215);
/* BTS_Tests.ttcn, line 5215 */
INTEGER rtp__pt2(Osmocom__Types::f__rnd__int(127));
current_location.update_lineno(5216);
/* BTS_Tests.ttcn, line 5216 */
INTEGER fake__conn__id(23);
current_location.update_lineno(5217);
/* BTS_Tests.ttcn, line 5217 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__MDCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), fake__conn__id, remote__ip, remote__port, rtp__pt2, RSL__Types::ts__RSL__IPA__MDCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__MDCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), INTEGER_template(rtp__pt2), RSL__Types::tr__RSL__IPA__MDCX__ACK_osmux__cid_defval), cs_43, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(5221);
/* BTS_Tests.ttcn, line 5221 */
remote__ip = Osmocom__Types::f__rnd__octstring(4);
current_location.update_lineno(5222);
/* BTS_Tests.ttcn, line 5222 */
remote__port = Osmocom__Types::f__rnd__int(Osmocom__Types::c__UINT16__MAX);
current_location.update_lineno(5223);
/* BTS_Tests.ttcn, line 5223 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__MDCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), fake__conn__id, remote__ip, remote__port, rtp__pt2, RSL__Types::ts__RSL__IPA__MDCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__MDCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), INTEGER_template(rtp__pt2), RSL__Types::tr__RSL__IPA__MDCX__ACK_osmux__cid_defval), cs_43, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(5226);
/* BTS_Tests.ttcn, line 5226 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__DLCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), fake__conn__id), RSL__Types::tr__RSL__IPA__DLCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), RSL__Types::RSL__IE__IPA__ConnectionStats_template(ANY_VALUE)), cs_85, f__rsl__transceive_ignore__other_defval);
}

void start_f__TC__ipa__crcx__mdcx__mdcx__dlcx__not__active(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_mdcx_mdcx_dlcx_not_active(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ipa_crcx_mdcx_mdcx_dlcx_not_active", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ipa__crcx__mdcx__mdcx__dlcx__not__active(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5229, TTCN_Location::LOCATION_TESTCASE, "TC_ipa_crcx_mdcx_mdcx_dlcx_not_active");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ipa_crcx_mdcx_mdcx_dlcx_not_active", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5230);
/* BTS_Tests.ttcn, line 5230 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5231);
/* BTS_Tests.ttcn, line 5231 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5232);
/* BTS_Tests.ttcn, line 5232 */
COMPONENT vc__conn(f__start__handler(&f__TC__ipa__crcx__mdcx__mdcx__dlcx__not__active, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval));
current_location.update_lineno(5233);
/* BTS_Tests.ttcn, line 5233 */
{
tmp_619:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_619;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_619;
}
current_location.update_lineno(5233);
/* BTS_Tests.ttcn, line 5233 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5233.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ipa_crcx_mdcx_mdcx_dlcx_not_active was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__ipa__crcx__sdcch__not__active(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5237, TTCN_Location::LOCATION_FUNCTION, "f_TC_ipa_crcx_sdcch_not_active");
current_location.update_lineno(5238);
/* BTS_Tests.ttcn, line 5238 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__CRCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__IPA__CRCX_remote__ip_defval, RSL__Types::ts__RSL__IPA__CRCX_remote__port_defval, RSL__Types::ts__RSL__IPA__CRCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__CRCX__NACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__Cause_template(ANY_VALUE)), cs_86, f__rsl__transceive_ignore__other_defval);
}

void start_f__TC__ipa__crcx__sdcch__not__active(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_sdcch_not_active(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ipa_crcx_sdcch_not_active", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ipa__crcx__sdcch__not__active(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5241, TTCN_Location::LOCATION_TESTCASE, "TC_ipa_crcx_sdcch_not_active");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ipa_crcx_sdcch_not_active", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5242);
/* BTS_Tests.ttcn, line 5242 */
ConnHdlrPars pars;
current_location.update_lineno(5243);
/* BTS_Tests.ttcn, line 5243 */
COMPONENT vc__conn;
current_location.update_lineno(5244);
/* BTS_Tests.ttcn, line 5244 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5246);
/* BTS_Tests.ttcn, line 5246 */
pars = t__Pars(GSM__Types::t__RslChanNr__SDCCH4(INTEGER_template(0), INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(5247);
/* BTS_Tests.ttcn, line 5247 */
vc__conn = f__start__handler(&f__TC__ipa__crcx__sdcch__not__active, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5248);
/* BTS_Tests.ttcn, line 5248 */
{
tmp_622:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_622;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_622;
}
current_location.update_lineno(5248);
/* BTS_Tests.ttcn, line 5248 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5248.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5250);
/* BTS_Tests.ttcn, line 5250 */
pars = t__Pars(GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(6), INTEGER_template(5)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(5251);
/* BTS_Tests.ttcn, line 5251 */
vc__conn = f__start__handler(&f__TC__ipa__crcx__sdcch__not__active, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5252);
/* BTS_Tests.ttcn, line 5252 */
{
tmp_625:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_625;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_625;
}
current_location.update_lineno(5252);
/* BTS_Tests.ttcn, line 5252 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5252.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ipa_crcx_sdcch_not_active was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__ipa__crcx__ack__addr(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 5256, TTCN_Location::LOCATION_FUNCTION, "f_TC_ipa_crcx_ack_addr");
current_location.update_lineno(5257);
/* BTS_Tests.ttcn, line 5257 */
OCTETSTRING bind__ip(Native__Functions::f__inet__addr(cs_87));
current_location.update_lineno(5258);
/* BTS_Tests.ttcn, line 5258 */
INTEGER bind__port(16811);
current_location.update_lineno(5259);
/* BTS_Tests.ttcn, line 5259 */
RSL__Types::RSL__Message crcx__ack;
current_location.update_lineno(5261);
/* BTS_Tests.ttcn, line 5261 */
crcx__ack = f__rsl__transceive__ret(RSL__Types::ts__RSL__IPA__CRCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), OCTETSTRING_template(bind__ip), INTEGER_template(bind__port), RSL__Types::ts__RSL__IPA__CRCX_osmux__cid_defval), RSL__Types::tr__RSL__IPA__CRCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), RSL__Types::tr__RSL__IPA__CRCX__ACK_osmux__cid_defval), cs_42, f__rsl__transceive__ret_ignore__other_defval);
current_location.update_lineno(5264);
/* BTS_Tests.ttcn, line 5264 */
CHARSTRING bts__bind__ip(Native__Functions::f__inet__ntoa(const_cast< const RSL__Types::RSL__Message&>(crcx__ack).ies()()[2].body().ipa__local__ip()));
current_location.update_lineno(5265);
/* BTS_Tests.ttcn, line 5265 */
if (CHARSTRING_template(cs_88).match(bts__bind__ip)) {
current_location.update_lineno(5266);
/* BTS_Tests.ttcn, line 5266 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("CRCX ACK indicates nonsense addr "),bts__bind__ip.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(5269);
/* BTS_Tests.ttcn, line 5269 */
INTEGER conn__id(const_cast< const RSL__Types::RSL__Message&>(crcx__ack).ies()()[1].body().ipa__conn__id());
current_location.update_lineno(5270);
/* BTS_Tests.ttcn, line 5270 */
f__rsl__transceive(RSL__Types::ts__RSL__IPA__DLCX(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), conn__id), RSL__Types::tr__RSL__IPA__DLCX__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), INTEGER_template(ANY_VALUE), RSL__Types::RSL__IE__IPA__ConnectionStats_template(ANY_VALUE)), cs_85, f__rsl__transceive_ignore__other_defval);
}

void start_f__TC__ipa__crcx__ack__addr(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_ack_addr(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ipa_crcx_ack_addr", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ipa__crcx__ack__addr(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5274, TTCN_Location::LOCATION_TESTCASE, "TC_ipa_crcx_ack_addr");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ipa_crcx_ack_addr", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5275);
/* BTS_Tests.ttcn, line 5275 */
ConnHdlrPars pars;
current_location.update_lineno(5276);
/* BTS_Tests.ttcn, line 5276 */
COMPONENT vc__conn;
current_location.update_lineno(5277);
/* BTS_Tests.ttcn, line 5277 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5279);
/* BTS_Tests.ttcn, line 5279 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(5280);
/* BTS_Tests.ttcn, line 5280 */
vc__conn = f__start__handler(&f__TC__ipa__crcx__ack__addr, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5281);
/* BTS_Tests.ttcn, line 5281 */
{
tmp_629:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_629;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_629;
}
current_location.update_lineno(5281);
/* BTS_Tests.ttcn, line 5281 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5281.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5283);
/* BTS_Tests.ttcn, line 5283 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(5284);
/* BTS_Tests.ttcn, line 5284 */
vc__conn = f__start__handler(&f__TC__ipa__crcx__ack__addr, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(5285);
/* BTS_Tests.ttcn, line 5285 */
{
tmp_632:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_632;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_632;
}
current_location.update_lineno(5285);
/* BTS_Tests.ttcn, line 5285 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 5285.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ipa_crcx_ack_addr was stopped.");
}
return TTCN_Runtime::end_testcase();
}

alt_status as__pcuif__msg_instance(PCUIF__Types::PCUIF__Message& msg, const PCUIF__Types::PCUIF__Message_template& tr__msg, boolean first_alt_run)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5294, TTCN_Location::LOCATION_ALTSTEP, "as_pcuif_msg");
current_location.update_lineno(5297);
/* BTS_Tests.ttcn, line 5297 */
PCUIF__CodecPort::PCUIF__send__data sd;
alt_status ret_val = ALT_NO;
current_location.update_lineno(5299);
/* BTS_Tests.ttcn, line 5299 */
switch (test__CT_component_PCU.receive(PCUIF__CodecPort::t__SD__PCUIF(test__CT_component_g__pcu__conn__id, tr__msg), &(sd), any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(5300);
/* BTS_Tests.ttcn, line 5300 */
msg = const_cast< const PCUIF__CodecPort::PCUIF__send__data&>(sd).data();
}
return ALT_YES;
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
return ret_val;
}

void as__pcuif__msg(boolean nodefault_modifier, PCUIF__Types::PCUIF__Message& msg, const PCUIF__Types::PCUIF__Message_template& tr__msg)
{
altstep_begin:
boolean block_flag = FALSE;
alt_status altstep_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
for ( ; ; ) {
TTCN_Snapshot::take_new(block_flag);
if (altstep_flag != ALT_NO) {
altstep_flag = as__pcuif__msg_instance(msg, tr__msg, !block_flag);
if (altstep_flag == ALT_YES || altstep_flag == ALT_BREAK) return;
else if (altstep_flag == ALT_REPEAT) goto altstep_begin;
}
if (!nodefault_modifier && default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(!block_flag);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) return;
else if (default_flag == ALT_REPEAT) goto altstep_begin;
}
if (altstep_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in altstep as_pcuif_msg.");
else block_flag = TRUE;
}
}

Default_Base *activate_as__pcuif__msg(PCUIF__Types::PCUIF__Message& msg, const PCUIF__Types::PCUIF__Message_template& tr__msg)
{
return new as__pcuif__msg_Default(msg, tr__msg);
}

alt_status as__l1ctl__dl__block__ind_instance(L1CTL__Types::L1ctlGprsDlBlockInd& block__ind, const INTEGER_template& fn, const INTEGER_template& tn, const INTEGER_template& usf, const OCTETSTRING_template& data, boolean first_alt_run)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5305, TTCN_Location::LOCATION_ALTSTEP, "as_l1ctl_dl_block_ind");
current_location.update_lineno(5311);
/* BTS_Tests.ttcn, line 5311 */
L1CTL__Types::L1ctlMessage l1__dl;
alt_status ret_val = ALT_NO;
current_location.update_lineno(5313);
/* BTS_Tests.ttcn, line 5313 */
switch (test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND(fn, tn, usf, data, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ber10k_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ci__cb_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_rx__level_defval), &(l1__dl), any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(5314);
/* BTS_Tests.ttcn, line 5314 */
block__ind = const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().dl__block__ind();
}
return ALT_YES;
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
return ret_val;
}

void as__l1ctl__dl__block__ind(boolean nodefault_modifier, L1CTL__Types::L1ctlGprsDlBlockInd& block__ind, const INTEGER_template& fn, const INTEGER_template& tn, const INTEGER_template& usf, const OCTETSTRING_template& data)
{
altstep_begin:
boolean block_flag = FALSE;
alt_status altstep_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
for ( ; ; ) {
TTCN_Snapshot::take_new(block_flag);
if (altstep_flag != ALT_NO) {
altstep_flag = as__l1ctl__dl__block__ind_instance(block__ind, fn, tn, usf, data, !block_flag);
if (altstep_flag == ALT_YES || altstep_flag == ALT_BREAK) return;
else if (altstep_flag == ALT_REPEAT) goto altstep_begin;
}
if (!nodefault_modifier && default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(!block_flag);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) return;
else if (default_flag == ALT_REPEAT) goto altstep_begin;
}
if (altstep_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in altstep as_l1ctl_dl_block_ind.");
else block_flag = TRUE;
}
}

Default_Base *activate_as__l1ctl__dl__block__ind(L1CTL__Types::L1ctlGprsDlBlockInd& block__ind, const INTEGER_template& fn, const INTEGER_template& tn, const INTEGER_template& usf, const OCTETSTRING_template& data)
{
return new as__l1ctl__dl__block__ind_Default(block__ind, fn, tn, usf, data);
}

TdmaFnTn f__TC__pcu__tx__ul__block__req(const OCTETSTRING& data, const INTEGER_template& tn, const INTEGER_template& usf)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5325, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_tx_ul_block_req");
current_location.update_lineno(5329);
/* BTS_Tests.ttcn, line 5329 */
L1CTL__Types::L1ctlGprsDlBlockInd block__ind;
current_location.update_lineno(5330);
/* BTS_Tests.ttcn, line 5330 */
TIMER T("T");
current_location.update_lineno(5332);
/* BTS_Tests.ttcn, line 5332 */
T.start(1.0);
current_location.update_lineno(5333);
/* BTS_Tests.ttcn, line 5333 */
{
tmp_635:
alt_status tmp_635_alt_flag_0 = ALT_MAYBE;
alt_status tmp_635_alt_flag_1 = ALT_MAYBE;
alt_status tmp_635_alt_flag_2 = ALT_MAYBE;
alt_status tmp_635_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_635_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5334);
/* BTS_Tests.ttcn, line 5334 */
{
L1CTL__Types::L1ctlGprsDlBlockInd tmp_636;
tmp_635_alt_flag_0 = as__l1ctl__dl__block__ind_instance(tmp_636, as__l1ctl__dl__block__ind_fn_defval, tn, usf, as__l1ctl__dl__block__ind_data_defval, first_run);
if (tmp_636.is_bound()) block__ind = tmp_636;
}
if (tmp_635_alt_flag_0 == ALT_REPEAT) goto tmp_635;
if (tmp_635_alt_flag_0 == ALT_BREAK) break;
if (tmp_635_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5335);
/* BTS_Tests.ttcn, line 5335 */
INTEGER fn(const_cast< const L1CTL__Types::L1ctlGprsDlBlockInd&>(block__ind).hdr().fn());
current_location.update_lineno(5338);
/* BTS_Tests.ttcn, line 5338 */
if ((mod(fn, 104) == 12)) {
current_location.update_lineno(5339);
/* BTS_Tests.ttcn, line 5339 */
goto tmp_635;
}
current_location.update_lineno(5345);
/* BTS_Tests.ttcn, line 5345 */
if ((mod(fn, 13) == 8)) {
current_location.update_lineno(5346);
/* BTS_Tests.ttcn, line 5346 */
{
INTEGER tmp_637;
tmp_637 = mod((fn + 5), 2715648);
fn = tmp_637;
}
}
else {
current_location.update_lineno(5348);
/* BTS_Tests.ttcn, line 5348 */
{
INTEGER tmp_638;
tmp_638 = mod((fn + 4), 2715648);
fn = tmp_638;
}
}
current_location.update_lineno(5351);
/* BTS_Tests.ttcn, line 5351 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__UL__BLOCK__REQ(INTEGER_template(fn), INTEGER_template(const_cast< const L1CTL__Types::L1ctlGprsDlBlockInd&>(block__ind).hdr().tn()), OCTETSTRING_template(data)), FALSE, NULL);
current_location.update_lineno(5352);
/* BTS_Tests.ttcn, line 5352 */
TdmaFnTn tmp_639;
tmp_639.fn() = fn;
tmp_639.tn() = const_cast< const L1CTL__Types::L1ctlGprsDlBlockInd&>(block__ind).hdr().tn();
return tmp_639;
}
}
if (tmp_635_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5354);
/* BTS_Tests.ttcn, line 5354 */
tmp_635_alt_flag_1 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_635_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5354);
/* BTS_Tests.ttcn, line 5354 */
goto tmp_635;
}
}
if (tmp_635_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5355);
/* BTS_Tests.ttcn, line 5355 */
tmp_635_alt_flag_2 = T.timeout(NULL);
if (tmp_635_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5356);
/* BTS_Tests.ttcn, line 5356 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for DL BLOCK.ind (RTS)"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(5357);
/* BTS_Tests.ttcn, line 5357 */
Misc__Helpers::f__shutdown(cs_4, 5357, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_635_default_flag == ALT_MAYBE) {
tmp_635_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_635_default_flag == ALT_YES || tmp_635_default_flag == ALT_BREAK) break;
else if (tmp_635_default_flag == ALT_REPEAT) goto tmp_635;
}
current_location.update_lineno(5333);
/* BTS_Tests.ttcn, line 5333 */
if (tmp_635_alt_flag_0 == ALT_NO && tmp_635_alt_flag_1 == ALT_NO && tmp_635_alt_flag_2 == ALT_NO && tmp_635_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5333 and 5359.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5361);
/* BTS_Tests.ttcn, line 5361 */
TdmaFnTn tmp_640;
tmp_640.fn() = 0;
tmp_640.tn() = 0;
return tmp_640;
}

void start_f__TC__pcu__tx__ul__block__req(const COMPONENT& component_reference, const OCTETSTRING& data, const INTEGER_template& tn, const INTEGER_template& usf)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_tx_ul_block_req(");
data.log();
TTCN_Logger::log_event_str(", ");
tn.log();
TTCN_Logger::log_event_str(", ");
usf.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_tx_ul_block_req", text_buf);
data.encode_text(text_buf);
tn.encode_text(text_buf);
usf.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__pcu__l1ctl__est__pdch(const INTEGER& tn)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5365, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_l1ctl_est_pdch");
current_location.update_lineno(5366);
/* BTS_Tests.ttcn, line 5366 */
ConnHdlrPars pars(t__Pars(GSM__Types::ts__RslChanNr__PDCH(tn), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(5367);
/* BTS_Tests.ttcn, line 5367 */
{
boolean tmp_641;
tmp_641 = mp__freq__hop__enabled;
if (tmp_641) tmp_641 = (mp__transceiver__num > 1);
if (tmp_641) {
current_location.update_lineno(5368);
/* BTS_Tests.ttcn, line 5368 */
f__resolve__fh__params(pars.fhp(), tn, f__resolve__fh__params_trx__nr_defval);
}
}
current_location.update_lineno(5369);
/* BTS_Tests.ttcn, line 5369 */
f__l1ctl__est__dchan(test__CT_component_L1CTL, pars);
}

void start_f__TC__pcu__l1ctl__est__pdch(const COMPONENT& component_reference, const INTEGER& tn)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_l1ctl_est_pdch(");
tn.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_l1ctl_est_pdch", text_buf);
tn.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__pcu__act__req(const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const BOOLEAN& exp__success)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5373, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_act_req");
current_location.update_lineno(5375);
/* BTS_Tests.ttcn, line 5375 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5376);
/* BTS_Tests.ttcn, line 5376 */
TIMER T("T", 3.0);
current_location.update_lineno(5379);
/* BTS_Tests.ttcn, line 5379 */
T.start();
current_location.update_lineno(5380);
/* BTS_Tests.ttcn, line 5380 */
{
tmp_642:
alt_status tmp_642_alt_flag_0 = ALT_MAYBE;
alt_status tmp_642_alt_flag_1 = ALT_MAYBE;
alt_status tmp_642_alt_flag_2 = ALT_MAYBE;
alt_status tmp_642_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_642_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5381);
/* BTS_Tests.ttcn, line 5381 */
{
PCUIF__Types::PCUIF__Message tmp_643;
tmp_642_alt_flag_0 = as__pcuif__msg_instance(tmp_643, PCUIF__Types::tr__PCUIF__RTS__REQ(INTEGER_template(bts__nr), PCUIF__Types::tr__PCUIF__RTS__REQ_trx__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_ts__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_sapi_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_fn_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_block__nr_defval), first_run);
if (tmp_643.is_bound()) msg = tmp_643;
}
if (tmp_642_alt_flag_0 == ALT_REPEAT) goto tmp_642;
if (tmp_642_alt_flag_0 == ALT_BREAK) break;
if (tmp_642_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5382);
/* BTS_Tests.ttcn, line 5382 */
Misc__Helpers::f__shutdown(cs_4, 5382, FAIL, cs_89);
break;
}
}
if (tmp_642_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5384);
/* BTS_Tests.ttcn, line 5384 */
tmp_642_alt_flag_1 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_642_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5384);
/* BTS_Tests.ttcn, line 5384 */
goto tmp_642;
}
}
if (tmp_642_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5385);
/* BTS_Tests.ttcn, line 5385 */
tmp_642_alt_flag_2 = T.timeout(NULL);
if (tmp_642_alt_flag_2 == ALT_YES) break;
}
if (tmp_642_default_flag == ALT_MAYBE) {
tmp_642_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_642_default_flag == ALT_YES || tmp_642_default_flag == ALT_BREAK) break;
else if (tmp_642_default_flag == ALT_REPEAT) goto tmp_642;
}
current_location.update_lineno(5380);
/* BTS_Tests.ttcn, line 5380 */
if (tmp_642_alt_flag_0 == ALT_NO && tmp_642_alt_flag_1 == ALT_NO && tmp_642_alt_flag_2 == ALT_NO && tmp_642_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5380 and 5386.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5389);
/* BTS_Tests.ttcn, line 5389 */
test__CT_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(test__CT_component_g__pcu__conn__id, PCUIF__Types::ts__PCUIF__ACT__REQ(bts__nr, trx__nr, ts__nr)), FALSE, NULL);
current_location.update_lineno(5392);
/* BTS_Tests.ttcn, line 5392 */
T.start();
current_location.update_lineno(5393);
/* BTS_Tests.ttcn, line 5393 */
{
tmp_644:
alt_status tmp_644_alt_flag_0 = ALT_UNCHECKED;
alt_status tmp_644_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_644_alt_flag_2 = ALT_MAYBE;
alt_status tmp_644_alt_flag_3 = ALT_MAYBE;
alt_status tmp_644_alt_flag_4 = ALT_UNCHECKED;
alt_status tmp_644_alt_flag_5 = ALT_UNCHECKED;
alt_status tmp_644_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_644_alt_flag_0 == ALT_UNCHECKED) {
current_location.update_lineno(5394);
/* BTS_Tests.ttcn, line 5394 */
if (exp__success) tmp_644_alt_flag_0 = ALT_MAYBE;
else tmp_644_alt_flag_0 = ALT_NO;
}
if (tmp_644_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5394);
/* BTS_Tests.ttcn, line 5394 */
{
PCUIF__Types::PCUIF__Message tmp_645;
tmp_644_alt_flag_0 = as__pcuif__msg_instance(tmp_645, PCUIF__Types::tr__PCUIF__RTS__REQ(INTEGER_template(bts__nr), INTEGER_template(trx__nr), INTEGER_template(ts__nr), PCUIF__Types::tr__PCUIF__RTS__REQ_sapi_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_fn_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_block__nr_defval), first_run);
if (tmp_645.is_bound()) msg = tmp_645;
}
if (tmp_644_alt_flag_0 == ALT_REPEAT) goto tmp_644;
if (tmp_644_alt_flag_0 == ALT_BREAK) break;
if (tmp_644_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5395);
/* BTS_Tests.ttcn, line 5395 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_644_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(5397);
/* BTS_Tests.ttcn, line 5397 */
if ((!(exp__success))) tmp_644_alt_flag_1 = ALT_MAYBE;
else tmp_644_alt_flag_1 = ALT_NO;
}
if (tmp_644_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5397);
/* BTS_Tests.ttcn, line 5397 */
{
PCUIF__Types::PCUIF__Message tmp_646;
tmp_644_alt_flag_1 = as__pcuif__msg_instance(tmp_646, PCUIF__Types::tr__PCUIF__RTS__REQ(INTEGER_template(bts__nr), INTEGER_template(trx__nr), INTEGER_template(ts__nr), PCUIF__Types::tr__PCUIF__RTS__REQ_sapi_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_fn_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_block__nr_defval), first_run);
if (tmp_646.is_bound()) msg = tmp_646;
}
if (tmp_644_alt_flag_1 == ALT_REPEAT) goto tmp_644;
if (tmp_644_alt_flag_1 == ALT_BREAK) break;
if (tmp_644_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5398);
/* BTS_Tests.ttcn, line 5398 */
Misc__Helpers::f__shutdown(cs_4, 5398, FAIL, cs_90);
break;
}
}
if (tmp_644_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5400);
/* BTS_Tests.ttcn, line 5400 */
{
PCUIF__Types::PCUIF__Message tmp_647;
tmp_644_alt_flag_2 = as__pcuif__msg_instance(tmp_647, PCUIF__Types::tr__PCUIF__RTS__REQ(PCUIF__Types::tr__PCUIF__RTS__REQ_bts__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_trx__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_ts__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_sapi_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_fn_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_block__nr_defval), first_run);
if (tmp_647.is_bound()) msg = tmp_647;
}
if (tmp_644_alt_flag_2 == ALT_REPEAT) goto tmp_644;
if (tmp_644_alt_flag_2 == ALT_BREAK) break;
if (tmp_644_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5401);
/* BTS_Tests.ttcn, line 5401 */
Misc__Helpers::f__shutdown(cs_4, 5401, FAIL, cs_91);
break;
}
}
if (tmp_644_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(5403);
/* BTS_Tests.ttcn, line 5403 */
tmp_644_alt_flag_3 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_644_alt_flag_3 == ALT_YES) {
current_location.update_lineno(5403);
/* BTS_Tests.ttcn, line 5403 */
goto tmp_644;
}
}
if (tmp_644_alt_flag_4 == ALT_UNCHECKED) {
current_location.update_lineno(5404);
/* BTS_Tests.ttcn, line 5404 */
if (exp__success) tmp_644_alt_flag_4 = ALT_MAYBE;
else tmp_644_alt_flag_4 = ALT_NO;
}
if (tmp_644_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(5404);
/* BTS_Tests.ttcn, line 5404 */
tmp_644_alt_flag_4 = T.timeout(NULL);
if (tmp_644_alt_flag_4 == ALT_YES) {
current_location.update_lineno(5405);
/* BTS_Tests.ttcn, line 5405 */
Misc__Helpers::f__shutdown(cs_4, 5405, FAIL, cs_92);
break;
}
}
if (tmp_644_alt_flag_5 == ALT_UNCHECKED) {
current_location.update_lineno(5407);
/* BTS_Tests.ttcn, line 5407 */
if ((!(exp__success))) tmp_644_alt_flag_5 = ALT_MAYBE;
else tmp_644_alt_flag_5 = ALT_NO;
}
if (tmp_644_alt_flag_5 == ALT_MAYBE) {
current_location.update_lineno(5407);
/* BTS_Tests.ttcn, line 5407 */
tmp_644_alt_flag_5 = T.timeout(NULL);
if (tmp_644_alt_flag_5 == ALT_YES) {
current_location.update_lineno(5408);
/* BTS_Tests.ttcn, line 5408 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_644_default_flag == ALT_MAYBE) {
tmp_644_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_644_default_flag == ALT_YES || tmp_644_default_flag == ALT_BREAK) break;
else if (tmp_644_default_flag == ALT_REPEAT) goto tmp_644;
}
current_location.update_lineno(5393);
/* BTS_Tests.ttcn, line 5393 */
if (tmp_644_alt_flag_0 == ALT_NO && tmp_644_alt_flag_1 == ALT_NO && tmp_644_alt_flag_2 == ALT_NO && tmp_644_alt_flag_3 == ALT_NO && tmp_644_alt_flag_4 == ALT_NO && tmp_644_alt_flag_5 == ALT_NO && tmp_644_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5393 and 5410.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__TC__pcu__act__req(const COMPONENT& component_reference, const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const BOOLEAN& exp__success)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_act_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
exp__success.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_act_req", text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
ts__nr.encode_text(text_buf);
exp__success.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__pcu__deact__req(const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5414, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_deact_req");
current_location.update_lineno(5416);
/* BTS_Tests.ttcn, line 5416 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5417);
/* BTS_Tests.ttcn, line 5417 */
TIMER T("T", 3.0);
current_location.update_lineno(5420);
/* BTS_Tests.ttcn, line 5420 */
test__CT_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(test__CT_component_g__pcu__conn__id, PCUIF__Types::ts__PCUIF__DEACT__REQ(bts__nr, trx__nr, ts__nr)), FALSE, NULL);
current_location.update_lineno(5423);
/* BTS_Tests.ttcn, line 5423 */
Osmocom__Types::f__sleep(1.0);
current_location.update_lineno(5424);
/* BTS_Tests.ttcn, line 5424 */
test__CT_component_PCU.clear();
current_location.update_lineno(5426);
/* BTS_Tests.ttcn, line 5426 */
T.start();
current_location.update_lineno(5427);
/* BTS_Tests.ttcn, line 5427 */
{
tmp_648:
alt_status tmp_648_alt_flag_0 = ALT_MAYBE;
alt_status tmp_648_alt_flag_1 = ALT_MAYBE;
alt_status tmp_648_alt_flag_2 = ALT_MAYBE;
alt_status tmp_648_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_648_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5428);
/* BTS_Tests.ttcn, line 5428 */
{
PCUIF__Types::PCUIF__Message tmp_649;
tmp_648_alt_flag_0 = as__pcuif__msg_instance(tmp_649, PCUIF__Types::tr__PCUIF__RTS__REQ(INTEGER_template(bts__nr), INTEGER_template(trx__nr), INTEGER_template(ts__nr), PCUIF__Types::tr__PCUIF__RTS__REQ_sapi_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_fn_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_block__nr_defval), first_run);
if (tmp_649.is_bound()) msg = tmp_649;
}
if (tmp_648_alt_flag_0 == ALT_REPEAT) goto tmp_648;
if (tmp_648_alt_flag_0 == ALT_BREAK) break;
if (tmp_648_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5429);
/* BTS_Tests.ttcn, line 5429 */
Misc__Helpers::f__shutdown(cs_4, 5429, FAIL, cs_93);
break;
}
}
if (tmp_648_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5431);
/* BTS_Tests.ttcn, line 5431 */
tmp_648_alt_flag_1 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_648_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5431);
/* BTS_Tests.ttcn, line 5431 */
goto tmp_648;
}
}
if (tmp_648_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5432);
/* BTS_Tests.ttcn, line 5432 */
tmp_648_alt_flag_2 = T.timeout(NULL);
if (tmp_648_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5433);
/* BTS_Tests.ttcn, line 5433 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_648_default_flag == ALT_MAYBE) {
tmp_648_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_648_default_flag == ALT_YES || tmp_648_default_flag == ALT_BREAK) break;
else if (tmp_648_default_flag == ALT_REPEAT) goto tmp_648;
}
current_location.update_lineno(5427);
/* BTS_Tests.ttcn, line 5427 */
if (tmp_648_alt_flag_0 == ALT_NO && tmp_648_alt_flag_1 == ALT_NO && tmp_648_alt_flag_2 == ALT_NO && tmp_648_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5427 and 5435.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__TC__pcu__deact__req(const COMPONENT& component_reference, const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_deact_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_deact_req", text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
ts__nr.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__init__with__pcuif()
{
TTCN_Location current_location("BTS_Tests.ttcn", 5438, TTCN_Location::LOCATION_FUNCTION, "f_init_with_pcuif");
current_location.update_lineno(5439);
/* BTS_Tests.ttcn, line 5439 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(5440);
/* BTS_Tests.ttcn, line 5440 */
{
Map_Params tmp_650(0);
TTCN_Runtime::map_port(self, test__CT_component_PCU.get_name(), SYSTEM_COMPREF, "PCU", tmp_650);
}
current_location.update_lineno(5441);
/* BTS_Tests.ttcn, line 5441 */
{
INTEGER tmp_651;
PCUIF__Types::PCUIF__Message tmp_652;
f__init__pcu(test__CT_component_PCU, TTCN_Runtime::get_testcasename(), tmp_651, tmp_652);
if (tmp_651.is_bound()) test__CT_component_g__pcu__conn__id = tmp_651;
if (tmp_652.is_bound()) test__CT_component_g__pcu__last__info = tmp_652;
}
current_location.update_lineno(5444);
/* BTS_Tests.ttcn, line 5444 */
test__CT_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(test__CT_component_g__pcu__conn__id, PCUIF__Types::ts__PCUIF__TXT__IND(0, PCUIF__Types::PCUIF__TextType::PCU__VERSION, TTCN_Runtime::get_testcasename())), FALSE, NULL);
}

void start_f__init__with__pcuif(const COMPONENT& component_reference)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_init_with_pcuif(");
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_init_with_pcuif", text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__act__req(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5448, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_act_req");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_act_req", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5449);
/* BTS_Tests.ttcn, line 5449 */
f__init__with__pcuif();
current_location.update_lineno(5451);
/* BTS_Tests.ttcn, line 5451 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_act_req was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__act__req__wrong__ts(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5455, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_act_req_wrong_ts");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_act_req_wrong_ts", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5456);
/* BTS_Tests.ttcn, line 5456 */
f__init__with__pcuif();
current_location.update_lineno(5458);
/* BTS_Tests.ttcn, line 5458 */
f__TC__pcu__act__req(0, 0, 1, FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_act_req_wrong_ts was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__act__req__wrong__bts(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5462, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_act_req_wrong_bts");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_act_req_wrong_bts", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5463);
/* BTS_Tests.ttcn, line 5463 */
f__init__with__pcuif();
current_location.update_lineno(5465);
/* BTS_Tests.ttcn, line 5465 */
f__TC__pcu__act__req(23, 0, 7, FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_act_req_wrong_bts was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__act__req__wrong__trx(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5469, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_act_req_wrong_trx");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_act_req_wrong_trx", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5470);
/* BTS_Tests.ttcn, line 5470 */
f__init__with__pcuif();
current_location.update_lineno(5472);
/* BTS_Tests.ttcn, line 5472 */
f__TC__pcu__act__req(0, 23, 7, FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_act_req_wrong_trx was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__deact__req(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5476, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_deact_req");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_deact_req", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5477);
/* BTS_Tests.ttcn, line 5477 */
f__init__with__pcuif();
current_location.update_lineno(5480);
/* BTS_Tests.ttcn, line 5480 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5481);
/* BTS_Tests.ttcn, line 5481 */
Osmocom__Types::f__sleep(1.0);
current_location.update_lineno(5483);
/* BTS_Tests.ttcn, line 5483 */
f__TC__pcu__deact__req(0, 0, 7);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_deact_req was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__deact__req__wrong__ts(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5487, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_deact_req_wrong_ts");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_deact_req_wrong_ts", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5488);
/* BTS_Tests.ttcn, line 5488 */
f__init__with__pcuif();
current_location.update_lineno(5490);
/* BTS_Tests.ttcn, line 5490 */
f__TC__pcu__deact__req(0, 0, 1);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_deact_req_wrong_ts was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__pcu__ver__siXX(const OCTETSTRING& si, const RSL__Types::RSL__IE__SysinfoType& rsl__si__type)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5494, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_ver_siXX");
current_location.update_lineno(5495);
/* BTS_Tests.ttcn, line 5495 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5496);
/* BTS_Tests.ttcn, line 5496 */
TIMER T("T", 3.0);
current_location.update_lineno(5498);
/* BTS_Tests.ttcn, line 5498 */
f__init__with__pcuif();
current_location.update_lineno(5501);
/* BTS_Tests.ttcn, line 5501 */
f__rsl__bcch__fill__raw(rsl__si__type, si);
current_location.update_lineno(5503);
/* BTS_Tests.ttcn, line 5503 */
T.start();
current_location.update_lineno(5504);
/* BTS_Tests.ttcn, line 5504 */
{
tmp_653:
alt_status tmp_653_alt_flag_0 = ALT_MAYBE;
alt_status tmp_653_alt_flag_1 = ALT_MAYBE;
alt_status tmp_653_alt_flag_2 = ALT_MAYBE;
alt_status tmp_653_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_653_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5505);
/* BTS_Tests.ttcn, line 5505 */
{
PCUIF__Types::PCUIF__Message tmp_654;
tmp_653_alt_flag_0 = as__pcuif__msg_instance(tmp_654, PCUIF__Types::tr__PCUIF__DATA__IND(INTEGER_template(0), INTEGER_template(0), INTEGER_template(0), PCUIF__Types::tr__PCUIF__DATA__IND_block__nr_defval, PCUIF__Types::PCUIF__Sapi_template(PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__BCCH), PCUIF__Types::tr__PCUIF__DATA__IND_data_defval), first_run);
if (tmp_654.is_bound()) msg = tmp_654;
}
if (tmp_653_alt_flag_0 == ALT_REPEAT) goto tmp_653;
if (tmp_653_alt_flag_0 == ALT_BREAK) break;
if (tmp_653_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5506);
/* BTS_Tests.ttcn, line 5506 */
if ((substr(const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().data__ind().data(), 0, si.lengthof()) == si)) {
current_location.update_lineno(5507);
/* BTS_Tests.ttcn, line 5507 */
TTCN_Runtime::setverdict(PASS);
}
else {
current_location.update_lineno(5509);
/* BTS_Tests.ttcn, line 5509 */
goto tmp_653;
}
break;
}
}
if (tmp_653_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5512);
/* BTS_Tests.ttcn, line 5512 */
tmp_653_alt_flag_1 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_653_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5512);
/* BTS_Tests.ttcn, line 5512 */
goto tmp_653;
}
}
if (tmp_653_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5513);
/* BTS_Tests.ttcn, line 5513 */
tmp_653_alt_flag_2 = T.timeout(NULL);
if (tmp_653_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5514);
/* BTS_Tests.ttcn, line 5514 */
Misc__Helpers::f__shutdown(cs_4, 5514, FAIL, cs_94);
break;
}
}
if (tmp_653_default_flag == ALT_MAYBE) {
tmp_653_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_653_default_flag == ALT_YES || tmp_653_default_flag == ALT_BREAK) break;
else if (tmp_653_default_flag == ALT_REPEAT) goto tmp_653;
}
current_location.update_lineno(5504);
/* BTS_Tests.ttcn, line 5504 */
if (tmp_653_alt_flag_0 == ALT_NO && tmp_653_alt_flag_1 == ALT_NO && tmp_653_alt_flag_2 == ALT_NO && tmp_653_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5504 and 5516.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__TC__pcu__ver__siXX(const COMPONENT& component_reference, const OCTETSTRING& si, const RSL__Types::RSL__IE__SysinfoType& rsl__si__type)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_ver_siXX(");
si.log();
TTCN_Logger::log_event_str(", ");
rsl__si__type.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_ver_siXX", text_buf);
si.encode_text(text_buf);
rsl__si__type.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__ver__si1(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5520, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_ver_si1");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_ver_si1", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5521);
/* BTS_Tests.ttcn, line 5521 */
OCTETSTRING si1(os_12);
current_location.update_lineno(5522);
/* BTS_Tests.ttcn, line 5522 */
f__TC__pcu__ver__siXX(os_12, RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__1);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_ver_si1 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__ver__si3(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5526, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_ver_si3");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_ver_si3", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5527);
/* BTS_Tests.ttcn, line 5527 */
OCTETSTRING si3(os_13);
current_location.update_lineno(5528);
/* BTS_Tests.ttcn, line 5528 */
f__TC__pcu__ver__siXX(os_13, RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__3);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_ver_si3 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__ver__si13(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5532, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_ver_si13");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_ver_si13", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5533);
/* BTS_Tests.ttcn, line 5533 */
OCTETSTRING si13(os_14);
current_location.update_lineno(5534);
/* BTS_Tests.ttcn, line 5534 */
f__TC__pcu__ver__siXX(os_14, RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__13);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_ver_si13 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__pcu__data__req(const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const INTEGER& block__nr, const INTEGER& fn, const PCUIF__Types::PCUIF__Sapi& sapi, const OCTETSTRING& data)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5540, TTCN_Location::LOCATION_FUNCTION, "f_pcu_data_req");
current_location.update_lineno(5544);
/* BTS_Tests.ttcn, line 5544 */
test__CT_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(test__CT_component_g__pcu__conn__id, PCUIF__Types::ts__PCUIF__DATA__REQ(bts__nr, trx__nr, ts__nr, block__nr, fn, sapi, data)), FALSE, NULL);
}

void start_f__pcu__data__req(const COMPONENT& component_reference, const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const INTEGER& block__nr, const INTEGER& fn, const PCUIF__Types::PCUIF__Sapi& sapi, const OCTETSTRING& data)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_pcu_data_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
block__nr.log();
TTCN_Logger::log_event_str(", ");
fn.log();
TTCN_Logger::log_event_str(", ");
sapi.log();
TTCN_Logger::log_event_str(", ");
data.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_pcu_data_req", text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
ts__nr.encode_text(text_buf);
block__nr.encode_text(text_buf);
fn.encode_text(text_buf);
sapi.encode_text(text_buf);
data.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__pcu__wait__rts__and__data__req(const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const PCUIF__Types::PCUIF__Sapi& sapi, const OCTETSTRING& data)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5549, TTCN_Location::LOCATION_FUNCTION, "f_pcu_wait_rts_and_data_req");
current_location.update_lineno(5553);
/* BTS_Tests.ttcn, line 5553 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5554);
/* BTS_Tests.ttcn, line 5554 */
TIMER T("T", 3.0);
current_location.update_lineno(5556);
/* BTS_Tests.ttcn, line 5556 */
T.start();
current_location.update_lineno(5557);
/* BTS_Tests.ttcn, line 5557 */
{
tmp_655:
alt_status tmp_655_alt_flag_0 = ALT_MAYBE;
alt_status tmp_655_alt_flag_1 = ALT_MAYBE;
alt_status tmp_655_alt_flag_2 = ALT_MAYBE;
alt_status tmp_655_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_655_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5558);
/* BTS_Tests.ttcn, line 5558 */
{
PCUIF__Types::PCUIF__Message tmp_656;
tmp_655_alt_flag_0 = as__pcuif__msg_instance(tmp_656, PCUIF__Types::tr__PCUIF__RTS__REQ(INTEGER_template(bts__nr), INTEGER_template(trx__nr), INTEGER_template(ts__nr), PCUIF__Types::PCUIF__Sapi_template(sapi), PCUIF__Types::tr__PCUIF__RTS__REQ_fn_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_block__nr_defval), first_run);
if (tmp_656.is_bound()) msg = tmp_656;
}
if (tmp_655_alt_flag_0 == ALT_REPEAT) goto tmp_655;
if (tmp_655_alt_flag_0 == ALT_BREAK) break;
if (tmp_655_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5559);
/* BTS_Tests.ttcn, line 5559 */
f__pcu__data__req(bts__nr, trx__nr, ts__nr, const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().rts__req().block__nr(), const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().rts__req().fn(), sapi, data);
break;
}
}
if (tmp_655_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5562);
/* BTS_Tests.ttcn, line 5562 */
tmp_655_alt_flag_1 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_655_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5562);
/* BTS_Tests.ttcn, line 5562 */
goto tmp_655;
}
}
if (tmp_655_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5563);
/* BTS_Tests.ttcn, line 5563 */
tmp_655_alt_flag_2 = T.timeout(NULL);
if (tmp_655_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5564);
/* BTS_Tests.ttcn, line 5564 */
Misc__Helpers::f__shutdown(cs_4, 5564, FAIL, cs_95);
break;
}
}
if (tmp_655_default_flag == ALT_MAYBE) {
tmp_655_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_655_default_flag == ALT_YES || tmp_655_default_flag == ALT_BREAK) break;
else if (tmp_655_default_flag == ALT_REPEAT) goto tmp_655;
}
current_location.update_lineno(5557);
/* BTS_Tests.ttcn, line 5557 */
if (tmp_655_alt_flag_0 == ALT_NO && tmp_655_alt_flag_1 == ALT_NO && tmp_655_alt_flag_2 == ALT_NO && tmp_655_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5557 and 5566.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__pcu__wait__rts__and__data__req(const COMPONENT& component_reference, const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const PCUIF__Types::PCUIF__Sapi& sapi, const OCTETSTRING& data)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_pcu_wait_rts_and_data_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
sapi.log();
TTCN_Logger::log_event_str(", ");
data.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_pcu_wait_rts_and_data_req", text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
ts__nr.encode_text(text_buf);
sapi.encode_text(text_buf);
data.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__data__req__wrong__bts(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5570, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_wrong_bts");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_wrong_bts", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5571);
/* BTS_Tests.ttcn, line 5571 */
OCTETSTRING data((os_16 + Osmocom__Types::f__rnd__octstring(21)));
current_location.update_lineno(5573);
/* BTS_Tests.ttcn, line 5573 */
f__TC__pcu__init();
current_location.update_lineno(5575);
/* BTS_Tests.ttcn, line 5575 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5576);
/* BTS_Tests.ttcn, line 5576 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(5578);
/* BTS_Tests.ttcn, line 5578 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_start__fn_defval, L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_dl__tfi_defval), FALSE, NULL);
current_location.update_lineno(5579);
/* BTS_Tests.ttcn, line 5579 */
f__pcu__to__l1(23, 0, 7, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PDTCH, data, FALSE, FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_wrong_bts was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__wrong__trx(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5583, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_wrong_trx");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_wrong_trx", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5584);
/* BTS_Tests.ttcn, line 5584 */
OCTETSTRING data((os_16 + Osmocom__Types::f__rnd__octstring(21)));
current_location.update_lineno(5586);
/* BTS_Tests.ttcn, line 5586 */
f__TC__pcu__init();
current_location.update_lineno(5588);
/* BTS_Tests.ttcn, line 5588 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5589);
/* BTS_Tests.ttcn, line 5589 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(5591);
/* BTS_Tests.ttcn, line 5591 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_start__fn_defval, L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_dl__tfi_defval), FALSE, NULL);
current_location.update_lineno(5592);
/* BTS_Tests.ttcn, line 5592 */
f__pcu__to__l1(0, 100, 7, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PDTCH, data, FALSE, FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_wrong_trx was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__wrong__ts(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5596, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_wrong_ts");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_wrong_ts", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5597);
/* BTS_Tests.ttcn, line 5597 */
OCTETSTRING data((os_16 + Osmocom__Types::f__rnd__octstring(21)));
current_location.update_lineno(5599);
/* BTS_Tests.ttcn, line 5599 */
f__TC__pcu__init();
current_location.update_lineno(5601);
/* BTS_Tests.ttcn, line 5601 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5602);
/* BTS_Tests.ttcn, line 5602 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(5604);
/* BTS_Tests.ttcn, line 5604 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_start__fn_defval, L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_dl__tfi_defval), FALSE, NULL);
current_location.update_lineno(5605);
/* BTS_Tests.ttcn, line 5605 */
f__pcu__to__l1(0, 0, 70, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PDTCH, data, FALSE, FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_wrong_ts was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__ts__inactive(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5609, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_ts_inactive");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_ts_inactive", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5610);
/* BTS_Tests.ttcn, line 5610 */
OCTETSTRING data((os_16 + Osmocom__Types::f__rnd__octstring(21)));
current_location.update_lineno(5612);
/* BTS_Tests.ttcn, line 5612 */
f__TC__pcu__init();
current_location.update_lineno(5615);
/* BTS_Tests.ttcn, line 5615 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(5617);
/* BTS_Tests.ttcn, line 5617 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_start__fn_defval, L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_dl__tfi_defval), FALSE, NULL);
current_location.update_lineno(5618);
/* BTS_Tests.ttcn, line 5618 */
f__pcu__to__l1(0, 0, 7, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PDTCH, data, FALSE, FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_ts_inactive was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__pcu__to__l1(const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const PCUIF__Types::PCUIF__Sapi& sapi, const OCTETSTRING& data, const BOOLEAN& expect__data, const BOOLEAN& wait__rts)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5621, TTCN_Location::LOCATION_FUNCTION, "f_pcu_to_l1");
current_location.update_lineno(5625);
/* BTS_Tests.ttcn, line 5625 */
TIMER T("T", 5.0);
current_location.update_lineno(5626);
/* BTS_Tests.ttcn, line 5626 */
L1CTL__Types::L1ctlMessage rx__dl;
current_location.update_lineno(5628);
/* BTS_Tests.ttcn, line 5628 */
test__CT_component_L1CTL.clear();
current_location.update_lineno(5629);
/* BTS_Tests.ttcn, line 5629 */
test__CT_component_PCU.clear();
current_location.update_lineno(5630);
/* BTS_Tests.ttcn, line 5630 */
if (wait__rts) {
current_location.update_lineno(5631);
/* BTS_Tests.ttcn, line 5631 */
f__pcu__wait__rts__and__data__req(bts__nr, trx__nr, ts__nr, sapi, data);
}
else {
current_location.update_lineno(5633);
/* BTS_Tests.ttcn, line 5633 */
f__pcu__data__req(bts__nr, trx__nr, ts__nr, 0, 0, sapi, data);
}
current_location.update_lineno(5636);
/* BTS_Tests.ttcn, line 5636 */
T.start();
current_location.update_lineno(5637);
/* BTS_Tests.ttcn, line 5637 */
{
tmp_657:
alt_status tmp_657_alt_flag_0 = ALT_UNCHECKED;
alt_status tmp_657_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_657_alt_flag_2 = ALT_MAYBE;
alt_status tmp_657_alt_flag_3 = ALT_UNCHECKED;
alt_status tmp_657_alt_flag_4 = ALT_UNCHECKED;
alt_status tmp_657_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_657_alt_flag_0 == ALT_UNCHECKED) {
current_location.update_lineno(5638);
/* BTS_Tests.ttcn, line 5638 */
if (expect__data) tmp_657_alt_flag_0 = ALT_MAYBE;
else tmp_657_alt_flag_0 = ALT_NO;
}
if (tmp_657_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5638);
/* BTS_Tests.ttcn, line 5638 */
tmp_657_alt_flag_0 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND(L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_fn_defval, INTEGER_template(ts__nr), L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_usf_defval, OCTETSTRING_template(data), L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ber10k_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ci__cb_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_rx__level_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_657_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5640);
/* BTS_Tests.ttcn, line 5640 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_657_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(5642);
/* BTS_Tests.ttcn, line 5642 */
if ((!(expect__data))) tmp_657_alt_flag_1 = ALT_MAYBE;
else tmp_657_alt_flag_1 = ALT_NO;
}
if (tmp_657_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5642);
/* BTS_Tests.ttcn, line 5642 */
tmp_657_alt_flag_1 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND(L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_fn_defval, INTEGER_template(ts__nr), L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_usf_defval, OCTETSTRING_template(data), L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ber10k_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ci__cb_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_rx__level_defval), &(rx__dl), any_compref, NULL, NULL, NULL);
if (tmp_657_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5643);
/* BTS_Tests.ttcn, line 5643 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Received unexpected "),rx__dl.log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_657_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5645);
/* BTS_Tests.ttcn, line 5645 */
tmp_657_alt_flag_2 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_657_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5646);
/* BTS_Tests.ttcn, line 5646 */
goto tmp_657;
}
}
if (tmp_657_alt_flag_3 == ALT_UNCHECKED) {
current_location.update_lineno(5648);
/* BTS_Tests.ttcn, line 5648 */
if (expect__data) tmp_657_alt_flag_3 = ALT_MAYBE;
else tmp_657_alt_flag_3 = ALT_NO;
}
if (tmp_657_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(5648);
/* BTS_Tests.ttcn, line 5648 */
tmp_657_alt_flag_3 = T.timeout(NULL);
if (tmp_657_alt_flag_3 == ALT_YES) {
current_location.update_lineno(5649);
/* BTS_Tests.ttcn, line 5649 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for "),data.log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_657_alt_flag_4 == ALT_UNCHECKED) {
current_location.update_lineno(5651);
/* BTS_Tests.ttcn, line 5651 */
if ((!(expect__data))) tmp_657_alt_flag_4 = ALT_MAYBE;
else tmp_657_alt_flag_4 = ALT_NO;
}
if (tmp_657_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(5651);
/* BTS_Tests.ttcn, line 5651 */
tmp_657_alt_flag_4 = T.timeout(NULL);
if (tmp_657_alt_flag_4 == ALT_YES) {
current_location.update_lineno(5652);
/* BTS_Tests.ttcn, line 5652 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_657_default_flag == ALT_MAYBE) {
tmp_657_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_657_default_flag == ALT_YES || tmp_657_default_flag == ALT_BREAK) break;
else if (tmp_657_default_flag == ALT_REPEAT) goto tmp_657;
}
current_location.update_lineno(5637);
/* BTS_Tests.ttcn, line 5637 */
if (tmp_657_alt_flag_0 == ALT_NO && tmp_657_alt_flag_1 == ALT_NO && tmp_657_alt_flag_2 == ALT_NO && tmp_657_alt_flag_3 == ALT_NO && tmp_657_alt_flag_4 == ALT_NO && tmp_657_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5637 and 5654.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__pcu__to__l1(const COMPONENT& component_reference, const INTEGER& bts__nr, const INTEGER& trx__nr, const INTEGER& ts__nr, const PCUIF__Types::PCUIF__Sapi& sapi, const OCTETSTRING& data, const BOOLEAN& expect__data, const BOOLEAN& wait__rts)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_pcu_to_l1(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
sapi.log();
TTCN_Logger::log_event_str(", ");
data.log();
TTCN_Logger::log_event_str(", ");
expect__data.log();
TTCN_Logger::log_event_str(", ");
wait__rts.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_pcu_to_l1", text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
ts__nr.encode_text(text_buf);
sapi.encode_text(text_buf);
data.encode_text(text_buf);
expect__data.encode_text(text_buf);
wait__rts.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__pcu__init()
{
TTCN_Location current_location("BTS_Tests.ttcn", 5657, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_init");
current_location.update_lineno(5658);
/* BTS_Tests.ttcn, line 5658 */
f__init__with__pcuif();
current_location.update_lineno(5659);
/* BTS_Tests.ttcn, line 5659 */
f__init__l1ctl();
current_location.update_lineno(5660);
/* BTS_Tests.ttcn, line 5660 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
}

void start_f__TC__pcu__init(const COMPONENT& component_reference)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_init(");
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_init", text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__data__req__pdtch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5663, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_pdtch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_pdtch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5664);
/* BTS_Tests.ttcn, line 5664 */
OCTETSTRING data((os_16 + Osmocom__Types::f__rnd__octstring(21)));
current_location.update_lineno(5666);
/* BTS_Tests.ttcn, line 5666 */
f__TC__pcu__init();
current_location.update_lineno(5668);
/* BTS_Tests.ttcn, line 5668 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5669);
/* BTS_Tests.ttcn, line 5669 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(5671);
/* BTS_Tests.ttcn, line 5671 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_start__fn_defval, L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_dl__tfi_defval), FALSE, NULL);
current_location.update_lineno(5672);
/* BTS_Tests.ttcn, line 5672 */
f__pcu__to__l1(0, 0, 7, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PDTCH, data, f__pcu__to__l1_expect__data_defval, f__pcu__to__l1_wait__rts_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_pdtch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__ptcch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5675, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_ptcch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_ptcch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5676);
/* BTS_Tests.ttcn, line 5676 */
OCTETSTRING data((os_16 + Osmocom__Types::f__rnd__octstring(21)));
current_location.update_lineno(5678);
/* BTS_Tests.ttcn, line 5678 */
f__TC__pcu__init();
current_location.update_lineno(5680);
/* BTS_Tests.ttcn, line 5680 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5681);
/* BTS_Tests.ttcn, line 5681 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(5683);
/* BTS_Tests.ttcn, line 5683 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_start__fn_defval, L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_dl__tfi_defval), FALSE, NULL);
current_location.update_lineno(5684);
/* BTS_Tests.ttcn, line 5684 */
f__pcu__to__l1(0, 0, 7, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PTCCH, data, f__pcu__to__l1_expect__data_defval, f__pcu__to__l1_wait__rts_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_ptcch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__pcu__ptcch__ul(const INTEGER& ra)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5687, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_ptcch_ul");
current_location.update_lineno(5689);
/* BTS_Tests.ttcn, line 5689 */
PCUIF__Types::PCUIF__Message_template pcu__rach__ind;
current_location.update_lineno(5690);
/* BTS_Tests.ttcn, line 5690 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5691);
/* BTS_Tests.ttcn, line 5691 */
INTEGER fn;
current_location.update_lineno(5692);
/* BTS_Tests.ttcn, line 5692 */
TIMER T("T");
current_location.update_lineno(5695);
/* BTS_Tests.ttcn, line 5695 */
fn = L1CTL__PortType::f__L1CTL__RACH(test__CT_component_L1CTL, ra, 0, 0, GSM__Types::ts__RslChanNr__PDCH(7), GSM__Types::ts__RslLinkID__OSMO__PTCCH(0));
current_location.update_lineno(5699);
/* BTS_Tests.ttcn, line 5699 */
pcu__rach__ind = PCUIF__Types::tr__PCUIF__RACH__IND(INTEGER_template(0), INTEGER_template(0), INTEGER_template(7), INTEGER_template(ra), PCUIF__Types::tr__PCUIF__RACH__IND_is__11bit_defval, PCUIF__Types::tr__PCUIF__RACH__IND_burst__type_defval, INTEGER_template(fn), PCUIF__Types::PCUIF__Sapi_template(PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PTCCH));
current_location.update_lineno(5703);
/* BTS_Tests.ttcn, line 5703 */
T.start(2.3998e-1);
current_location.update_lineno(5704);
/* BTS_Tests.ttcn, line 5704 */
{
tmp_660:
alt_status tmp_660_alt_flag_0 = ALT_MAYBE;
alt_status tmp_660_alt_flag_1 = ALT_MAYBE;
alt_status tmp_660_alt_flag_2 = ALT_MAYBE;
alt_status tmp_660_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_660_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5705);
/* BTS_Tests.ttcn, line 5705 */
{
PCUIF__Types::PCUIF__Message tmp_661;
PCUIF__Types::PCUIF__Message_template tmp_662;
tmp_662 = pcu__rach__ind;
tmp_662.check_restriction(TR_PRESENT);
tmp_660_alt_flag_0 = as__pcuif__msg_instance(tmp_661, tmp_662, first_run);
if (tmp_661.is_bound()) msg = tmp_661;
}
if (tmp_660_alt_flag_0 == ALT_REPEAT) goto tmp_660;
if (tmp_660_alt_flag_0 == ALT_BREAK) break;
if (tmp_660_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5706);
/* BTS_Tests.ttcn, line 5706 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Rx an Access Burst on the PCU interface: ");
msg.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(5707);
/* BTS_Tests.ttcn, line 5707 */
TTCN_Runtime::setverdict(PASS);
current_location.update_lineno(5708);
/* BTS_Tests.ttcn, line 5708 */
T.stop();
break;
}
}
if (tmp_660_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5710);
/* BTS_Tests.ttcn, line 5710 */
tmp_660_alt_flag_1 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_660_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5710);
/* BTS_Tests.ttcn, line 5710 */
goto tmp_660;
}
}
if (tmp_660_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5711);
/* BTS_Tests.ttcn, line 5711 */
tmp_660_alt_flag_2 = T.timeout(NULL);
if (tmp_660_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5712);
/* BTS_Tests.ttcn, line 5712 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for RACH.ind on the PCU interface"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_660_default_flag == ALT_MAYBE) {
tmp_660_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_660_default_flag == ALT_YES || tmp_660_default_flag == ALT_BREAK) break;
else if (tmp_660_default_flag == ALT_REPEAT) goto tmp_660;
}
current_location.update_lineno(5704);
/* BTS_Tests.ttcn, line 5704 */
if (tmp_660_alt_flag_0 == ALT_NO && tmp_660_alt_flag_1 == ALT_NO && tmp_660_alt_flag_2 == ALT_NO && tmp_660_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5704 and 5715.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__TC__pcu__ptcch__ul(const COMPONENT& component_reference, const INTEGER& ra)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_ptcch_ul(");
ra.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_ptcch_ul", text_buf);
ra.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__ptcch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5718, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_ptcch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_ptcch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5719);
/* BTS_Tests.ttcn, line 5719 */
L1CTL__Types::L1ctlMessage dl;
current_location.update_lineno(5720);
/* BTS_Tests.ttcn, line 5720 */
OCTETSTRING data;
current_location.update_lineno(5721);
/* BTS_Tests.ttcn, line 5721 */
TIMER T("T");
current_location.update_lineno(5723);
/* BTS_Tests.ttcn, line 5723 */
f__init__with__pcuif();
current_location.update_lineno(5724);
/* BTS_Tests.ttcn, line 5724 */
f__init__l1ctl();
current_location.update_lineno(5725);
/* BTS_Tests.ttcn, line 5725 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(5728);
/* BTS_Tests.ttcn, line 5728 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5731);
/* BTS_Tests.ttcn, line 5731 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(5732);
/* BTS_Tests.ttcn, line 5732 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_start__fn_defval, L1CTL__Types::ts__L1CTL__GPRS__DL__TBF__CFG__REQ_dl__tfi_defval), FALSE, NULL);
{
current_location.update_lineno(5735);
/* BTS_Tests.ttcn, line 5735 */
INTEGER i(0);
current_location.update_lineno(5735);
/* BTS_Tests.ttcn, line 5735 */
for ( ; ; ) {
current_location.update_lineno(5735);
/* BTS_Tests.ttcn, line 5735 */
if (!(i < 16)) break;
current_location.update_lineno(5736);
/* BTS_Tests.ttcn, line 5736 */
TTCN_Logger::log_str(TTCN_USER, "Sending an Access Burst towards the L1CTL interface");
current_location.update_lineno(5737);
/* BTS_Tests.ttcn, line 5737 */
f__TC__pcu__ptcch__ul(oct2int(Osmocom__Types::f__rnd__ra__ps()));
current_location.update_lineno(5735);
/* BTS_Tests.ttcn, line 5735 */
{
INTEGER tmp_663;
++i;
}
}
}
current_location.update_lineno(5741);
/* BTS_Tests.ttcn, line 5741 */
data = Osmocom__Types::f__rnd__octstring(23);
current_location.update_lineno(5744);
/* BTS_Tests.ttcn, line 5744 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Sending a PTCCH/D block towards the PCU interface: ");
data.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(5745);
/* BTS_Tests.ttcn, line 5745 */
f__pcu__wait__rts__and__data__req(0, 0, 7, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PTCCH, data);
current_location.update_lineno(5749);
/* BTS_Tests.ttcn, line 5749 */
T.start(9.5992e-1);
current_location.update_lineno(5750);
/* BTS_Tests.ttcn, line 5750 */
{
tmp_665:
alt_status tmp_665_alt_flag_0 = ALT_MAYBE;
alt_status tmp_665_alt_flag_1 = ALT_MAYBE;
alt_status tmp_665_alt_flag_2 = ALT_MAYBE;
alt_status tmp_665_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_665_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5751);
/* BTS_Tests.ttcn, line 5751 */
tmp_665_alt_flag_0 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND(INTEGER_template(ANY_VALUE), INTEGER_template(7), L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_usf_defval, OCTETSTRING_template(data), L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ber10k_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_ci__cb_defval, L1CTL__Types::tr__L1CTL__GPRS__DL__BLOCK__IND_rx__level_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_665_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5752);
/* BTS_Tests.ttcn, line 5752 */
TTCN_Runtime::setverdict(PASS);
current_location.update_lineno(5753);
/* BTS_Tests.ttcn, line 5753 */
T.stop();
break;
}
}
if (tmp_665_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5755);
/* BTS_Tests.ttcn, line 5755 */
tmp_665_alt_flag_1 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_665_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5755);
/* BTS_Tests.ttcn, line 5755 */
goto tmp_665;
}
}
if (tmp_665_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5756);
/* BTS_Tests.ttcn, line 5756 */
tmp_665_alt_flag_2 = T.timeout(NULL);
if (tmp_665_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5757);
/* BTS_Tests.ttcn, line 5757 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting DL BLOCK.ind with PTCCH/D"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_665_default_flag == ALT_MAYBE) {
tmp_665_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_665_default_flag == ALT_YES || tmp_665_default_flag == ALT_BREAK) break;
else if (tmp_665_default_flag == ALT_REPEAT) goto tmp_665;
}
current_location.update_lineno(5750);
/* BTS_Tests.ttcn, line 5750 */
if (tmp_665_alt_flag_0 == ALT_NO && tmp_665_alt_flag_1 == ALT_NO && tmp_665_alt_flag_2 == ALT_NO && tmp_665_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5750 and 5759.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_ptcch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__agch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5763, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_agch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_agch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5764);
/* BTS_Tests.ttcn, line 5764 */
TIMER T("T", 3.0);
current_location.update_lineno(5765);
/* BTS_Tests.ttcn, line 5765 */
f__init__with__pcuif();
current_location.update_lineno(5766);
/* BTS_Tests.ttcn, line 5766 */
f__init__l1ctl();
current_location.update_lineno(5767);
/* BTS_Tests.ttcn, line 5767 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(5769);
/* BTS_Tests.ttcn, line 5769 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5770);
/* BTS_Tests.ttcn, line 5770 */
PCUIF__CodecPort::f__PCUIF__tx__mac__block__agch(test__CT_component_PCU, test__CT_component_g__pcu__conn__id, os_15, FALSE, PCUIF__CodecPort::f__PCUIF__tx__mac__block__agch_bts__nr_defval, FALSE, os_5);
current_location.update_lineno(5773);
/* BTS_Tests.ttcn, line 5773 */
T.start();
current_location.update_lineno(5774);
/* BTS_Tests.ttcn, line 5774 */
{
tmp_666:
alt_status tmp_666_alt_flag_0 = ALT_MAYBE;
alt_status tmp_666_alt_flag_1 = ALT_MAYBE;
alt_status tmp_666_alt_flag_2 = ALT_MAYBE;
alt_status tmp_666_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_666_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5775);
/* BTS_Tests.ttcn, line 5775 */
tmp_666_alt_flag_0 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), OCTETSTRING_template(os_15), L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_666_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5776);
/* BTS_Tests.ttcn, line 5776 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_666_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5778);
/* BTS_Tests.ttcn, line 5778 */
tmp_666_alt_flag_1 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_666_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5778);
/* BTS_Tests.ttcn, line 5778 */
goto tmp_666;
}
}
if (tmp_666_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5779);
/* BTS_Tests.ttcn, line 5779 */
tmp_666_alt_flag_2 = T.timeout(NULL);
if (tmp_666_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5780);
/* BTS_Tests.ttcn, line 5780 */
Misc__Helpers::f__shutdown(cs_4, 5780, FAIL, cs_96);
break;
}
}
if (tmp_666_default_flag == ALT_MAYBE) {
tmp_666_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_666_default_flag == ALT_YES || tmp_666_default_flag == ALT_BREAK) break;
else if (tmp_666_default_flag == ALT_REPEAT) goto tmp_666;
}
current_location.update_lineno(5774);
/* BTS_Tests.ttcn, line 5774 */
if (tmp_666_alt_flag_0 == ALT_NO && tmp_666_alt_flag_1 == ALT_NO && tmp_666_alt_flag_2 == ALT_NO && tmp_666_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5774 and 5782.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_agch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__pch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5786, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_pch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_pch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5787);
/* BTS_Tests.ttcn, line 5787 */
TIMER T("T", 3.0);
current_location.update_lineno(5788);
/* BTS_Tests.ttcn, line 5788 */
f__init__with__pcuif();
current_location.update_lineno(5789);
/* BTS_Tests.ttcn, line 5789 */
f__init__l1ctl();
current_location.update_lineno(5790);
/* BTS_Tests.ttcn, line 5790 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(5792);
/* BTS_Tests.ttcn, line 5792 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(5794);
/* BTS_Tests.ttcn, line 5794 */
PCUIF__Types::PCUIF__pch pch;
pch.msg__id() = os_17;
pch.imsi() = cs_97;
pch.data() = os_15;
pch.confirm() = FALSE;
current_location.update_lineno(5800);
/* BTS_Tests.ttcn, line 5800 */
f__pcu__data__req(0, 0, 0, 0, 0, PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PCH__2, PCUIF__Types::enc__PCUIF__pch(pch));
current_location.update_lineno(5802);
/* BTS_Tests.ttcn, line 5802 */
T.start();
current_location.update_lineno(5803);
/* BTS_Tests.ttcn, line 5803 */
{
tmp_667:
alt_status tmp_667_alt_flag_0 = ALT_MAYBE;
alt_status tmp_667_alt_flag_1 = ALT_MAYBE;
alt_status tmp_667_alt_flag_2 = ALT_MAYBE;
alt_status tmp_667_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_667_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5804);
/* BTS_Tests.ttcn, line 5804 */
tmp_667_alt_flag_0 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), OCTETSTRING_template(os_15), L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_667_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5805);
/* BTS_Tests.ttcn, line 5805 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_667_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5807);
/* BTS_Tests.ttcn, line 5807 */
tmp_667_alt_flag_1 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_667_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5807);
/* BTS_Tests.ttcn, line 5807 */
goto tmp_667;
}
}
if (tmp_667_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5808);
/* BTS_Tests.ttcn, line 5808 */
tmp_667_alt_flag_2 = T.timeout(NULL);
if (tmp_667_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5809);
/* BTS_Tests.ttcn, line 5809 */
Misc__Helpers::f__shutdown(cs_4, 5809, FAIL, cs_98);
break;
}
}
if (tmp_667_default_flag == ALT_MAYBE) {
tmp_667_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_667_default_flag == ALT_YES || tmp_667_default_flag == ALT_BREAK) break;
else if (tmp_667_default_flag == ALT_REPEAT) goto tmp_667;
}
current_location.update_lineno(5803);
/* BTS_Tests.ttcn, line 5803 */
if (tmp_667_alt_flag_0 == ALT_NO && tmp_667_alt_flag_1 == ALT_NO && tmp_667_alt_flag_2 == ALT_NO && tmp_667_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5803 and 5811.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_pch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__imm__ass__pch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5815, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_imm_ass_pch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_imm_ass_pch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5816);
/* BTS_Tests.ttcn, line 5816 */
OCTETSTRING req__ref(Osmocom__Types::f__rnd__octstring(3));
current_location.update_lineno(5817);
/* BTS_Tests.ttcn, line 5817 */
OCTETSTRING tlli(Osmocom__Types::f__rnd__octstring(4));
current_location.update_lineno(5818);
/* BTS_Tests.ttcn, line 5818 */
OCTETSTRING imm__ass(((((os_18 + req__ref) + os_19) + tlli) + os_20));
current_location.update_lineno(5819);
/* BTS_Tests.ttcn, line 5819 */
f__init__with__pcuif();
current_location.update_lineno(5820);
/* BTS_Tests.ttcn, line 5820 */
f__init__l1ctl();
current_location.update_lineno(5821);
/* BTS_Tests.ttcn, line 5821 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(5824);
/* BTS_Tests.ttcn, line 5824 */
PCUIF__CodecPort::f__PCUIF__tx__imm__ass__pch(test__CT_component_PCU, test__CT_component_g__pcu__conn__id, imm__ass, hs_1, PCUIF__CodecPort::f__PCUIF__tx__imm__ass__pch_bts__nr_defval, PCUIF__CodecPort::f__PCUIF__tx__imm__ass__pch_wait__for__cnf_defval, PCUIF__CodecPort::f__PCUIF__tx__imm__ass__pch_msg__id_defval);
current_location.update_lineno(5826);
/* BTS_Tests.ttcn, line 5826 */
TIMER T("T", 5.0e-1);
current_location.update_lineno(5827);
/* BTS_Tests.ttcn, line 5827 */
T.start();
current_location.update_lineno(5828);
/* BTS_Tests.ttcn, line 5828 */
{
tmp_668:
alt_status tmp_668_alt_flag_0 = ALT_MAYBE;
alt_status tmp_668_alt_flag_1 = ALT_MAYBE;
alt_status tmp_668_alt_flag_2 = ALT_MAYBE;
alt_status tmp_668_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_668_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5829);
/* BTS_Tests.ttcn, line 5829 */
tmp_668_alt_flag_0 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), OCTETSTRING_template(imm__ass), L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_668_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5831);
/* BTS_Tests.ttcn, line 5831 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_668_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5833);
/* BTS_Tests.ttcn, line 5833 */
tmp_668_alt_flag_1 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_668_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5833);
/* BTS_Tests.ttcn, line 5833 */
goto tmp_668;
}
}
if (tmp_668_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5834);
/* BTS_Tests.ttcn, line 5834 */
tmp_668_alt_flag_2 = T.timeout(NULL);
if (tmp_668_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5835);
/* BTS_Tests.ttcn, line 5835 */
Misc__Helpers::f__shutdown(cs_4, 5835, FAIL, cs_98);
break;
}
}
if (tmp_668_default_flag == ALT_MAYBE) {
tmp_668_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_668_default_flag == ALT_YES || tmp_668_default_flag == ALT_BREAK) break;
else if (tmp_668_default_flag == ALT_REPEAT) goto tmp_668;
}
current_location.update_lineno(5828);
/* BTS_Tests.ttcn, line 5828 */
if (tmp_668_alt_flag_0 == ALT_NO && tmp_668_alt_flag_1 == ALT_NO && tmp_668_alt_flag_2 == ALT_NO && tmp_668_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5828 and 5837.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_imm_ass_pch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__data__req__imm__ass__agch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5841, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_req_imm_ass_agch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_req_imm_ass_agch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5842);
/* BTS_Tests.ttcn, line 5842 */
OCTETSTRING req__ref(Osmocom__Types::f__rnd__octstring(3));
current_location.update_lineno(5843);
/* BTS_Tests.ttcn, line 5843 */
OCTETSTRING tlli(Osmocom__Types::f__rnd__octstring(4));
current_location.update_lineno(5844);
/* BTS_Tests.ttcn, line 5844 */
OCTETSTRING imm__ass(((((os_18 + req__ref) + os_19) + tlli) + os_20));
current_location.update_lineno(5845);
/* BTS_Tests.ttcn, line 5845 */
f__init__with__pcuif();
current_location.update_lineno(5846);
/* BTS_Tests.ttcn, line 5846 */
f__init__l1ctl();
current_location.update_lineno(5847);
/* BTS_Tests.ttcn, line 5847 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(5849);
/* BTS_Tests.ttcn, line 5849 */
PCUIF__CodecPort::f__PCUIF__tx__mac__block__agch(test__CT_component_PCU, test__CT_component_g__pcu__conn__id, imm__ass, PCUIF__CodecPort::f__PCUIF__tx__mac__block__agch_confirm_defval, PCUIF__CodecPort::f__PCUIF__tx__mac__block__agch_bts__nr_defval, PCUIF__CodecPort::f__PCUIF__tx__mac__block__agch_wait__for__cnf_defval, PCUIF__CodecPort::f__PCUIF__tx__mac__block__agch_msg__id_defval);
current_location.update_lineno(5851);
/* BTS_Tests.ttcn, line 5851 */
TIMER T("T", 5.0e-1);
current_location.update_lineno(5852);
/* BTS_Tests.ttcn, line 5852 */
T.start();
current_location.update_lineno(5853);
/* BTS_Tests.ttcn, line 5853 */
{
tmp_669:
alt_status tmp_669_alt_flag_0 = ALT_MAYBE;
alt_status tmp_669_alt_flag_1 = ALT_MAYBE;
alt_status tmp_669_alt_flag_2 = ALT_MAYBE;
alt_status tmp_669_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_669_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5854);
/* BTS_Tests.ttcn, line 5854 */
tmp_669_alt_flag_0 = test__CT_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), OCTETSTRING_template(imm__ass), L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_669_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5855);
/* BTS_Tests.ttcn, line 5855 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_669_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5857);
/* BTS_Tests.ttcn, line 5857 */
tmp_669_alt_flag_1 = test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_669_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5857);
/* BTS_Tests.ttcn, line 5857 */
goto tmp_669;
}
}
if (tmp_669_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5858);
/* BTS_Tests.ttcn, line 5858 */
tmp_669_alt_flag_2 = T.timeout(NULL);
if (tmp_669_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5859);
/* BTS_Tests.ttcn, line 5859 */
Misc__Helpers::f__shutdown(cs_4, 5859, FAIL, cs_96);
break;
}
}
if (tmp_669_default_flag == ALT_MAYBE) {
tmp_669_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_669_default_flag == ALT_YES || tmp_669_default_flag == ALT_BREAK) break;
else if (tmp_669_default_flag == ALT_REPEAT) goto tmp_669;
}
current_location.update_lineno(5853);
/* BTS_Tests.ttcn, line 5853 */
if (tmp_669_alt_flag_0 == ALT_NO && tmp_669_alt_flag_1 == ALT_NO && tmp_669_alt_flag_2 == ALT_NO && tmp_669_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5853 and 5861.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_req_imm_ass_agch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__rach__content(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5865, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_rach_content");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_rach_content", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5866);
/* BTS_Tests.ttcn, line 5866 */
f__init__with__pcuif();
current_location.update_lineno(5867);
/* BTS_Tests.ttcn, line 5867 */
f__init__l1ctl();
current_location.update_lineno(5868);
/* BTS_Tests.ttcn, line 5868 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(5870);
/* BTS_Tests.ttcn, line 5870 */
INTEGER fn__last(0);
{
current_location.update_lineno(5871);
/* BTS_Tests.ttcn, line 5871 */
INTEGER i(0);
current_location.update_lineno(5871);
/* BTS_Tests.ttcn, line 5871 */
for ( ; ; ) {
current_location.update_lineno(5871);
/* BTS_Tests.ttcn, line 5871 */
if (!(i < 1000)) break;
current_location.update_lineno(5872);
/* BTS_Tests.ttcn, line 5872 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5873);
/* BTS_Tests.ttcn, line 5873 */
OCTETSTRING ra(Osmocom__Types::f__rnd__ra__ps());
current_location.update_lineno(5874);
/* BTS_Tests.ttcn, line 5874 */
INTEGER fn(L1CTL__PortType::f__L1CTL__RACH(test__CT_component_L1CTL, oct2int(ra), L1CTL__PortType::f__L1CTL__RACH_combined_defval, L1CTL__PortType::f__L1CTL__RACH_offset_defval, L1CTL__PortType::f__L1CTL__RACH_chan__nr_defval, L1CTL__PortType::f__L1CTL__RACH_link__id_defval));
current_location.update_lineno(5875);
/* BTS_Tests.ttcn, line 5875 */
if ((fn == fn__last)) {
current_location.update_lineno(5876);
/* BTS_Tests.ttcn, line 5876 */
Misc__Helpers::f__shutdown(cs_4, 5876, FAIL, cs_33);
}
current_location.update_lineno(5878);
/* BTS_Tests.ttcn, line 5878 */
fn__last = fn;
current_location.update_lineno(5880);
/* BTS_Tests.ttcn, line 5880 */
TIMER T("T", 2.0);
current_location.update_lineno(5881);
/* BTS_Tests.ttcn, line 5881 */
T.start();
current_location.update_lineno(5882);
/* BTS_Tests.ttcn, line 5882 */
{
tmp_671:
alt_status tmp_671_alt_flag_0 = ALT_MAYBE;
alt_status tmp_671_alt_flag_1 = ALT_MAYBE;
alt_status tmp_671_alt_flag_2 = ALT_MAYBE;
alt_status tmp_671_alt_flag_3 = ALT_MAYBE;
alt_status tmp_671_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_671_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5883);
/* BTS_Tests.ttcn, line 5883 */
{
PCUIF__Types::PCUIF__Message tmp_672;
tmp_671_alt_flag_0 = as__pcuif__msg_instance(tmp_672, PCUIF__Types::tr__PCUIF__RACH__IND(INTEGER_template(0), INTEGER_template(0), INTEGER_template(0), INTEGER_template(oct2int(ra)), INTEGER_template(0), PCUIF__Types::PCUIF__BurstType_template(ANY_VALUE), INTEGER_template(fn), PCUIF__Types::tr__PCUIF__RACH__IND_sapi_defval), first_run);
if (tmp_672.is_bound()) msg = tmp_672;
}
if (tmp_671_alt_flag_0 == ALT_REPEAT) goto tmp_671;
if (tmp_671_alt_flag_0 == ALT_BREAK) break;
if (tmp_671_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5884);
/* BTS_Tests.ttcn, line 5884 */
T.stop();
break;
}
}
if (tmp_671_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5886);
/* BTS_Tests.ttcn, line 5886 */
{
PCUIF__Types::PCUIF__Message tmp_673;
tmp_671_alt_flag_1 = as__pcuif__msg_instance(tmp_673, PCUIF__Types::tr__PCUIF__RACH__IND(PCUIF__Types::tr__PCUIF__RACH__IND_bts__nr_defval, PCUIF__Types::tr__PCUIF__RACH__IND_trx__nr_defval, PCUIF__Types::tr__PCUIF__RACH__IND_ts__nr_defval, PCUIF__Types::tr__PCUIF__RACH__IND_ra_defval, PCUIF__Types::tr__PCUIF__RACH__IND_is__11bit_defval, PCUIF__Types::tr__PCUIF__RACH__IND_burst__type_defval, PCUIF__Types::tr__PCUIF__RACH__IND_fn_defval, PCUIF__Types::tr__PCUIF__RACH__IND_sapi_defval), first_run);
if (tmp_673.is_bound()) msg = tmp_673;
}
if (tmp_671_alt_flag_1 == ALT_REPEAT) goto tmp_671;
if (tmp_671_alt_flag_1 == ALT_BREAK) break;
if (tmp_671_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5887);
/* BTS_Tests.ttcn, line 5887 */
Misc__Helpers::f__shutdown(cs_4, 5887, FAIL, cs_99);
break;
}
}
if (tmp_671_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5889);
/* BTS_Tests.ttcn, line 5889 */
tmp_671_alt_flag_2 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_671_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5889);
/* BTS_Tests.ttcn, line 5889 */
goto tmp_671;
}
}
if (tmp_671_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(5890);
/* BTS_Tests.ttcn, line 5890 */
tmp_671_alt_flag_3 = T.timeout(NULL);
if (tmp_671_alt_flag_3 == ALT_YES) {
current_location.update_lineno(5891);
/* BTS_Tests.ttcn, line 5891 */
Misc__Helpers::f__shutdown(cs_4, 5891, FAIL, cs_100);
break;
}
}
if (tmp_671_default_flag == ALT_MAYBE) {
tmp_671_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_671_default_flag == ALT_YES || tmp_671_default_flag == ALT_BREAK) break;
else if (tmp_671_default_flag == ALT_REPEAT) goto tmp_671;
}
current_location.update_lineno(5882);
/* BTS_Tests.ttcn, line 5882 */
if (tmp_671_alt_flag_0 == ALT_NO && tmp_671_alt_flag_1 == ALT_NO && tmp_671_alt_flag_2 == ALT_NO && tmp_671_alt_flag_3 == ALT_NO && tmp_671_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5882 and 5893.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5871);
/* BTS_Tests.ttcn, line 5871 */
{
INTEGER tmp_674;
++i;
}
}
}
current_location.update_lineno(5895);
/* BTS_Tests.ttcn, line 5895 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_rach_content was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__ext__rach__content(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5900, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_ext_rach_content");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_ext_rach_content", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5901);
/* BTS_Tests.ttcn, line 5901 */
PCUIF__Types::PCUIF__Message_template pcu__rach__ind;
current_location.update_lineno(5902);
/* BTS_Tests.ttcn, line 5902 */
INTEGER fn__last(0);
current_location.update_lineno(5903);
/* BTS_Tests.ttcn, line 5903 */
L1CTL__Types::L1ctlRachSynchSeq synch__seq;
current_location.update_lineno(5904);
/* BTS_Tests.ttcn, line 5904 */
PCUIF__Types::PCUIF__BurstType pcu__bt;
current_location.update_lineno(5905);
/* BTS_Tests.ttcn, line 5905 */
INTEGER fn;
current_location.update_lineno(5906);
/* BTS_Tests.ttcn, line 5906 */
BITSTRING ra11;
current_location.update_lineno(5908);
/* BTS_Tests.ttcn, line 5908 */
f__init__with__pcuif();
current_location.update_lineno(5909);
/* BTS_Tests.ttcn, line 5909 */
f__init__l1ctl();
current_location.update_lineno(5910);
/* BTS_Tests.ttcn, line 5910 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
{
current_location.update_lineno(5912);
/* BTS_Tests.ttcn, line 5912 */
INTEGER i(0);
current_location.update_lineno(5912);
/* BTS_Tests.ttcn, line 5912 */
for ( ; ; ) {
current_location.update_lineno(5912);
/* BTS_Tests.ttcn, line 5912 */
if (!(i < 1000)) break;
current_location.update_lineno(5914);
/* BTS_Tests.ttcn, line 5914 */
if ((rem(i, 2) == 0)) {
current_location.update_lineno(5915);
/* BTS_Tests.ttcn, line 5915 */
synch__seq = L1CTL__Types::L1ctlRachSynchSeq::RACH__SYNCH__SEQ__TS1;
current_location.update_lineno(5916);
/* BTS_Tests.ttcn, line 5916 */
pcu__bt = PCUIF__Types::PCUIF__BurstType::BURST__TYPE__1;
}
else {
current_location.update_lineno(5918);
/* BTS_Tests.ttcn, line 5918 */
synch__seq = L1CTL__Types::L1ctlRachSynchSeq::RACH__SYNCH__SEQ__TS2;
current_location.update_lineno(5919);
/* BTS_Tests.ttcn, line 5919 */
pcu__bt = PCUIF__Types::PCUIF__BurstType::BURST__TYPE__2;
}
current_location.update_lineno(5922);
/* BTS_Tests.ttcn, line 5922 */
ra11 = Osmocom__Types::f__rnd__ra11__ps();
current_location.update_lineno(5923);
/* BTS_Tests.ttcn, line 5923 */
fn = L1CTL__PortType::f__L1CTL__EXT__RACH(test__CT_component_L1CTL, bit2int(ra11), synch__seq, L1CTL__PortType::f__L1CTL__EXT__RACH_combined_defval, L1CTL__PortType::f__L1CTL__EXT__RACH_offset_defval);
current_location.update_lineno(5924);
/* BTS_Tests.ttcn, line 5924 */
if ((fn == fn__last)) {
current_location.update_lineno(5925);
/* BTS_Tests.ttcn, line 5925 */
Misc__Helpers::f__shutdown(cs_4, 5925, FAIL, cs_33);
}
current_location.update_lineno(5928);
/* BTS_Tests.ttcn, line 5928 */
fn__last = fn;
current_location.update_lineno(5931);
/* BTS_Tests.ttcn, line 5931 */
pcu__rach__ind = PCUIF__Types::tr__PCUIF__RACH__IND(INTEGER_template(0), INTEGER_template(0), INTEGER_template(0), INTEGER_template(bit2int(ra11)), INTEGER_template(1), PCUIF__Types::PCUIF__BurstType_template(pcu__bt), INTEGER_template(fn), PCUIF__Types::tr__PCUIF__RACH__IND_sapi_defval);
current_location.update_lineno(5938);
/* BTS_Tests.ttcn, line 5938 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5939);
/* BTS_Tests.ttcn, line 5939 */
TIMER T("T", 2.0);
current_location.update_lineno(5940);
/* BTS_Tests.ttcn, line 5940 */
T.start();
current_location.update_lineno(5941);
/* BTS_Tests.ttcn, line 5941 */
{
tmp_683:
alt_status tmp_683_alt_flag_0 = ALT_MAYBE;
alt_status tmp_683_alt_flag_1 = ALT_MAYBE;
alt_status tmp_683_alt_flag_2 = ALT_MAYBE;
alt_status tmp_683_alt_flag_3 = ALT_MAYBE;
alt_status tmp_683_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_683_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5942);
/* BTS_Tests.ttcn, line 5942 */
{
PCUIF__Types::PCUIF__Message tmp_684;
PCUIF__Types::PCUIF__Message_template tmp_685;
tmp_685 = pcu__rach__ind;
tmp_685.check_restriction(TR_PRESENT);
tmp_683_alt_flag_0 = as__pcuif__msg_instance(tmp_684, tmp_685, first_run);
if (tmp_684.is_bound()) msg = tmp_684;
}
if (tmp_683_alt_flag_0 == ALT_REPEAT) goto tmp_683;
if (tmp_683_alt_flag_0 == ALT_BREAK) break;
if (tmp_683_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5943);
/* BTS_Tests.ttcn, line 5943 */
T.stop();
break;
}
}
if (tmp_683_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5945);
/* BTS_Tests.ttcn, line 5945 */
{
PCUIF__Types::PCUIF__Message tmp_686;
tmp_683_alt_flag_1 = as__pcuif__msg_instance(tmp_686, PCUIF__Types::tr__PCUIF__RACH__IND(PCUIF__Types::tr__PCUIF__RACH__IND_bts__nr_defval, PCUIF__Types::tr__PCUIF__RACH__IND_trx__nr_defval, PCUIF__Types::tr__PCUIF__RACH__IND_ts__nr_defval, PCUIF__Types::tr__PCUIF__RACH__IND_ra_defval, PCUIF__Types::tr__PCUIF__RACH__IND_is__11bit_defval, PCUIF__Types::tr__PCUIF__RACH__IND_burst__type_defval, PCUIF__Types::tr__PCUIF__RACH__IND_fn_defval, PCUIF__Types::tr__PCUIF__RACH__IND_sapi_defval), first_run);
if (tmp_686.is_bound()) msg = tmp_686;
}
if (tmp_683_alt_flag_1 == ALT_REPEAT) goto tmp_683;
if (tmp_683_alt_flag_1 == ALT_BREAK) break;
if (tmp_683_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5946);
/* BTS_Tests.ttcn, line 5946 */
Misc__Helpers::f__shutdown(cs_4, 5946, FAIL, cs_99);
break;
}
}
if (tmp_683_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5948);
/* BTS_Tests.ttcn, line 5948 */
tmp_683_alt_flag_2 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_683_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5948);
/* BTS_Tests.ttcn, line 5948 */
goto tmp_683;
}
}
if (tmp_683_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(5949);
/* BTS_Tests.ttcn, line 5949 */
tmp_683_alt_flag_3 = T.timeout(NULL);
if (tmp_683_alt_flag_3 == ALT_YES) {
current_location.update_lineno(5950);
/* BTS_Tests.ttcn, line 5950 */
Misc__Helpers::f__shutdown(cs_4, 5950, FAIL, cs_100);
break;
}
}
if (tmp_683_default_flag == ALT_MAYBE) {
tmp_683_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_683_default_flag == ALT_YES || tmp_683_default_flag == ALT_BREAK) break;
else if (tmp_683_default_flag == ALT_REPEAT) goto tmp_683;
}
current_location.update_lineno(5941);
/* BTS_Tests.ttcn, line 5941 */
if (tmp_683_alt_flag_0 == ALT_NO && tmp_683_alt_flag_1 == ALT_NO && tmp_683_alt_flag_2 == ALT_NO && tmp_683_alt_flag_3 == ALT_NO && tmp_683_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5941 and 5952.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(5912);
/* BTS_Tests.ttcn, line 5912 */
{
INTEGER tmp_687;
++i;
}
}
}
current_location.update_lineno(5954);
/* BTS_Tests.ttcn, line 5954 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_ext_rach_content was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__pcu__data__ind__lqual__cb(const INTEGER& lqual__cb__exp)
{
TTCN_Location current_location("BTS_Tests.ttcn", 5957, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_data_ind_lqual_cb");
current_location.update_lineno(5959);
/* BTS_Tests.ttcn, line 5959 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(5960);
/* BTS_Tests.ttcn, line 5960 */
TIMER T("T", 1.0);
current_location.update_lineno(5962);
/* BTS_Tests.ttcn, line 5962 */
test__CT_component_L1CTL.clear();
current_location.update_lineno(5963);
/* BTS_Tests.ttcn, line 5963 */
test__CT_component_PCU.clear();
current_location.update_lineno(5966);
/* BTS_Tests.ttcn, line 5966 */
OCTETSTRING data((os_16 + Osmocom__Types::f__rnd__octstring(21)));
current_location.update_lineno(5967);
/* BTS_Tests.ttcn, line 5967 */
f__TC__pcu__tx__ul__block__req(data, INTEGER_template(7), f__TC__pcu__tx__ul__block__req_usf_defval);
current_location.update_lineno(5969);
/* BTS_Tests.ttcn, line 5969 */
T.start();
current_location.update_lineno(5970);
/* BTS_Tests.ttcn, line 5970 */
{
tmp_688:
alt_status tmp_688_alt_flag_0 = ALT_MAYBE;
alt_status tmp_688_alt_flag_1 = ALT_MAYBE;
alt_status tmp_688_alt_flag_2 = ALT_MAYBE;
alt_status tmp_688_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_688_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(5971);
/* BTS_Tests.ttcn, line 5971 */
{
PCUIF__Types::PCUIF__Message tmp_689;
tmp_688_alt_flag_0 = as__pcuif__msg_instance(tmp_689, PCUIF__Types::tr__PCUIF__DATA__IND(PCUIF__Types::tr__PCUIF__DATA__IND_bts__nr_defval, PCUIF__Types::tr__PCUIF__DATA__IND_trx__nr_defval, PCUIF__Types::tr__PCUIF__DATA__IND_ts__nr_defval, PCUIF__Types::tr__PCUIF__DATA__IND_block__nr_defval, PCUIF__Types::tr__PCUIF__DATA__IND_sapi_defval, OCTETSTRING_template(data)), first_run);
if (tmp_689.is_bound()) msg = tmp_689;
}
if (tmp_688_alt_flag_0 == ALT_REPEAT) goto tmp_688;
if (tmp_688_alt_flag_0 == ALT_BREAK) break;
if (tmp_688_alt_flag_0 == ALT_YES) {
current_location.update_lineno(5972);
/* BTS_Tests.ttcn, line 5972 */
INTEGER lqual__cb(const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().data__ind().lqual__cb());
current_location.update_lineno(5973);
/* BTS_Tests.ttcn, line 5973 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Rx PCUIF_DATA.ind (lqual_cb=");
lqual__cb.log();
TTCN_Logger::log_char(')');
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(5976);
/* BTS_Tests.ttcn, line 5976 */
if ((!(INTEGER_template(lqual__cb__exp).match(lqual__cb)))) {
current_location.update_lineno(5977);
/* BTS_Tests.ttcn, line 5977 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Link quality "),lqual__cb.log(),TTCN_Logger::log_event_str(" does not match expected value "),lqual__cb__exp.log(),TTCN_Logger::end_event_log2str()).log(),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(5980);
/* BTS_Tests.ttcn, line 5980 */
TTCN_Runtime::setverdict(PASS);
}
break;
}
}
if (tmp_688_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(5984);
/* BTS_Tests.ttcn, line 5984 */
tmp_688_alt_flag_1 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_688_alt_flag_1 == ALT_YES) {
current_location.update_lineno(5984);
/* BTS_Tests.ttcn, line 5984 */
goto tmp_688;
}
}
if (tmp_688_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(5985);
/* BTS_Tests.ttcn, line 5985 */
tmp_688_alt_flag_2 = T.timeout(NULL);
if (tmp_688_alt_flag_2 == ALT_YES) {
current_location.update_lineno(5986);
/* BTS_Tests.ttcn, line 5986 */
Misc__Helpers::f__shutdown(cs_4, 5986, FAIL, cs_101);
break;
}
}
if (tmp_688_default_flag == ALT_MAYBE) {
tmp_688_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_688_default_flag == ALT_YES || tmp_688_default_flag == ALT_BREAK) break;
else if (tmp_688_default_flag == ALT_REPEAT) goto tmp_688;
}
current_location.update_lineno(5970);
/* BTS_Tests.ttcn, line 5970 */
if (tmp_688_alt_flag_0 == ALT_NO && tmp_688_alt_flag_1 == ALT_NO && tmp_688_alt_flag_2 == ALT_NO && tmp_688_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 5970 and 5989.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__TC__pcu__data__ind__lqual__cb(const COMPONENT& component_reference, const INTEGER& lqual__cb__exp)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_data_ind_lqual_cb(");
lqual__cb__exp.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_data_ind_lqual_cb", text_buf);
lqual__cb__exp.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__data__ind__lqual__cb(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 5993, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_data_ind_lqual_cb");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_data_ind_lqual_cb", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(5994);
/* BTS_Tests.ttcn, line 5994 */
f__init__with__pcuif();
current_location.update_lineno(5995);
/* BTS_Tests.ttcn, line 5995 */
test__CT_component_PCU.clear();
current_location.update_lineno(5997);
/* BTS_Tests.ttcn, line 5997 */
f__init__l1ctl();
current_location.update_lineno(5998);
/* BTS_Tests.ttcn, line 5998 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(6001);
/* BTS_Tests.ttcn, line 6001 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(6004);
/* BTS_Tests.ttcn, line 6004 */
f__TC__pcu__l1ctl__est__pdch(7);
current_location.update_lineno(6005);
/* BTS_Tests.ttcn, line 6005 */
test__CT_component_L1CTL.send(L1CTL__Types::ts__L1CTL__GPRS__UL__TBF__CFG__REQ(INTEGER_template(0), BITSTRING_template(bs_15), L1CTL__Types::ts__L1CTL__GPRS__UL__TBF__CFG__REQ_start__fn_defval), FALSE, NULL);
{
current_location.update_lineno(6008);
/* BTS_Tests.ttcn, line 6008 */
INTEGER i(-256);
current_location.update_lineno(6008);
/* BTS_Tests.ttcn, line 6008 */
for ( ; ; ) {
current_location.update_lineno(6008);
/* BTS_Tests.ttcn, line 6008 */
if (!(i <= 1280)) break;
current_location.update_lineno(6009);
/* BTS_Tests.ttcn, line 6009 */
TRXC__Types::TrxcMessage ret;
current_location.update_lineno(6011);
/* BTS_Tests.ttcn, line 6011 */
ret = TRXC__CodecPort::f__TRXC__transceive(test__CT_component_BTS__TRXC, test__CT_component_g__bts__trxc__conn__id, TRXC__Types::ts__TRXC__FAKE__CI(i, TRXC__Types::ts__TRXC__FAKE__CI_thresh_defval), TRXC__CodecPort::f__TRXC__transceive_tr_defval);
current_location.update_lineno(6013);
/* BTS_Tests.ttcn, line 6013 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Testing C/I=");
i.log();
TTCN_Logger::log_event_str(" cB");
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(6014);
/* BTS_Tests.ttcn, line 6014 */
f__TC__pcu__data__ind__lqual__cb(i);
current_location.update_lineno(6008);
/* BTS_Tests.ttcn, line 6008 */
{
INTEGER tmp_691;
tmp_691 = (i + 128);
i = tmp_691;
}
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_data_ind_lqual_cb was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__paging__from__rsl(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6019, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_paging_from_rsl");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_paging_from_rsl", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6020);
/* BTS_Tests.ttcn, line 6020 */
f__init__with__pcuif();
{
current_location.update_lineno(6022);
/* BTS_Tests.ttcn, line 6022 */
INTEGER i(0);
current_location.update_lineno(6022);
/* BTS_Tests.ttcn, line 6022 */
for ( ; ; ) {
current_location.update_lineno(6022);
/* BTS_Tests.ttcn, line 6022 */
if (!(i < 100)) break;
current_location.update_lineno(6023);
/* BTS_Tests.ttcn, line 6023 */
MobileL3__CommonIE__Types::MobileIdentityLV mi__lv;
current_location.update_lineno(6024);
/* BTS_Tests.ttcn, line 6024 */
OCTETSTRING mi__lv__enc;
current_location.update_lineno(6025);
/* BTS_Tests.ttcn, line 6025 */
MobileL3__CommonIE__Types::MobileIdentityV mi;
current_location.update_lineno(6026);
/* BTS_Tests.ttcn, line 6026 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(6027);
/* BTS_Tests.ttcn, line 6027 */
TIMER T("T", 3.0);
current_location.update_lineno(6029);
/* BTS_Tests.ttcn, line 6029 */
if ((i < 50)) {
current_location.update_lineno(6030);
/* BTS_Tests.ttcn, line 6030 */
mi = L3__Templates::t__MI__TMSI(OCTETSTRING_template(Osmocom__Types::f__rnd__octstring(4))).valueof();
}
else {
current_location.update_lineno(6032);
/* BTS_Tests.ttcn, line 6032 */
mi = L3__Templates::ts__MI__IMSI(Osmocom__Types::f__gen__imsi(i)).valueof();
}
current_location.update_lineno(6036);
/* BTS_Tests.ttcn, line 6036 */
mi__lv = L3__Templates::ts__MI__LV(MobileL3__CommonIE__Types::MobileIdentityV_template(mi)).valueof();
current_location.update_lineno(6037);
/* BTS_Tests.ttcn, line 6037 */
mi__lv__enc = L3__Templates::enc__MobileIdentityLV(mi__lv);
current_location.update_lineno(6038);
/* BTS_Tests.ttcn, line 6038 */
mi__lv__enc = Osmocom__Types::f__pad__oct(mi__lv__enc, 9, os_1);
current_location.update_lineno(6041);
/* BTS_Tests.ttcn, line 6041 */
test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::ts__RSL__PAGING__CMD(mi, mod(i, 4), RSL__Types::ts__RSL__PAGING__CMD_tn_defval), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(6042);
/* BTS_Tests.ttcn, line 6042 */
T.start();
current_location.update_lineno(6043);
/* BTS_Tests.ttcn, line 6043 */
{
tmp_697:
alt_status tmp_697_alt_flag_0 = ALT_MAYBE;
alt_status tmp_697_alt_flag_1 = ALT_MAYBE;
alt_status tmp_697_alt_flag_2 = ALT_MAYBE;
alt_status tmp_697_alt_flag_3 = ALT_MAYBE;
alt_status tmp_697_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_697_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6044);
/* BTS_Tests.ttcn, line 6044 */
{
PCUIF__Types::PCUIF__Message tmp_698;
tmp_697_alt_flag_0 = as__pcuif__msg_instance(tmp_698, PCUIF__Types::tr__PCUIF__PAG__REQ(INTEGER_template(0), OCTETSTRING_template(mi__lv__enc), PCUIF__Types::tr__PCUIF__PAG__REQ_chan__needed_defval, PCUIF__Types::tr__PCUIF__PAG__REQ_sapi_defval), first_run);
if (tmp_698.is_bound()) msg = tmp_698;
}
if (tmp_697_alt_flag_0 == ALT_REPEAT) goto tmp_697;
if (tmp_697_alt_flag_0 == ALT_BREAK) break;
if (tmp_697_alt_flag_0 == ALT_YES) break;
}
if (tmp_697_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6046);
/* BTS_Tests.ttcn, line 6046 */
{
PCUIF__Types::PCUIF__Message tmp_699;
tmp_697_alt_flag_1 = as__pcuif__msg_instance(tmp_699, PCUIF__Types::tr__PCUIF__PAG__REQ(PCUIF__Types::tr__PCUIF__PAG__REQ_bts__nr_defval, PCUIF__Types::tr__PCUIF__PAG__REQ_id__lv_defval, PCUIF__Types::tr__PCUIF__PAG__REQ_chan__needed_defval, PCUIF__Types::tr__PCUIF__PAG__REQ_sapi_defval), first_run);
if (tmp_699.is_bound()) msg = tmp_699;
}
if (tmp_697_alt_flag_1 == ALT_REPEAT) goto tmp_697;
if (tmp_697_alt_flag_1 == ALT_BREAK) break;
if (tmp_697_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6047);
/* BTS_Tests.ttcn, line 6047 */
Misc__Helpers::f__shutdown(cs_4, 6047, FAIL, cs_102);
break;
}
}
if (tmp_697_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6049);
/* BTS_Tests.ttcn, line 6049 */
tmp_697_alt_flag_2 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_697_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6049);
/* BTS_Tests.ttcn, line 6049 */
goto tmp_697;
}
}
if (tmp_697_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(6050);
/* BTS_Tests.ttcn, line 6050 */
tmp_697_alt_flag_3 = T.timeout(NULL);
if (tmp_697_alt_flag_3 == ALT_YES) {
current_location.update_lineno(6051);
/* BTS_Tests.ttcn, line 6051 */
Misc__Helpers::f__shutdown(cs_4, 6051, FAIL, cs_103);
break;
}
}
if (tmp_697_default_flag == ALT_MAYBE) {
tmp_697_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_697_default_flag == ALT_YES || tmp_697_default_flag == ALT_BREAK) break;
else if (tmp_697_default_flag == ALT_REPEAT) goto tmp_697;
}
current_location.update_lineno(6043);
/* BTS_Tests.ttcn, line 6043 */
if (tmp_697_alt_flag_0 == ALT_NO && tmp_697_alt_flag_1 == ALT_NO && tmp_697_alt_flag_2 == ALT_NO && tmp_697_alt_flag_3 == ALT_NO && tmp_697_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6043 and 6053.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6022);
/* BTS_Tests.ttcn, line 6022 */
{
INTEGER tmp_700;
++i;
}
}
}
current_location.update_lineno(6055);
/* BTS_Tests.ttcn, line 6055 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_paging_from_rsl was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__time__ind(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6059, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_time_ind");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_time_ind", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6060);
/* BTS_Tests.ttcn, line 6060 */
INTEGER num__time__ind(0);
current_location.update_lineno(6061);
/* BTS_Tests.ttcn, line 6061 */
INTEGER first__fn;
current_location.update_lineno(6061);
/* BTS_Tests.ttcn, line 6061 */
INTEGER last__fn;
current_location.update_lineno(6062);
/* BTS_Tests.ttcn, line 6062 */
FLOAT test__duration(5.0);
current_location.update_lineno(6063);
/* BTS_Tests.ttcn, line 6063 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(6064);
/* BTS_Tests.ttcn, line 6064 */
TIMER T("T");
current_location.update_lineno(6066);
/* BTS_Tests.ttcn, line 6066 */
f__init__with__pcuif();
current_location.update_lineno(6067);
/* BTS_Tests.ttcn, line 6067 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(6069);
/* BTS_Tests.ttcn, line 6069 */
test__CT_component_PCU.clear();
current_location.update_lineno(6070);
/* BTS_Tests.ttcn, line 6070 */
T.start(test__duration);
current_location.update_lineno(6071);
/* BTS_Tests.ttcn, line 6071 */
{
tmp_701:
alt_status tmp_701_alt_flag_0 = ALT_MAYBE;
alt_status tmp_701_alt_flag_1 = ALT_MAYBE;
alt_status tmp_701_alt_flag_2 = ALT_MAYBE;
alt_status tmp_701_alt_flag_3 = ALT_MAYBE;
alt_status tmp_701_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_701_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6072);
/* BTS_Tests.ttcn, line 6072 */
{
PCUIF__Types::PCUIF__Message tmp_702;
tmp_701_alt_flag_0 = as__pcuif__msg_instance(tmp_702, PCUIF__Types::tr__PCUIF__TIME__IND(INTEGER_template(0), INTEGER_template(ANY_VALUE)), first_run);
if (tmp_702.is_bound()) msg = tmp_702;
}
if (tmp_701_alt_flag_0 == ALT_REPEAT) goto tmp_701;
if (tmp_701_alt_flag_0 == ALT_BREAK) break;
if (tmp_701_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6073);
/* BTS_Tests.ttcn, line 6073 */
{
INTEGER tmp_703;
++num__time__ind;
}
current_location.update_lineno(6074);
/* BTS_Tests.ttcn, line 6074 */
if ((!(first__fn.is_bound()))) {
current_location.update_lineno(6075);
/* BTS_Tests.ttcn, line 6075 */
first__fn = const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().time__ind().fn();
}
current_location.update_lineno(6077);
/* BTS_Tests.ttcn, line 6077 */
last__fn = const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().time__ind().fn();
current_location.update_lineno(6078);
/* BTS_Tests.ttcn, line 6078 */
goto tmp_701;
}
}
if (tmp_701_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6080);
/* BTS_Tests.ttcn, line 6080 */
{
PCUIF__Types::PCUIF__Message tmp_706;
tmp_701_alt_flag_1 = as__pcuif__msg_instance(tmp_706, PCUIF__Types::tr__PCUIF__TIME__IND(INTEGER_template(ANY_VALUE), INTEGER_template(ANY_VALUE)), first_run);
if (tmp_706.is_bound()) msg = tmp_706;
}
if (tmp_701_alt_flag_1 == ALT_REPEAT) goto tmp_701;
if (tmp_701_alt_flag_1 == ALT_BREAK) break;
if (tmp_701_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6081);
/* BTS_Tests.ttcn, line 6081 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Received unexpected PCUIF_TIME_IND: "),msg.log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(6082);
/* BTS_Tests.ttcn, line 6082 */
goto tmp_701;
}
}
if (tmp_701_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6084);
/* BTS_Tests.ttcn, line 6084 */
tmp_701_alt_flag_2 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_701_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6085);
/* BTS_Tests.ttcn, line 6085 */
goto tmp_701;
}
}
if (tmp_701_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(6087);
/* BTS_Tests.ttcn, line 6087 */
tmp_701_alt_flag_3 = T.timeout(NULL);
if (tmp_701_alt_flag_3 == ALT_YES) break;
}
if (tmp_701_default_flag == ALT_MAYBE) {
tmp_701_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_701_default_flag == ALT_YES || tmp_701_default_flag == ALT_BREAK) break;
else if (tmp_701_default_flag == ALT_REPEAT) goto tmp_701;
}
current_location.update_lineno(6071);
/* BTS_Tests.ttcn, line 6071 */
if (tmp_701_alt_flag_0 == ALT_NO && tmp_701_alt_flag_1 == ALT_NO && tmp_701_alt_flag_2 == ALT_NO && tmp_701_alt_flag_3 == ALT_NO && tmp_701_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6071 and 6088.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6089);
/* BTS_Tests.ttcn, line 6089 */
INTEGER fn__expired((last__fn - first__fn));
current_location.update_lineno(6090);
/* BTS_Tests.ttcn, line 6090 */
try {
TTCN_Logger::begin_event(TTCN_USER);
fn__expired.log();
TTCN_Logger::log_event_str(" fn expired with ");
num__time__ind.log();
TTCN_Logger::log_event_str(" PCU_TIME.ind");
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(6093);
/* BTS_Tests.ttcn, line 6093 */
FLOAT c__GSM__FN__DURATION__MS(4.61538);
current_location.update_lineno(6094);
/* BTS_Tests.ttcn, line 6094 */
FLOAT fn__expected(((test__duration * 1.0e3) / 4.61538));
current_location.update_lineno(6095);
/* BTS_Tests.ttcn, line 6095 */
INTEGER_template t__fn__expected(f__tolerance(float2int(fn__expected), 1, 100000, 20));
current_location.update_lineno(6096);
/* BTS_Tests.ttcn, line 6096 */
if ((!(t__fn__expected.match(fn__expired)))) {
current_location.update_lineno(6097);
/* BTS_Tests.ttcn, line 6097 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Number of TDMA Frames ("),fn__expired.log(),TTCN_Logger::log_event_str(") not matching "),t__fn__expected.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6101);
/* BTS_Tests.ttcn, line 6101 */
FLOAT time__ind__expected(((int2float(fn__expired) * 3.0) / 1.3e1));
current_location.update_lineno(6103);
/* BTS_Tests.ttcn, line 6103 */
INTEGER_template t__time__ind__exp(f__tolerance(float2int(time__ind__expected), 1, 100000, 5));
current_location.update_lineno(6104);
/* BTS_Tests.ttcn, line 6104 */
if ((!(t__time__ind__exp.match(num__time__ind)))) {
current_location.update_lineno(6105);
/* BTS_Tests.ttcn, line 6105 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Number of TIME.ind ("),num__time__ind.log(),TTCN_Logger::log_event_str(") not matching "),t__time__ind__exp.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6108);
/* BTS_Tests.ttcn, line 6108 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_time_ind was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__rts__req(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6112, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_rts_req");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_rts_req", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6113);
/* BTS_Tests.ttcn, line 6113 */
INTEGER first__fn;
current_location.update_lineno(6113);
/* BTS_Tests.ttcn, line 6113 */
INTEGER last__fn;
current_location.update_lineno(6114);
/* BTS_Tests.ttcn, line 6114 */
INTEGER num__rts__pdtch(0);
current_location.update_lineno(6115);
/* BTS_Tests.ttcn, line 6115 */
INTEGER num__rts__ptcch(0);
current_location.update_lineno(6116);
/* BTS_Tests.ttcn, line 6116 */
FLOAT test__duration(5.0);
current_location.update_lineno(6117);
/* BTS_Tests.ttcn, line 6117 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(6118);
/* BTS_Tests.ttcn, line 6118 */
TIMER T("T");
current_location.update_lineno(6120);
/* BTS_Tests.ttcn, line 6120 */
f__init__with__pcuif();
current_location.update_lineno(6121);
/* BTS_Tests.ttcn, line 6121 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(6123);
/* BTS_Tests.ttcn, line 6123 */
test__CT_component_PCU.clear();
current_location.update_lineno(6124);
/* BTS_Tests.ttcn, line 6124 */
T.start(test__duration);
current_location.update_lineno(6125);
/* BTS_Tests.ttcn, line 6125 */
{
tmp_707:
alt_status tmp_707_alt_flag_0 = ALT_MAYBE;
alt_status tmp_707_alt_flag_1 = ALT_MAYBE;
alt_status tmp_707_alt_flag_2 = ALT_MAYBE;
alt_status tmp_707_alt_flag_3 = ALT_MAYBE;
alt_status tmp_707_alt_flag_4 = ALT_MAYBE;
alt_status tmp_707_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_707_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6126);
/* BTS_Tests.ttcn, line 6126 */
{
PCUIF__Types::PCUIF__Message tmp_708;
tmp_707_alt_flag_0 = as__pcuif__msg_instance(tmp_708, PCUIF__Types::tr__PCUIF__RTS__REQ(INTEGER_template(0), INTEGER_template(0), INTEGER_template(7), PCUIF__Types::PCUIF__Sapi_template(PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PDTCH), INTEGER_template(ANY_VALUE), INTEGER_template(ANY_VALUE)), first_run);
if (tmp_708.is_bound()) msg = tmp_708;
}
if (tmp_707_alt_flag_0 == ALT_REPEAT) goto tmp_707;
if (tmp_707_alt_flag_0 == ALT_BREAK) break;
if (tmp_707_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6127);
/* BTS_Tests.ttcn, line 6127 */
{
INTEGER tmp_709;
++num__rts__pdtch;
}
current_location.update_lineno(6128);
/* BTS_Tests.ttcn, line 6128 */
if ((!(first__fn.is_bound()))) {
current_location.update_lineno(6129);
/* BTS_Tests.ttcn, line 6129 */
first__fn = const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().rts__req().fn();
}
current_location.update_lineno(6131);
/* BTS_Tests.ttcn, line 6131 */
last__fn = const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().rts__req().fn();
current_location.update_lineno(6132);
/* BTS_Tests.ttcn, line 6132 */
goto tmp_707;
}
}
if (tmp_707_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6134);
/* BTS_Tests.ttcn, line 6134 */
{
PCUIF__Types::PCUIF__Message tmp_712;
tmp_707_alt_flag_1 = as__pcuif__msg_instance(tmp_712, PCUIF__Types::tr__PCUIF__RTS__REQ(INTEGER_template(0), INTEGER_template(0), INTEGER_template(7), PCUIF__Types::PCUIF__Sapi_template(PCUIF__Types::PCUIF__Sapi::PCU__IF__SAPI__PTCCH), INTEGER_template(ANY_VALUE), INTEGER_template(ANY_VALUE)), first_run);
if (tmp_712.is_bound()) msg = tmp_712;
}
if (tmp_707_alt_flag_1 == ALT_REPEAT) goto tmp_707;
if (tmp_707_alt_flag_1 == ALT_BREAK) break;
if (tmp_707_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6135);
/* BTS_Tests.ttcn, line 6135 */
{
INTEGER tmp_713;
++num__rts__ptcch;
}
current_location.update_lineno(6136);
/* BTS_Tests.ttcn, line 6136 */
if ((!(first__fn.is_bound()))) {
current_location.update_lineno(6137);
/* BTS_Tests.ttcn, line 6137 */
first__fn = const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().rts__req().fn();
}
current_location.update_lineno(6139);
/* BTS_Tests.ttcn, line 6139 */
last__fn = const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().rts__req().fn();
current_location.update_lineno(6140);
/* BTS_Tests.ttcn, line 6140 */
goto tmp_707;
}
}
if (tmp_707_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6142);
/* BTS_Tests.ttcn, line 6142 */
{
PCUIF__Types::PCUIF__Message tmp_716;
tmp_707_alt_flag_2 = as__pcuif__msg_instance(tmp_716, PCUIF__Types::tr__PCUIF__RTS__REQ(PCUIF__Types::tr__PCUIF__RTS__REQ_bts__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_trx__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_ts__nr_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_sapi_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_fn_defval, PCUIF__Types::tr__PCUIF__RTS__REQ_block__nr_defval), first_run);
if (tmp_716.is_bound()) msg = tmp_716;
}
if (tmp_707_alt_flag_2 == ALT_REPEAT) goto tmp_707;
if (tmp_707_alt_flag_2 == ALT_BREAK) break;
if (tmp_707_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6143);
/* BTS_Tests.ttcn, line 6143 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Received unexpected PCUIF_RTS_REQ: "),msg.log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(6144);
/* BTS_Tests.ttcn, line 6144 */
goto tmp_707;
}
}
if (tmp_707_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(6146);
/* BTS_Tests.ttcn, line 6146 */
tmp_707_alt_flag_3 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_707_alt_flag_3 == ALT_YES) {
current_location.update_lineno(6147);
/* BTS_Tests.ttcn, line 6147 */
goto tmp_707;
}
}
if (tmp_707_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(6149);
/* BTS_Tests.ttcn, line 6149 */
tmp_707_alt_flag_4 = T.timeout(NULL);
if (tmp_707_alt_flag_4 == ALT_YES) break;
}
if (tmp_707_default_flag == ALT_MAYBE) {
tmp_707_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_707_default_flag == ALT_YES || tmp_707_default_flag == ALT_BREAK) break;
else if (tmp_707_default_flag == ALT_REPEAT) goto tmp_707;
}
current_location.update_lineno(6125);
/* BTS_Tests.ttcn, line 6125 */
if (tmp_707_alt_flag_0 == ALT_NO && tmp_707_alt_flag_1 == ALT_NO && tmp_707_alt_flag_2 == ALT_NO && tmp_707_alt_flag_3 == ALT_NO && tmp_707_alt_flag_4 == ALT_NO && tmp_707_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6125 and 6150.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6151);
/* BTS_Tests.ttcn, line 6151 */
INTEGER fn__expired((last__fn - first__fn));
current_location.update_lineno(6152);
/* BTS_Tests.ttcn, line 6152 */
try {
TTCN_Logger::begin_event(TTCN_USER);
fn__expired.log();
TTCN_Logger::log_event_str(" fn expired with num_rts_pdtch=");
num__rts__pdtch.log();
TTCN_Logger::log_event_str(", num_rts_ptcch=");
num__rts__ptcch.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(6156);
/* BTS_Tests.ttcn, line 6156 */
FLOAT c__GSM__FN__DURATION__MS(4.61538);
current_location.update_lineno(6157);
/* BTS_Tests.ttcn, line 6157 */
FLOAT fn__expected(((test__duration * 1.0e3) / 4.61538));
current_location.update_lineno(6158);
/* BTS_Tests.ttcn, line 6158 */
INTEGER_template t__fn__expected(f__tolerance(float2int(fn__expected), 1, 100000, 20));
current_location.update_lineno(6159);
/* BTS_Tests.ttcn, line 6159 */
if ((!(t__fn__expected.match(fn__expired)))) {
current_location.update_lineno(6160);
/* BTS_Tests.ttcn, line 6160 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Number of TDMA Frames ("),fn__expired.log(),TTCN_Logger::log_event_str(") not matching "),t__fn__expected.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6164);
/* BTS_Tests.ttcn, line 6164 */
FLOAT ptcch__expected(((int2float(fn__expired) / 5.2e1) * 5.0e-1));
current_location.update_lineno(6165);
/* BTS_Tests.ttcn, line 6165 */
INTEGER_template t__ptcch__exp(f__tolerance(float2int(ptcch__expected), 1, 100000, 1));
current_location.update_lineno(6166);
/* BTS_Tests.ttcn, line 6166 */
if ((!(t__ptcch__exp.match(num__rts__ptcch)))) {
current_location.update_lineno(6167);
/* BTS_Tests.ttcn, line 6167 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Number of RTS.ind for PTCCH ("),num__rts__ptcch.log(),TTCN_Logger::log_event_str(") not matching "),t__ptcch__exp.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6172);
/* BTS_Tests.ttcn, line 6172 */
FLOAT pdtch__expected(((int2float(fn__expired) / 5.2e1) * 1.2e1));
current_location.update_lineno(6173);
/* BTS_Tests.ttcn, line 6173 */
INTEGER_template t__pdtch__exp(f__tolerance(float2int(pdtch__expected), 1, 100000, 2));
current_location.update_lineno(6174);
/* BTS_Tests.ttcn, line 6174 */
if ((!(t__pdtch__exp.match(num__rts__pdtch)))) {
current_location.update_lineno(6175);
/* BTS_Tests.ttcn, line 6175 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Number of RTS.ind for PDTCH ("),num__rts__pdtch.log(),TTCN_Logger::log_event_str(") not matching "),t__pdtch__exp.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6179);
/* BTS_Tests.ttcn, line 6179 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_rts_req was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__oml__alert(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6183, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_oml_alert");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_oml_alert", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6184);
/* BTS_Tests.ttcn, line 6184 */
PCUIF__CodecPort::PCUIF__send__data pcu__sd;
current_location.update_lineno(6185);
/* BTS_Tests.ttcn, line 6185 */
INTEGER num__time__ind(0);
current_location.update_lineno(6186);
/* BTS_Tests.ttcn, line 6186 */
INTEGER first__fn;
current_location.update_lineno(6186);
/* BTS_Tests.ttcn, line 6186 */
INTEGER last__fn;
current_location.update_lineno(6187);
/* BTS_Tests.ttcn, line 6187 */
FLOAT test__duration(5.0);
current_location.update_lineno(6188);
/* BTS_Tests.ttcn, line 6188 */
TIMER T("T");
current_location.update_lineno(6190);
/* BTS_Tests.ttcn, line 6190 */
f__init__with__pcuif();
current_location.update_lineno(6191);
/* BTS_Tests.ttcn, line 6191 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(6194);
/* BTS_Tests.ttcn, line 6194 */
Osmocom__CTRL__Adapter::f__ipa__ctrl__stop();
current_location.update_lineno(6195);
/* BTS_Tests.ttcn, line 6195 */
Osmocom__CTRL__Adapter::f__ipa__ctrl__start__client(mp__bsc__ctrl__ip, mp__bsc__ctrl__port);
current_location.update_lineno(6198);
/* BTS_Tests.ttcn, line 6198 */
test__CT_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(test__CT_component_g__pcu__conn__id, PCUIF__Types::ts__PCUIF__TXT__IND(0, PCUIF__Types::PCUIF__TextType::PCU__OML__ALERT, cs_104)), FALSE, NULL);
current_location.update_lineno(6201);
/* BTS_Tests.ttcn, line 6201 */
Osmocom__CTRL__Functions::f__ctrl__exp__trap(Osmocom__CTRL__Adapter::CTRL__Adapter__CT_component_IPA__CTRL, CHARSTRING_template(cs_105), CHARSTRING_template(ANY_VALUE), Osmocom__CTRL__Functions::f__ctrl__exp__trap_timeout__val_defval);
current_location.update_lineno(6202);
/* BTS_Tests.ttcn, line 6202 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_oml_alert was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__rr__suspend__req(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6206, TTCN_Location::LOCATION_FUNCTION, "f_TC_rr_suspend_req");
current_location.update_lineno(6207);
/* BTS_Tests.ttcn, line 6207 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(6208);
/* BTS_Tests.ttcn, line 6208 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(6209);
/* BTS_Tests.ttcn, line 6209 */
GSM__Types::RslLinkId link__id(GSM__Types::ts__RslLinkID__DCCH(0).valueof());
current_location.update_lineno(6210);
/* BTS_Tests.ttcn, line 6210 */
MobileL3__GMM__SM__Types::RoutingAreaIdentificationV rai(L3__Common::f__RAI(hs_2, hs_3, os_21, os_22));
current_location.update_lineno(6211);
/* BTS_Tests.ttcn, line 6211 */
OCTETSTRING tlli(os_17);
current_location.update_lineno(6212);
/* BTS_Tests.ttcn, line 6212 */
OCTETSTRING cause(os_23);
current_location.update_lineno(6213);
/* BTS_Tests.ttcn, line 6213 */
TIMER T("T", 5.0);
current_location.update_lineno(6215);
/* BTS_Tests.ttcn, line 6215 */
{
INTEGER tmp_717;
PCUIF__Types::PCUIF__Message tmp_718;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_717, tmp_718);
if (tmp_717.is_bound()) pcu__conn__id = tmp_717;
if (tmp_718.is_bound()) first__info = tmp_718;
}
current_location.update_lineno(6217);
/* BTS_Tests.ttcn, line 6217 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(6218);
/* BTS_Tests.ttcn, line 6218 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(6220);
/* BTS_Tests.ttcn, line 6220 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(6221);
/* BTS_Tests.ttcn, line 6221 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(6223);
/* BTS_Tests.ttcn, line 6223 */
f__est__rll__mo(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi(), link__id, os_24);
current_location.update_lineno(6225);
/* BTS_Tests.ttcn, line 6225 */
MobileL3__Types::PDU__ML3__MS__NW susp__req(L3__Templates::ts__RRM__GprsSuspReq(OCTETSTRING_template(tlli), MobileL3__GMM__SM__Types::RoutingAreaIdentificationV_template(rai), OCTETSTRING_template(cause)).valueof());
current_location.update_lineno(6226);
/* BTS_Tests.ttcn, line 6226 */
OCTETSTRING l3(MobileL3__Types::enc__PDU__ML3__MS__NW(susp__req));
current_location.update_lineno(6227);
/* BTS_Tests.ttcn, line 6227 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__I(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi(), LAPDm__Types::cr__MO__CMD, TRUE, 1, 0, l3, LAPDm__Types::ts__LAPDm__I_m_defval), GSM__Types::RslLinkId_template(link__id));
current_location.update_lineno(6230);
/* BTS_Tests.ttcn, line 6230 */
T.start();
current_location.update_lineno(6231);
/* BTS_Tests.ttcn, line 6231 */
{
tmp_719:
alt_status tmp_719_alt_flag_0 = ALT_MAYBE;
alt_status tmp_719_alt_flag_1 = ALT_MAYBE;
alt_status tmp_719_alt_flag_2 = ALT_MAYBE;
alt_status tmp_719_alt_flag_3 = ALT_MAYBE;
alt_status tmp_719_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_719_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6232);
/* BTS_Tests.ttcn, line 6232 */
tmp_719_alt_flag_0 = ConnHdlr_component_PCU.receive(PCUIF__CodecPort::t__SD__PCUIF(pcu__conn__id, PCUIF__Types::tr__PCUIF__SUSP__REQ(INTEGER_template(0), OCTETSTRING_template(tlli), OCTETSTRING_template(ANY_VALUE), INTEGER_template(oct2int(cause)))), NULL, any_compref, NULL, NULL, NULL);
if (tmp_719_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6233);
/* BTS_Tests.ttcn, line 6233 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_719_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6235);
/* BTS_Tests.ttcn, line 6235 */
tmp_719_alt_flag_1 = ConnHdlr_component_PCU.receive(PCUIF__CodecPort::t__SD__PCUIF(pcu__conn__id, PCUIF__Types::tr__PCUIF__SUSP__REQ(INTEGER_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE))), NULL, any_compref, NULL, NULL, NULL);
if (tmp_719_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6236);
/* BTS_Tests.ttcn, line 6236 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Received unexpected PCUIF SUSPE REQ: "),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_719_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6238);
/* BTS_Tests.ttcn, line 6238 */
tmp_719_alt_flag_2 = ConnHdlr_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_719_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6239);
/* BTS_Tests.ttcn, line 6239 */
goto tmp_719;
}
}
if (tmp_719_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(6241);
/* BTS_Tests.ttcn, line 6241 */
tmp_719_alt_flag_3 = T.timeout(NULL);
if (tmp_719_alt_flag_3 == ALT_YES) {
current_location.update_lineno(6242);
/* BTS_Tests.ttcn, line 6242 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for SUSP REQ on PCUIF"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_719_default_flag == ALT_MAYBE) {
tmp_719_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_719_default_flag == ALT_YES || tmp_719_default_flag == ALT_BREAK) break;
else if (tmp_719_default_flag == ALT_REPEAT) goto tmp_719;
}
current_location.update_lineno(6231);
/* BTS_Tests.ttcn, line 6231 */
if (tmp_719_alt_flag_0 == ALT_NO && tmp_719_alt_flag_1 == ALT_NO && tmp_719_alt_flag_2 == ALT_NO && tmp_719_alt_flag_3 == ALT_NO && tmp_719_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6231 and 6244.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6247);
/* BTS_Tests.ttcn, line 6247 */
f__rsl__chan__deact();
current_location.update_lineno(6248);
/* BTS_Tests.ttcn, line 6248 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(6249);
/* BTS_Tests.ttcn, line 6249 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rr__suspend__req(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rr_suspend_req(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rr_suspend_req", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__rr__suspend(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6251, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_rr_suspend");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_rr_suspend", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6252);
/* BTS_Tests.ttcn, line 6252 */
ConnHdlrPars pars;
current_location.update_lineno(6253);
/* BTS_Tests.ttcn, line 6253 */
COMPONENT vc__conn;
current_location.update_lineno(6255);
/* BTS_Tests.ttcn, line 6255 */
f__init__with__pcuif();
current_location.update_lineno(6257);
/* BTS_Tests.ttcn, line 6257 */
pars = t__Pars(GSM__Types::t__RslChanNr__SDCCH4(INTEGER_template(0), INTEGER_template(3)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6258);
/* BTS_Tests.ttcn, line 6258 */
vc__conn = f__start__handler(&f__TC__rr__suspend__req, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(6259);
/* BTS_Tests.ttcn, line 6259 */
{
tmp_722:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_722;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_722;
}
current_location.update_lineno(6259);
/* BTS_Tests.ttcn, line 6259 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6259.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_rr_suspend was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__connect__multi(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6263, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_connect_multi");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_connect_multi", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6264);
/* BTS_Tests.ttcn, line 6264 */
BOOLEAN connected(FALSE);
current_location.update_lineno(6265);
/* BTS_Tests.ttcn, line 6265 */
UD__Types::UD__connect__result cr;
current_location.update_lineno(6266);
/* BTS_Tests.ttcn, line 6266 */
INTEGER cid;
current_location.update_lineno(6267);
/* BTS_Tests.ttcn, line 6267 */
TIMER T("T", 5.0);
current_location.update_lineno(6269);
/* BTS_Tests.ttcn, line 6269 */
UD__Types::UD__Result_template tr__ok;
tr__ok.result__code() = UD__Types::UD__Result__code::SUCCESS;
tr__ok.err() = OMIT_VALUE;
current_location.update_lineno(6270);
/* BTS_Tests.ttcn, line 6270 */
UD__Types::UD__Result_template tr__err;
tr__err.result__code() = UD__Types::UD__Result__code::ERROR_;
tr__err.err() = ANY_VALUE;
current_location.update_lineno(6273);
/* BTS_Tests.ttcn, line 6273 */
f__init__with__pcuif();
current_location.update_lineno(6276);
/* BTS_Tests.ttcn, line 6276 */
{
UD__Types::UD__connect_template tmp_723;
tmp_723.path() = mp__pcu__socket;
tmp_723.id() = -1;
test__CT_component_PCU.send(tmp_723, FALSE, NULL);
}
current_location.update_lineno(6277);
/* BTS_Tests.ttcn, line 6277 */
T.start();
current_location.update_lineno(6278);
/* BTS_Tests.ttcn, line 6278 */
{
tmp_724:
alt_status tmp_724_alt_flag_0 = ALT_UNCHECKED;
alt_status tmp_724_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_724_alt_flag_2 = ALT_MAYBE;
alt_status tmp_724_alt_flag_3 = ALT_MAYBE;
alt_status tmp_724_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_724_alt_flag_0 == ALT_UNCHECKED) {
current_location.update_lineno(6280);
/* BTS_Tests.ttcn, line 6280 */
if ((!(connected))) tmp_724_alt_flag_0 = ALT_MAYBE;
else tmp_724_alt_flag_0 = ALT_NO;
}
if (tmp_724_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6280);
/* BTS_Tests.ttcn, line 6280 */
{
UD__Types::UD__connect__result_template tmp_725;
tmp_725.id() = ANY_VALUE;
tmp_725.result() = tr__ok;
tmp_724_alt_flag_0 = test__CT_component_PCU.receive(tmp_725, &(cr), any_compref, NULL, NULL, NULL);
}
if (tmp_724_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6281);
/* BTS_Tests.ttcn, line 6281 */
TTCN_Logger::log_str(TTCN_USER, "BTS has accept()ed connection");
current_location.update_lineno(6282);
/* BTS_Tests.ttcn, line 6282 */
connected = TRUE;
current_location.update_lineno(6283);
/* BTS_Tests.ttcn, line 6283 */
cid = const_cast< const UD__Types::UD__connect__result&>(cr).id();
current_location.update_lineno(6284);
/* BTS_Tests.ttcn, line 6284 */
goto tmp_724;
}
}
if (tmp_724_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(6286);
/* BTS_Tests.ttcn, line 6286 */
if (connected) tmp_724_alt_flag_1 = ALT_MAYBE;
else tmp_724_alt_flag_1 = ALT_NO;
}
if (tmp_724_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6286);
/* BTS_Tests.ttcn, line 6286 */
{
UD__Types::UD__connect__result_template tmp_728;
tmp_728.id() = cid;
tmp_728.result() = tr__err;
tmp_724_alt_flag_1 = test__CT_component_PCU.receive(tmp_728, NULL, any_compref, NULL, NULL, NULL);
}
if (tmp_724_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6287);
/* BTS_Tests.ttcn, line 6287 */
TTCN_Logger::log_str(TTCN_USER, "BTS has close()d connection");
current_location.update_lineno(6288);
/* BTS_Tests.ttcn, line 6288 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_724_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6291);
/* BTS_Tests.ttcn, line 6291 */
tmp_724_alt_flag_2 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_724_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6291);
/* BTS_Tests.ttcn, line 6291 */
goto tmp_724;
}
}
if (tmp_724_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(6292);
/* BTS_Tests.ttcn, line 6292 */
tmp_724_alt_flag_3 = T.timeout(NULL);
if (tmp_724_alt_flag_3 == ALT_YES) {
current_location.update_lineno(6293);
/* BTS_Tests.ttcn, line 6293 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for connection result"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_724_default_flag == ALT_MAYBE) {
tmp_724_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_724_default_flag == ALT_YES || tmp_724_default_flag == ALT_BREAK) break;
else if (tmp_724_default_flag == ALT_REPEAT) goto tmp_724;
}
current_location.update_lineno(6278);
/* BTS_Tests.ttcn, line 6278 */
if (tmp_724_alt_flag_0 == ALT_NO && tmp_724_alt_flag_1 == ALT_NO && tmp_724_alt_flag_2 == ALT_NO && tmp_724_alt_flag_3 == ALT_NO && tmp_724_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6278 and 6295.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6297);
/* BTS_Tests.ttcn, line 6297 */
Misc__Helpers::f__shutdown(cs_4, 6297, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_connect_multi was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__reconnect(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6301, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_reconnect");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_reconnect", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6303);
/* BTS_Tests.ttcn, line 6303 */
f__init__with__pcuif();
current_location.update_lineno(6305);
/* BTS_Tests.ttcn, line 6305 */
Osmocom__Types::f__sleep(1.0);
current_location.update_lineno(6307);
/* BTS_Tests.ttcn, line 6307 */
PCUIF__CodecPort::f__pcuif__close(test__CT_component_PCU, test__CT_component_g__pcu__conn__id);
current_location.update_lineno(6308);
/* BTS_Tests.ttcn, line 6308 */
test__CT_component_g__pcu__conn__id = -1;
current_location.update_lineno(6310);
/* BTS_Tests.ttcn, line 6310 */
Osmocom__Types::f__sleep(1.0);
current_location.update_lineno(6313);
/* BTS_Tests.ttcn, line 6313 */
test__CT_component_PCU.clear();
current_location.update_lineno(6314);
/* BTS_Tests.ttcn, line 6314 */
{
INTEGER tmp_730;
PCUIF__Types::PCUIF__Message tmp_731;
f__init__pcu(test__CT_component_PCU, cs_106, tmp_730, tmp_731);
if (tmp_730.is_bound()) test__CT_component_g__pcu__conn__id = tmp_730;
if (tmp_731.is_bound()) test__CT_component_g__pcu__last__info = tmp_731;
}
current_location.update_lineno(6315);
/* BTS_Tests.ttcn, line 6315 */
TTCN_Runtime::setverdict(PASS);
current_location.update_lineno(6317);
/* BTS_Tests.ttcn, line 6317 */
Misc__Helpers::f__shutdown(cs_4, 6317, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_reconnect was stopped.");
}
return TTCN_Runtime::end_testcase();
}

GSM__SystemInformation::SystemInformation f__get__si(L1CTL__PortType::L1CTL__PT& pt, const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6321, TTCN_Location::LOCATION_FUNCTION, "f_get_si");
current_location.update_lineno(6323);
/* BTS_Tests.ttcn, line 6323 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(6324);
/* BTS_Tests.ttcn, line 6324 */
GSM__SystemInformation::SystemInformation si;
current_location.update_lineno(6325);
/* BTS_Tests.ttcn, line 6325 */
INTEGER rc;
current_location.update_lineno(6326);
/* BTS_Tests.ttcn, line 6326 */
TIMER T("T", 5.0);
current_location.update_lineno(6327);
/* BTS_Tests.ttcn, line 6327 */
T.start();
current_location.update_lineno(6328);
/* BTS_Tests.ttcn, line 6328 */
{
tmp_732:
alt_status tmp_732_alt_flag_0 = ALT_MAYBE;
alt_status tmp_732_alt_flag_1 = ALT_MAYBE;
alt_status tmp_732_alt_flag_2 = ALT_MAYBE;
alt_status tmp_732_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_732_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6329);
/* BTS_Tests.ttcn, line 6329 */
tmp_732_alt_flag_0 = pt.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__BCCH(INTEGER_template(0)), GSM__Types::RslLinkId_template(ANY_VALUE), L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_732_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6330);
/* BTS_Tests.ttcn, line 6330 */
GSM__SystemInformation::SystemInformation tmp_734;
INTEGER tmp_735 = GSM__SystemInformation::dec__SystemInformationSafe(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().data__ind().payload(), tmp_734);
if (tmp_734.is_bound()) si = tmp_734;
rc = tmp_735;
current_location.update_lineno(6331);
/* BTS_Tests.ttcn, line 6331 */
{
boolean tmp_736;
tmp_736 = (rc != 0);
if (!tmp_736) tmp_736 = (const_cast< const GSM__SystemInformation::SystemInformation&>(si).header().message__type() != si__type);
if (tmp_736) {
current_location.update_lineno(6332);
/* BTS_Tests.ttcn, line 6332 */
goto tmp_732;
}
}
break;
}
}
if (tmp_732_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6335);
/* BTS_Tests.ttcn, line 6335 */
tmp_732_alt_flag_1 = pt.receive(any_compref, NULL, NULL, NULL);
if (tmp_732_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6336);
/* BTS_Tests.ttcn, line 6336 */
goto tmp_732;
}
}
if (tmp_732_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6338);
/* BTS_Tests.ttcn, line 6338 */
tmp_732_alt_flag_2 = T.timeout(NULL);
if (tmp_732_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6339);
/* BTS_Tests.ttcn, line 6339 */
Misc__Helpers::f__shutdown(cs_4, 6339, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for "),si__type.log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_732_default_flag == ALT_MAYBE) {
tmp_732_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_732_default_flag == ALT_YES || tmp_732_default_flag == ALT_BREAK) break;
else if (tmp_732_default_flag == ALT_REPEAT) goto tmp_732;
}
current_location.update_lineno(6328);
/* BTS_Tests.ttcn, line 6328 */
if (tmp_732_alt_flag_0 == ALT_NO && tmp_732_alt_flag_1 == ALT_NO && tmp_732_alt_flag_2 == ALT_NO && tmp_732_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6328 and 6342.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6343);
/* BTS_Tests.ttcn, line 6343 */
return si;
}

BOOLEAN f__si__has__gprs__indicator(const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6347, TTCN_Location::LOCATION_FUNCTION, "f_si_has_gprs_indicator");
current_location.update_lineno(6349);
/* BTS_Tests.ttcn, line 6349 */
GSM__SystemInformation::SystemInformation si(f__get__si(test__CT_component_L1CTL, si__type));
current_location.update_lineno(6351);
/* BTS_Tests.ttcn, line 6351 */
if ((si__type == GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__3)) {
current_location.update_lineno(6352);
/* BTS_Tests.ttcn, line 6352 */
return (const_cast< const GSM__SystemInformation::SystemInformation&>(si).payload().si3().rest__octets().gprs__ind().presence() == bs_1);
}
else {
current_location.update_lineno(6353);
/* BTS_Tests.ttcn, line 6353 */
if ((si__type == GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__4)) {
current_location.update_lineno(6354);
/* BTS_Tests.ttcn, line 6354 */
return (const_cast< const GSM__SystemInformation::SystemInformation&>(si).payload().si4().rest__octets().gprs__ind().presence() == bs_1);
}
}
current_location.update_lineno(6357);
/* BTS_Tests.ttcn, line 6357 */
Misc__Helpers::f__shutdown(cs_4, 6357, FAIL, cs_107);
current_location.update_lineno(6358);
/* BTS_Tests.ttcn, line 6358 */
return FALSE;
}

void start_f__si__has__gprs__indicator(const COMPONENT& component_reference, const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_si_has_gprs_indicator(");
si__type.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_si_has_gprs_indicator", text_buf);
si__type.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__pcu__socket__noconnect(const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6362, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_socket_noconnect");
current_location.update_lineno(6364);
/* BTS_Tests.ttcn, line 6364 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6365);
/* BTS_Tests.ttcn, line 6365 */
f__init__l1ctl();
current_location.update_lineno(6366);
/* BTS_Tests.ttcn, line 6366 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(6367);
/* BTS_Tests.ttcn, line 6367 */
Osmocom__Types::f__sleep(2.0);
current_location.update_lineno(6368);
/* BTS_Tests.ttcn, line 6368 */
test__CT_component_L1CTL.clear();
current_location.update_lineno(6370);
/* BTS_Tests.ttcn, line 6370 */
if (f__si__has__gprs__indicator(si__type)) {
current_location.update_lineno(6371);
/* BTS_Tests.ttcn, line 6371 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),si__type.log(),TTCN_Logger::log_event_str(" indicates GPRS even before PCU socket connected"),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(6373);
/* BTS_Tests.ttcn, line 6373 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(6376);
/* BTS_Tests.ttcn, line 6376 */
Misc__Helpers::f__shutdown(cs_4, 6376, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}

void start_f__TC__pcu__socket__noconnect(const COMPONENT& component_reference, const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_socket_noconnect(");
si__type.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_socket_noconnect", text_buf);
si__type.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__socket__noconnect__nosi3gprs(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6379, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_noconnect_nosi3gprs");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_noconnect_nosi3gprs", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6380);
/* BTS_Tests.ttcn, line 6380 */
f__TC__pcu__socket__noconnect(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__3);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_noconnect_nosi3gprs was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__noconnect__nosi4gprs(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6383, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_noconnect_nosi4gprs");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_noconnect_nosi4gprs", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6384);
/* BTS_Tests.ttcn, line 6384 */
f__TC__pcu__socket__noconnect(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__4);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_noconnect_nosi4gprs was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__pcu__socket__connect(const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6388, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_socket_connect");
current_location.update_lineno(6391);
/* BTS_Tests.ttcn, line 6391 */
f__init__with__pcuif();
current_location.update_lineno(6392);
/* BTS_Tests.ttcn, line 6392 */
f__init__l1ctl();
current_location.update_lineno(6393);
/* BTS_Tests.ttcn, line 6393 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(6395);
/* BTS_Tests.ttcn, line 6395 */
Osmocom__Types::f__sleep(2.0);
current_location.update_lineno(6396);
/* BTS_Tests.ttcn, line 6396 */
test__CT_component_L1CTL.clear();
current_location.update_lineno(6398);
/* BTS_Tests.ttcn, line 6398 */
if ((!(f__si__has__gprs__indicator(si__type)))) {
current_location.update_lineno(6399);
/* BTS_Tests.ttcn, line 6399 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),si__type.log(),TTCN_Logger::log_event_str(" indicates no GPRS despite PCU socket connected"),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(6401);
/* BTS_Tests.ttcn, line 6401 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(6404);
/* BTS_Tests.ttcn, line 6404 */
Misc__Helpers::f__shutdown(cs_4, 6404, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}

void start_f__TC__pcu__socket__connect(const COMPONENT& component_reference, const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_socket_connect(");
si__type.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_socket_connect", text_buf);
si__type.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__socket__connect__si3gprs(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6407, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_connect_si3gprs");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_connect_si3gprs", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6408);
/* BTS_Tests.ttcn, line 6408 */
f__TC__pcu__socket__connect(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__3);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_connect_si3gprs was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__connect__si4gprs(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6411, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_connect_si4gprs");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_connect_si4gprs", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6412);
/* BTS_Tests.ttcn, line 6412 */
f__TC__pcu__socket__connect(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__4);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_connect_si4gprs was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__pcu__socket__disconnect(const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6416, TTCN_Location::LOCATION_FUNCTION, "f_TC_pcu_socket_disconnect");
current_location.update_lineno(6419);
/* BTS_Tests.ttcn, line 6419 */
f__init__with__pcuif();
current_location.update_lineno(6420);
/* BTS_Tests.ttcn, line 6420 */
f__init__l1ctl();
current_location.update_lineno(6421);
/* BTS_Tests.ttcn, line 6421 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(6423);
/* BTS_Tests.ttcn, line 6423 */
PCUIF__CodecPort::f__pcuif__close(test__CT_component_PCU, test__CT_component_g__pcu__conn__id);
current_location.update_lineno(6424);
/* BTS_Tests.ttcn, line 6424 */
test__CT_component_g__pcu__conn__id = -1;
current_location.update_lineno(6426);
/* BTS_Tests.ttcn, line 6426 */
Osmocom__Types::f__sleep(1.0);
current_location.update_lineno(6429);
/* BTS_Tests.ttcn, line 6429 */
test__CT_component_PCU.clear();
current_location.update_lineno(6430);
/* BTS_Tests.ttcn, line 6430 */
{
INTEGER tmp_738;
PCUIF__Types::PCUIF__Message tmp_739;
f__init__pcu(test__CT_component_PCU, TTCN_Runtime::get_testcasename(), tmp_738, tmp_739);
if (tmp_738.is_bound()) test__CT_component_g__pcu__conn__id = tmp_738;
if (tmp_739.is_bound()) test__CT_component_g__pcu__last__info = tmp_739;
}
current_location.update_lineno(6432);
/* BTS_Tests.ttcn, line 6432 */
Osmocom__Types::f__sleep(2.0);
current_location.update_lineno(6433);
/* BTS_Tests.ttcn, line 6433 */
test__CT_component_L1CTL.clear();
current_location.update_lineno(6435);
/* BTS_Tests.ttcn, line 6435 */
if (f__si__has__gprs__indicator(si__type)) {
current_location.update_lineno(6436);
/* BTS_Tests.ttcn, line 6436 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),si__type.log(),TTCN_Logger::log_event_str(" indicates GPRS after PCU socket disconnected"),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(6438);
/* BTS_Tests.ttcn, line 6438 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(6441);
/* BTS_Tests.ttcn, line 6441 */
Misc__Helpers::f__shutdown(cs_4, 6441, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}

void start_f__TC__pcu__socket__disconnect(const COMPONENT& component_reference, const GSM__RR__Types::RrMessageType& si__type)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_socket_disconnect(");
si__type.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_pcu_socket_disconnect", text_buf);
si__type.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__pcu__socket__disconnect__nosi3gprs(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6444, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_disconnect_nosi3gprs");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_disconnect_nosi3gprs", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6445);
/* BTS_Tests.ttcn, line 6445 */
f__TC__pcu__socket__disconnect(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__3);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_disconnect_nosi3gprs was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__disconnect__nosi4gprs(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6448, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_disconnect_nosi4gprs");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_disconnect_nosi4gprs", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6449);
/* BTS_Tests.ttcn, line 6449 */
f__TC__pcu__socket__disconnect(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__4);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_disconnect_nosi4gprs was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__verify__info__ind(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6453, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_verify_info_ind");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_verify_info_ind", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6454);
/* BTS_Tests.ttcn, line 6454 */
GSM__SystemInformation::SystemInformation si3(ts__SI3__default.valueof());
current_location.update_lineno(6456);
/* BTS_Tests.ttcn, line 6456 */
f__init__with__pcuif();
current_location.update_lineno(6460);
/* BTS_Tests.ttcn, line 6460 */
TIMER T("T", 2.0);
current_location.update_lineno(6461);
/* BTS_Tests.ttcn, line 6461 */
T.start();
current_location.update_lineno(6462);
/* BTS_Tests.ttcn, line 6462 */
{
tmp_740:
alt_status tmp_740_alt_flag_0 = ALT_MAYBE;
alt_status tmp_740_alt_flag_1 = ALT_MAYBE;
alt_status tmp_740_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_740_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6463);
/* BTS_Tests.ttcn, line 6463 */
{
PCUIF__Types::PCUIF__Message tmp_741;
tmp_740_alt_flag_0 = as__pcu__info__ind_instance(test__CT_component_PCU, test__CT_component_g__pcu__conn__id, tmp_741, first_run);
if (tmp_741.is_bound()) test__CT_component_g__pcu__last__info = tmp_741;
}
if (tmp_740_alt_flag_0 == ALT_REPEAT) goto tmp_740;
if (tmp_740_alt_flag_0 == ALT_BREAK) break;
if (tmp_740_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6463);
/* BTS_Tests.ttcn, line 6463 */
goto tmp_740;
}
}
if (tmp_740_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6464);
/* BTS_Tests.ttcn, line 6464 */
tmp_740_alt_flag_1 = T.timeout(NULL);
if (tmp_740_alt_flag_1 == ALT_YES) break;
}
if (tmp_740_default_flag == ALT_MAYBE) {
tmp_740_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_740_default_flag == ALT_YES || tmp_740_default_flag == ALT_BREAK) break;
else if (tmp_740_default_flag == ALT_REPEAT) goto tmp_740;
}
current_location.update_lineno(6462);
/* BTS_Tests.ttcn, line 6462 */
if (tmp_740_alt_flag_0 == ALT_NO && tmp_740_alt_flag_1 == ALT_NO && tmp_740_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6462 and 6465.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6468);
/* BTS_Tests.ttcn, line 6468 */
INTEGER cell__id__si3(const_cast< const GSM__SystemInformation::SystemInformation&>(si3).payload().si3().cell__id());
current_location.update_lineno(6469);
/* BTS_Tests.ttcn, line 6469 */
INTEGER cell__id__pcu(const_cast< const PCUIF__Types::PCUIF__Message&>(test__CT_component_g__pcu__last__info).u().info__ind().cell__id());
current_location.update_lineno(6470);
/* BTS_Tests.ttcn, line 6470 */
if ((cell__id__si3 != cell__id__pcu)) {
current_location.update_lineno(6471);
/* BTS_Tests.ttcn, line 6471 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected cell_id '"),cell__id__si3.log(),TTCN_Logger::log_event_str("' and got '"),cell__id__pcu.log(),TTCN_Logger::log_event_str("'. This either means, that the BTS is sending the wrong cell_id, or that the BTS sent it too early (OS#4179)"),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6477);
/* BTS_Tests.ttcn, line 6477 */
INTEGER lac__si3(const_cast< const GSM__SystemInformation::SystemInformation&>(si3).payload().si3().lai().lac());
current_location.update_lineno(6478);
/* BTS_Tests.ttcn, line 6478 */
INTEGER lac__pcu(const_cast< const PCUIF__Types::PCUIF__Message&>(test__CT_component_g__pcu__last__info).u().info__ind().lac());
current_location.update_lineno(6479);
/* BTS_Tests.ttcn, line 6479 */
if ((lac__si3 != lac__pcu)) {
current_location.update_lineno(6480);
/* BTS_Tests.ttcn, line 6480 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected LAC "),lac__si3.log(),TTCN_Logger::log_event_str(" got: "),lac__pcu.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6483);
/* BTS_Tests.ttcn, line 6483 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_verify_info_ind was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__info__ind__fh__params(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6487, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_info_ind_fh_params");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_info_ind_fh_params", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6488);
/* BTS_Tests.ttcn, line 6488 */
PCUIF__Types::PCUIF__info__ind info__ind;
current_location.update_lineno(6489);
/* BTS_Tests.ttcn, line 6489 */
FreqHopPars fhp;
current_location.update_lineno(6491);
/* BTS_Tests.ttcn, line 6491 */
f__init__with__pcuif();
current_location.update_lineno(6493);
/* BTS_Tests.ttcn, line 6493 */
info__ind = const_cast< const PCUIF__Types::PCUIF__Message&>(test__CT_component_g__pcu__last__info).u().info__ind();
{
current_location.update_lineno(6495);
/* BTS_Tests.ttcn, line 6495 */
INTEGER i(0);
current_location.update_lineno(6495);
/* BTS_Tests.ttcn, line 6495 */
for ( ; ; ) {
current_location.update_lineno(6495);
/* BTS_Tests.ttcn, line 6495 */
if (!(i < mp__transceiver__num)) break;
{
current_location.update_lineno(6496);
/* BTS_Tests.ttcn, line 6496 */
INTEGER tn(0);
current_location.update_lineno(6496);
/* BTS_Tests.ttcn, line 6496 */
for ( ; ; ) {
current_location.update_lineno(6496);
/* BTS_Tests.ttcn, line 6496 */
if (!(tn < 8)) break;
{
current_location.update_lineno(6497);
/* BTS_Tests.ttcn, line 6497 */
if ((const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).trx()[i].pdch__mask()[tn] != bs_1)) {
current_location.update_lineno(6499);
/* BTS_Tests.ttcn, line 6499 */
goto tmp_743;
}
current_location.update_lineno(6502);
/* BTS_Tests.ttcn, line 6502 */
{
boolean tmp_744;
tmp_744 = mp__freq__hop__enabled;
if (tmp_744) tmp_744 = (mp__transceiver__num > 1);
if (tmp_744) {
current_location.update_lineno(6503);
/* BTS_Tests.ttcn, line 6503 */
f__resolve__fh__params(fhp, tn, i);
}
else {
current_location.update_lineno(6505);
/* BTS_Tests.ttcn, line 6505 */
fhp.enabled() = FALSE;
}
}
current_location.update_lineno(6507);
/* BTS_Tests.ttcn, line 6507 */
PCUIF__Types::PCUIF__InfoTrxTs_template tr__ts;
current_location.update_lineno(6508);
/* BTS_Tests.ttcn, line 6508 */
if (const_cast< const FreqHopPars&>(fhp).enabled()) {
current_location.update_lineno(6509);
/* BTS_Tests.ttcn, line 6509 */
tr__ts = PCUIF__Types::tr__PCUIF__InfoTrxTsH1(PCUIF__Types::tr__PCUIF__InfoTrxTsH1_tsc_defval, INTEGER_template(const_cast< const FreqHopPars&>(fhp).maio__hsn().hsn()), INTEGER_template(const_cast< const FreqHopPars&>(fhp).maio__hsn().maio()), BITSTRING_template(Osmocom__Types::f__pad__bit(const_cast< const FreqHopPars&>(fhp).ma__map().ma(), 64, bs_2)), INTEGER_template(mp__transceiver__num));
}
else {
current_location.update_lineno(6515);
/* BTS_Tests.ttcn, line 6515 */
tr__ts = PCUIF__Types::tr__PCUIF__InfoTrxTsH0(PCUIF__Types::tr__PCUIF__InfoTrxTsH0_tsc_defval);
}
current_location.update_lineno(6518);
/* BTS_Tests.ttcn, line 6518 */
PCUIF__Types::PCUIF__InfoTrxTs ts(const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).trx()[i].ts()[tn]);
current_location.update_lineno(6519);
/* BTS_Tests.ttcn, line 6519 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Checking timeslot #");
tn.log();
TTCN_Logger::log_event_str(" of trx#");
i.log();
TTCN_Logger::log_event_str(": ");
ts.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(6520);
/* BTS_Tests.ttcn, line 6520 */
if ((!(tr__ts.match(ts)))) {
current_location.update_lineno(6521);
/* BTS_Tests.ttcn, line 6521 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Hopping parameters do not match: received "),ts.log(),TTCN_Logger::log_event_str(" vs expected "),tr__ts.log(),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(6524);
/* BTS_Tests.ttcn, line 6524 */
TTCN_Runtime::setverdict(PASS);
}
}
tmp_743:
current_location.update_lineno(6496);
/* BTS_Tests.ttcn, line 6496 */
{
INTEGER tmp_748;
++tn;
}
}
}
current_location.update_lineno(6495);
/* BTS_Tests.ttcn, line 6495 */
{
INTEGER tmp_749;
++i;
}
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_info_ind_fh_params was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__nsvc__ipv4(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6531, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_nsvc_ipv4");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_nsvc_ipv4", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6532);
/* BTS_Tests.ttcn, line 6532 */
f__init__vty__bsc();
current_location.update_lineno(6533);
/* BTS_Tests.ttcn, line 6533 */
{
Osmocom__VTY__Functions::rof__charstring tmp_750;
tmp_750.set_size(2);
tmp_750[0] = cs_36;
tmp_750[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_750, cs_108);
}
current_location.update_lineno(6534);
/* BTS_Tests.ttcn, line 6534 */
Osmocom__VTY__Functions::f__vty__transceive(test__CT_component_BSCVTY, cs_38, Osmocom__VTY__Functions::f__vty__transceive_strict_defval);
current_location.update_lineno(6536);
/* BTS_Tests.ttcn, line 6536 */
f__init__with__pcuif();
current_location.update_lineno(6538);
/* BTS_Tests.ttcn, line 6538 */
PCUIF__Types::PCUIF__RemoteAddr remote__addr(const_cast< const PCUIF__Types::PCUIF__Message&>(test__CT_component_g__pcu__last__info).u().info__ind().remote__addr());
current_location.update_lineno(6539);
/* BTS_Tests.ttcn, line 6539 */
PCUIF__Types::PCUIF__RemoteAddr_template tr__remote__addr;
{
PCUIF__Types::PCUIF__RemoteAddr_addr__type_template& tmp_751 = tr__remote__addr.addr__type();
tmp_751.set_size(2);
tmp_751[0] = PCUIF__Types::PCUIF__AddrType::PCUIF__ADDR__TYPE__IPV4;
tmp_751[1] = ANY_VALUE;
}
{
PCUIF__Types::PCUIF__RemoteAddr_addr_template& tmp_752 = tr__remote__addr.addr();
tmp_752.set_size(2);
tmp_752[0] = Osmocom__Types::f__pad__oct(Native__Functions::f__inet__addr(cs_109), 16, os_1);
tmp_752[1] = ANY_VALUE;
}
current_location.update_lineno(6544);
/* BTS_Tests.ttcn, line 6544 */
if ((!(tr__remote__addr.match(remote__addr)))) {
current_location.update_lineno(6545);
/* BTS_Tests.ttcn, line 6545 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("NSVC address "),remote__addr.log(),TTCN_Logger::log_event_str(" does not match "),tr__remote__addr.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6548);
/* BTS_Tests.ttcn, line 6548 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_nsvc_ipv4 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__nsvc__ipv6(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6552, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_nsvc_ipv6");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_nsvc_ipv6", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6553);
/* BTS_Tests.ttcn, line 6553 */
f__init__vty__bsc();
current_location.update_lineno(6554);
/* BTS_Tests.ttcn, line 6554 */
{
Osmocom__VTY__Functions::rof__charstring tmp_753;
tmp_753.set_size(2);
tmp_753[0] = cs_36;
tmp_753[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_753, cs_110);
}
current_location.update_lineno(6556);
/* BTS_Tests.ttcn, line 6556 */
f__init__with__pcuif();
current_location.update_lineno(6558);
/* BTS_Tests.ttcn, line 6558 */
PCUIF__Types::PCUIF__RemoteAddr remote__addr(const_cast< const PCUIF__Types::PCUIF__Message&>(test__CT_component_g__pcu__last__info).u().info__ind().remote__addr());
current_location.update_lineno(6559);
/* BTS_Tests.ttcn, line 6559 */
PCUIF__Types::PCUIF__RemoteAddr_template tr__remote__addr;
{
PCUIF__Types::PCUIF__RemoteAddr_addr__type_template& tmp_754 = tr__remote__addr.addr__type();
tmp_754.set_size(2);
tmp_754[0] = PCUIF__Types::PCUIF__AddrType::PCUIF__ADDR__TYPE__IPV6;
tmp_754[1] = ANY_VALUE;
}
{
PCUIF__Types::PCUIF__RemoteAddr_addr_template& tmp_755 = tr__remote__addr.addr();
tmp_755.set_size(2);
tmp_755[0] = Native__Functions::f__inet6__addr(cs_111);
tmp_755[1] = ANY_VALUE;
}
current_location.update_lineno(6564);
/* BTS_Tests.ttcn, line 6564 */
if ((!(tr__remote__addr.match(remote__addr)))) {
current_location.update_lineno(6565);
/* BTS_Tests.ttcn, line 6565 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("NSVC address "),remote__addr.log(),TTCN_Logger::log_event_str(" does not match "),tr__remote__addr.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6568);
/* BTS_Tests.ttcn, line 6568 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_nsvc_ipv6 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__socket__two__nsvc(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6572, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_socket_two_nsvc");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_socket_two_nsvc", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6573);
/* BTS_Tests.ttcn, line 6573 */
f__init__vty__bsc();
current_location.update_lineno(6575);
/* BTS_Tests.ttcn, line 6575 */
{
Osmocom__VTY__Functions::rof__charstring tmp_756;
tmp_756.set_size(2);
tmp_756[0] = cs_36;
tmp_756[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_756, cs_112);
}
current_location.update_lineno(6576);
/* BTS_Tests.ttcn, line 6576 */
{
Osmocom__VTY__Functions::rof__charstring tmp_757;
tmp_757.set_size(2);
tmp_757[0] = cs_36;
tmp_757[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_757, cs_113);
}
current_location.update_lineno(6577);
/* BTS_Tests.ttcn, line 6577 */
{
Osmocom__VTY__Functions::rof__charstring tmp_758;
tmp_758.set_size(2);
tmp_758[0] = cs_36;
tmp_758[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_758, cs_108);
}
current_location.update_lineno(6578);
/* BTS_Tests.ttcn, line 6578 */
{
Osmocom__VTY__Functions::rof__charstring tmp_759;
tmp_759.set_size(2);
tmp_759[0] = cs_36;
tmp_759[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_759, cs_114);
}
current_location.update_lineno(6580);
/* BTS_Tests.ttcn, line 6580 */
{
Osmocom__VTY__Functions::rof__charstring tmp_760;
tmp_760.set_size(2);
tmp_760[0] = cs_36;
tmp_760[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_760, cs_115);
}
current_location.update_lineno(6581);
/* BTS_Tests.ttcn, line 6581 */
{
Osmocom__VTY__Functions::rof__charstring tmp_761;
tmp_761.set_size(2);
tmp_761[0] = cs_36;
tmp_761[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_761, cs_116);
}
current_location.update_lineno(6582);
/* BTS_Tests.ttcn, line 6582 */
{
Osmocom__VTY__Functions::rof__charstring tmp_762;
tmp_762.set_size(2);
tmp_762[0] = cs_36;
tmp_762[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_762, cs_117);
}
current_location.update_lineno(6583);
/* BTS_Tests.ttcn, line 6583 */
{
Osmocom__VTY__Functions::rof__charstring tmp_763;
tmp_763.set_size(2);
tmp_763[0] = cs_36;
tmp_763[1] = cs_63;
Osmocom__VTY__Functions::f__vty__config2(test__CT_component_BSCVTY, tmp_763, cs_118);
}
current_location.update_lineno(6585);
/* BTS_Tests.ttcn, line 6585 */
f__init__with__pcuif();
current_location.update_lineno(6587);
/* BTS_Tests.ttcn, line 6587 */
PCUIF__Types::PCUIF__info__ind info__ind(const_cast< const PCUIF__Types::PCUIF__Message&>(test__CT_component_g__pcu__last__info).u().info__ind());
current_location.update_lineno(6588);
/* BTS_Tests.ttcn, line 6588 */
PCUIF__Types::PCUIF__RemoteAddr remote__addr(const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).remote__addr());
current_location.update_lineno(6589);
/* BTS_Tests.ttcn, line 6589 */
PCUIF__Types::PCUIF__RemoteAddr_template tr__remote__addr;
{
PCUIF__Types::PCUIF__RemoteAddr_addr__type_template& tmp_764 = tr__remote__addr.addr__type();
tmp_764.set_size(2);
tmp_764[0] = PCUIF__Types::PCUIF__AddrType::PCUIF__ADDR__TYPE__IPV4;
tmp_764[1] = PCUIF__Types::PCUIF__AddrType::PCUIF__ADDR__TYPE__IPV6;
}
{
PCUIF__Types::PCUIF__RemoteAddr_addr_template& tmp_765 = tr__remote__addr.addr();
tmp_765.set_size(2);
tmp_765[0] = Osmocom__Types::f__pad__oct(Native__Functions::f__inet__addr(cs_109), 16, os_1);
tmp_765[1] = Native__Functions::f__inet6__addr(cs_111);
}
current_location.update_lineno(6597);
/* BTS_Tests.ttcn, line 6597 */
{
boolean tmp_767;
{
PCUIF__Types::PCUIF__info__ind_nsvci_template tmp_766;
tmp_766.set_size(2);
tmp_766[0] = 1234;
tmp_766[1] = 5678;
tmp_767 = (!(tmp_766.match(const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).nsvci())));
}
if (tmp_767) {
current_location.update_lineno(6598);
/* BTS_Tests.ttcn, line 6598 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("NSVCI "),const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).nsvci().log(),TTCN_Logger::log_event_str(" does not match { 1234, 5678 }"),TTCN_Logger::end_event_log2str()));
}
}
current_location.update_lineno(6599);
/* BTS_Tests.ttcn, line 6599 */
if ((!(tr__remote__addr.match(remote__addr)))) {
current_location.update_lineno(6600);
/* BTS_Tests.ttcn, line 6600 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("NSVC address "),remote__addr.log(),TTCN_Logger::log_event_str(" does not match "),tr__remote__addr.log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6601);
/* BTS_Tests.ttcn, line 6601 */
{
boolean tmp_769;
{
PCUIF__Types::PCUIF__info__ind_local__port_template tmp_768;
tmp_768.set_size(2);
tmp_768[0] = 1234;
tmp_768[1] = 5678;
tmp_769 = (!(tmp_768.match(const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).local__port())));
}
if (tmp_769) {
current_location.update_lineno(6602);
/* BTS_Tests.ttcn, line 6602 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("NSVC lport "),const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).local__port().log(),TTCN_Logger::log_event_str(" does not match { 1234, 5678 }"),TTCN_Logger::end_event_log2str()));
}
}
current_location.update_lineno(6603);
/* BTS_Tests.ttcn, line 6603 */
{
boolean tmp_771;
{
PCUIF__Types::PCUIF__info__ind_remote__port_template tmp_770;
tmp_770.set_size(2);
tmp_770[0] = 1234;
tmp_770[1] = 5678;
tmp_771 = (!(tmp_770.match(const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).remote__port())));
}
if (tmp_771) {
current_location.update_lineno(6604);
/* BTS_Tests.ttcn, line 6604 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("NSVC rport "),const_cast< const PCUIF__Types::PCUIF__info__ind&>(info__ind).remote__port().log(),TTCN_Logger::log_event_str(" does not match { 1234, 5678 }"),TTCN_Logger::end_event_log2str()));
}
}
current_location.update_lineno(6606);
/* BTS_Tests.ttcn, line 6606 */
TTCN_Runtime::setverdict(PASS);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_socket_two_nsvc was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__pcu__interf__ind(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6610, TTCN_Location::LOCATION_TESTCASE, "TC_pcu_interf_ind");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_pcu_interf_ind", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6611);
/* BTS_Tests.ttcn, line 6611 */
PCUIF__Types::PCUIF__Message_template tr__interf__ind;
current_location.update_lineno(6612);
/* BTS_Tests.ttcn, line 6612 */
INTEGER interf__ind__num(0);
current_location.update_lineno(6613);
/* BTS_Tests.ttcn, line 6613 */
BOOLEAN first(TRUE);
current_location.update_lineno(6614);
/* BTS_Tests.ttcn, line 6614 */
PCUIF__Types::PCUIF__Message msg;
current_location.update_lineno(6615);
/* BTS_Tests.ttcn, line 6615 */
TIMER T("T");
current_location.update_lineno(6618);
/* BTS_Tests.ttcn, line 6618 */
f__init__vty__bsc();
current_location.update_lineno(6619);
/* BTS_Tests.ttcn, line 6619 */
{
Osmocom__VTY__Functions::rof__charstring tmp_772;
tmp_772.set_size(1);
tmp_772[0] = cs_119;
Osmocom__VTY__Functions::f__vty__cfg__bts(test__CT_component_BSCVTY, 0, tmp_772);
}
current_location.update_lineno(6620);
/* BTS_Tests.ttcn, line 6620 */
Osmocom__VTY__Functions::f__vty__transceive(test__CT_component_BSCVTY, cs_38, Osmocom__VTY__Functions::f__vty__transceive_strict_defval);
current_location.update_lineno(6622);
/* BTS_Tests.ttcn, line 6622 */
f__init__with__pcuif();
current_location.update_lineno(6623);
/* BTS_Tests.ttcn, line 6623 */
f__TC__pcu__act__req(0, 0, 7, TRUE);
current_location.update_lineno(6626);
/* BTS_Tests.ttcn, line 6626 */
f__init__l1ctl();
current_location.update_lineno(6627);
/* BTS_Tests.ttcn, line 6627 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(6630);
/* BTS_Tests.ttcn, line 6630 */
{
PCUIF__Types::PCUIF__interf_template tmp_774;
tmp_774.set_size(8);
tmp_774[0] = 0;
tmp_774[1] = 0;
tmp_774[2] = 0;
tmp_774[3] = 0;
tmp_774[4] = 0;
tmp_774[5] = 0;
tmp_774[6] = 0;
{
INTEGER_template& tmp_775 = tmp_774[7];
tmp_775.set_type(VALUE_RANGE);
tmp_775.set_min(90);
tmp_775.set_max(120);
}
tr__interf__ind = PCUIF__Types::tr__PCUIF__INTERF__IND(INTEGER_template(0), INTEGER_template(0), INTEGER_template(ANY_VALUE), tmp_774);
}
current_location.update_lineno(6637);
/* BTS_Tests.ttcn, line 6637 */
T.start(7.2e-1);
current_location.update_lineno(6638);
/* BTS_Tests.ttcn, line 6638 */
{
tmp_776:
alt_status tmp_776_alt_flag_0 = ALT_UNCHECKED;
alt_status tmp_776_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_776_alt_flag_2 = ALT_UNCHECKED;
alt_status tmp_776_alt_flag_3 = ALT_MAYBE;
alt_status tmp_776_alt_flag_4 = ALT_MAYBE;
alt_status tmp_776_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_776_alt_flag_0 == ALT_UNCHECKED) {
current_location.update_lineno(6640);
/* BTS_Tests.ttcn, line 6640 */
if (first) tmp_776_alt_flag_0 = ALT_MAYBE;
else tmp_776_alt_flag_0 = ALT_NO;
}
if (tmp_776_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6640);
/* BTS_Tests.ttcn, line 6640 */
{
PCUIF__Types::PCUIF__Message tmp_777;
tmp_776_alt_flag_0 = as__pcuif__msg_instance(tmp_777, PCUIF__Types::tr__PCUIF__INTERF__IND(INTEGER_template(0), INTEGER_template(0), PCUIF__Types::tr__PCUIF__INTERF__IND_fn_defval, PCUIF__Types::tr__PCUIF__INTERF__IND_interf_defval), first_run);
if (tmp_777.is_bound()) msg = tmp_777;
}
if (tmp_776_alt_flag_0 == ALT_REPEAT) goto tmp_776;
if (tmp_776_alt_flag_0 == ALT_BREAK) break;
if (tmp_776_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6642);
/* BTS_Tests.ttcn, line 6642 */
T.start(2.16);
current_location.update_lineno(6643);
/* BTS_Tests.ttcn, line 6643 */
first = FALSE;
current_location.update_lineno(6644);
/* BTS_Tests.ttcn, line 6644 */
goto tmp_776;
}
}
if (tmp_776_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(6647);
/* BTS_Tests.ttcn, line 6647 */
if ((!(first))) tmp_776_alt_flag_1 = ALT_MAYBE;
else tmp_776_alt_flag_1 = ALT_NO;
}
if (tmp_776_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6647);
/* BTS_Tests.ttcn, line 6647 */
{
PCUIF__Types::PCUIF__Message tmp_779;
PCUIF__Types::PCUIF__Message_template tmp_780;
tmp_780 = tr__interf__ind;
tmp_780.check_restriction(TR_PRESENT);
tmp_776_alt_flag_1 = as__pcuif__msg_instance(tmp_779, tmp_780, first_run);
if (tmp_779.is_bound()) msg = tmp_779;
}
if (tmp_776_alt_flag_1 == ALT_REPEAT) goto tmp_776;
if (tmp_776_alt_flag_1 == ALT_BREAK) break;
if (tmp_776_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6649);
/* BTS_Tests.ttcn, line 6649 */
if ((mod(const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().interf__ind().fn(), 104) != 0)) {
current_location.update_lineno(6650);
/* BTS_Tests.ttcn, line 6650 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Odd TDMA frame number := "),const_cast< const PCUIF__Types::PCUIF__Message&>(msg).u().interf__ind().fn().log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(6653);
/* BTS_Tests.ttcn, line 6653 */
{
INTEGER tmp_781;
++interf__ind__num;
}
current_location.update_lineno(6654);
/* BTS_Tests.ttcn, line 6654 */
if ((interf__ind__num < 4)) {
current_location.update_lineno(6655);
/* BTS_Tests.ttcn, line 6655 */
goto tmp_776;
}
break;
}
}
if (tmp_776_alt_flag_2 == ALT_UNCHECKED) {
current_location.update_lineno(6657);
/* BTS_Tests.ttcn, line 6657 */
if ((!(first))) tmp_776_alt_flag_2 = ALT_MAYBE;
else tmp_776_alt_flag_2 = ALT_NO;
}
if (tmp_776_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6657);
/* BTS_Tests.ttcn, line 6657 */
{
PCUIF__Types::PCUIF__Message tmp_782;
tmp_776_alt_flag_2 = as__pcuif__msg_instance(tmp_782, PCUIF__Types::tr__PCUIF__INTERF__IND(INTEGER_template(0), INTEGER_template(0), PCUIF__Types::tr__PCUIF__INTERF__IND_fn_defval, PCUIF__Types::tr__PCUIF__INTERF__IND_interf_defval), first_run);
if (tmp_782.is_bound()) msg = tmp_782;
}
if (tmp_776_alt_flag_2 == ALT_REPEAT) goto tmp_776;
if (tmp_776_alt_flag_2 == ALT_BREAK) break;
if (tmp_776_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6658);
/* BTS_Tests.ttcn, line 6658 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Received unexpected interference report: "),msg.log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_776_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(6660);
/* BTS_Tests.ttcn, line 6660 */
tmp_776_alt_flag_3 = test__CT_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_776_alt_flag_3 == ALT_YES) {
current_location.update_lineno(6660);
/* BTS_Tests.ttcn, line 6660 */
goto tmp_776;
}
}
if (tmp_776_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(6661);
/* BTS_Tests.ttcn, line 6661 */
tmp_776_alt_flag_4 = T.timeout(NULL);
if (tmp_776_alt_flag_4 == ALT_YES) {
current_location.update_lineno(6662);
/* BTS_Tests.ttcn, line 6662 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for interference reports"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_776_default_flag == ALT_MAYBE) {
tmp_776_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_776_default_flag == ALT_YES || tmp_776_default_flag == ALT_BREAK) break;
else if (tmp_776_default_flag == ALT_REPEAT) goto tmp_776;
}
current_location.update_lineno(6638);
/* BTS_Tests.ttcn, line 6638 */
if (tmp_776_alt_flag_0 == ALT_NO && tmp_776_alt_flag_1 == ALT_NO && tmp_776_alt_flag_2 == ALT_NO && tmp_776_alt_flag_3 == ALT_NO && tmp_776_alt_flag_4 == ALT_NO && tmp_776_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6638 and 6664.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6667);
/* BTS_Tests.ttcn, line 6667 */
{
Osmocom__VTY__Functions::rof__charstring tmp_783;
tmp_783.set_size(1);
tmp_783[0] = cs_120;
Osmocom__VTY__Functions::f__vty__cfg__bts(test__CT_component_BSCVTY, 0, tmp_783);
}
current_location.update_lineno(6669);
/* BTS_Tests.ttcn, line 6669 */
Misc__Helpers::f__shutdown(cs_4, 6669, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_pcu_interf_ind was stopped.");
}
return TTCN_Runtime::end_testcase();
}

alt_status as__pcuif__check__pdch__mask_instance(const INTEGER& pcu__conn__id, const BITSTRING& exp, const INTEGER& bts__nr, const INTEGER& trx__nr, boolean first_alt_run)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6676, TTCN_Location::LOCATION_ALTSTEP, "as_pcuif_check_pdch_mask");
current_location.update_lineno(6679);
/* BTS_Tests.ttcn, line 6679 */
PCUIF__CodecPort::PCUIF__send__data sd;
alt_status ret_val = ALT_NO;
current_location.update_lineno(6681);
/* BTS_Tests.ttcn, line 6681 */
switch (ConnHdlr_component_PCU.receive(PCUIF__CodecPort::t__SD__PCUIF(pcu__conn__id, PCUIF__Types::tr__PCUIF__INFO__IND(INTEGER_template(bts__nr), PCUIF__Types::PCUIF__Flags_template(ANY_VALUE), PCUIF__Types::tr__PCUIF__INFO__IND_version_defval)), &(sd), any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(6682);
/* BTS_Tests.ttcn, line 6682 */
BITSTRING pdch__mask(const_cast< const PCUIF__CodecPort::PCUIF__send__data&>(sd).data().u().info__ind().trx()[trx__nr].pdch__mask());
current_location.update_lineno(6683);
/* BTS_Tests.ttcn, line 6683 */
if ((substr(pdch__mask, const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn(), 1) != exp)) {
current_location.update_lineno(6684);
/* BTS_Tests.ttcn, line 6684 */
return ALT_REPEAT;
}
}
return ALT_YES;
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
return ret_val;
}

void as__pcuif__check__pdch__mask(boolean nodefault_modifier, const INTEGER& pcu__conn__id, const BITSTRING& exp, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
altstep_begin:
boolean block_flag = FALSE;
alt_status altstep_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
for ( ; ; ) {
TTCN_Snapshot::take_new(block_flag);
if (altstep_flag != ALT_NO) {
altstep_flag = as__pcuif__check__pdch__mask_instance(pcu__conn__id, exp, bts__nr, trx__nr, !block_flag);
if (altstep_flag == ALT_YES || altstep_flag == ALT_BREAK) return;
else if (altstep_flag == ALT_REPEAT) goto altstep_begin;
}
if (!nodefault_modifier && default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(!block_flag);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) return;
else if (default_flag == ALT_REPEAT) goto altstep_begin;
}
if (altstep_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in altstep as_pcuif_check_pdch_mask.");
else block_flag = TRUE;
}
}

Default_Base *activate_as__pcuif__check__pdch__mask(const INTEGER& pcu__conn__id, const BITSTRING& exp, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
return new as__pcuif__check__pdch__mask_Default(pcu__conn__id, exp, bts__nr, trx__nr);
}

void f__dyn__osmo__pdch__act(const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6689, TTCN_Location::LOCATION_FUNCTION, "f_dyn_osmo_pdch_act");
current_location.update_lineno(6692);
/* BTS_Tests.ttcn, line 6692 */
ConnHdlr_component_PCU.clear();
current_location.update_lineno(6693);
/* BTS_Tests.ttcn, line 6693 */
f__rsl__chan__act(RSL__Types::RSL__IE__ChannelMode(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), f__rsl__chan__act_encr__enable_defval, f__rsl__chan__act_more__ies_defval, f__rsl__chan__act_act__type_defval);
current_location.update_lineno(6695);
/* BTS_Tests.ttcn, line 6695 */
TIMER T__wait("T_wait", 2.0);
current_location.update_lineno(6696);
/* BTS_Tests.ttcn, line 6696 */
T__wait.start();
current_location.update_lineno(6697);
/* BTS_Tests.ttcn, line 6697 */
{
tmp_784:
alt_status tmp_784_alt_flag_0 = ALT_MAYBE;
alt_status tmp_784_alt_flag_1 = ALT_MAYBE;
alt_status tmp_784_alt_flag_2 = ALT_MAYBE;
alt_status tmp_784_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_784_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6698);
/* BTS_Tests.ttcn, line 6698 */
tmp_784_alt_flag_0 = as__pcuif__check__pdch__mask_instance(pcu__conn__id, bs_1, bts__nr, trx__nr, first_run);
if (tmp_784_alt_flag_0 == ALT_REPEAT) goto tmp_784;
if (tmp_784_alt_flag_0 == ALT_BREAK) break;
if (tmp_784_alt_flag_0 == ALT_YES) break;
}
if (tmp_784_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6699);
/* BTS_Tests.ttcn, line 6699 */
tmp_784_alt_flag_1 = ConnHdlr_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_784_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6699);
/* BTS_Tests.ttcn, line 6699 */
goto tmp_784;
}
}
if (tmp_784_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6700);
/* BTS_Tests.ttcn, line 6700 */
tmp_784_alt_flag_2 = T__wait.timeout(NULL);
if (tmp_784_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6701);
/* BTS_Tests.ttcn, line 6701 */
Misc__Helpers::f__shutdown(cs_4, 6701, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for PCUIF_INFO_IND PDCH_MASK to be '1' on TS"),const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn().log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_784_default_flag == ALT_MAYBE) {
tmp_784_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_784_default_flag == ALT_YES || tmp_784_default_flag == ALT_BREAK) break;
else if (tmp_784_default_flag == ALT_REPEAT) goto tmp_784;
}
current_location.update_lineno(6697);
/* BTS_Tests.ttcn, line 6697 */
if (tmp_784_alt_flag_0 == ALT_NO && tmp_784_alt_flag_1 == ALT_NO && tmp_784_alt_flag_2 == ALT_NO && tmp_784_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6697 and 6704.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6706);
/* BTS_Tests.ttcn, line 6706 */
ConnHdlr_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(pcu__conn__id, PCUIF__Types::ts__PCUIF__ACT__REQ(bts__nr, trx__nr, const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn())), FALSE, NULL);
}

void start_f__dyn__osmo__pdch__act(const COMPONENT& component_reference, const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_osmo_pdch_act(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_dyn_osmo_pdch_act", text_buf);
pcu__conn__id.encode_text(text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__dyn__osmo__pdch__deact(const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6710, TTCN_Location::LOCATION_FUNCTION, "f_dyn_osmo_pdch_deact");
current_location.update_lineno(6713);
/* BTS_Tests.ttcn, line 6713 */
ConnHdlr_component_PCU.clear();
current_location.update_lineno(6714);
/* BTS_Tests.ttcn, line 6714 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__RF__CHAN__REL(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), FALSE, NULL);
current_location.update_lineno(6716);
/* BTS_Tests.ttcn, line 6716 */
TIMER T__wait("T_wait", 2.0);
current_location.update_lineno(6717);
/* BTS_Tests.ttcn, line 6717 */
T__wait.start();
current_location.update_lineno(6718);
/* BTS_Tests.ttcn, line 6718 */
{
tmp_785:
alt_status tmp_785_alt_flag_0 = ALT_MAYBE;
alt_status tmp_785_alt_flag_1 = ALT_MAYBE;
alt_status tmp_785_alt_flag_2 = ALT_MAYBE;
alt_status tmp_785_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_785_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6719);
/* BTS_Tests.ttcn, line 6719 */
tmp_785_alt_flag_0 = as__pcuif__check__pdch__mask_instance(pcu__conn__id, bs_2, bts__nr, trx__nr, first_run);
if (tmp_785_alt_flag_0 == ALT_REPEAT) goto tmp_785;
if (tmp_785_alt_flag_0 == ALT_BREAK) break;
if (tmp_785_alt_flag_0 == ALT_YES) break;
}
if (tmp_785_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6720);
/* BTS_Tests.ttcn, line 6720 */
tmp_785_alt_flag_1 = ConnHdlr_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_785_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6720);
/* BTS_Tests.ttcn, line 6720 */
goto tmp_785;
}
}
if (tmp_785_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6721);
/* BTS_Tests.ttcn, line 6721 */
tmp_785_alt_flag_2 = T__wait.timeout(NULL);
if (tmp_785_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6722);
/* BTS_Tests.ttcn, line 6722 */
Misc__Helpers::f__shutdown(cs_4, 6722, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for PCUIF_INFO_IND PDCH_MASK to be '0' on TS"),const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn().log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_785_default_flag == ALT_MAYBE) {
tmp_785_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_785_default_flag == ALT_YES || tmp_785_default_flag == ALT_BREAK) break;
else if (tmp_785_default_flag == ALT_REPEAT) goto tmp_785;
}
current_location.update_lineno(6718);
/* BTS_Tests.ttcn, line 6718 */
if (tmp_785_alt_flag_0 == ALT_NO && tmp_785_alt_flag_1 == ALT_NO && tmp_785_alt_flag_2 == ALT_NO && tmp_785_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6718 and 6725.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6727);
/* BTS_Tests.ttcn, line 6727 */
ConnHdlr_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(pcu__conn__id, PCUIF__Types::ts__PCUIF__DEACT__REQ(bts__nr, trx__nr, const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn())), FALSE, NULL);
current_location.update_lineno(6728);
/* BTS_Tests.ttcn, line 6728 */
{
tmp_786:
alt_status tmp_786_alt_flag_0 = ALT_MAYBE;
alt_status tmp_786_alt_flag_1 = ALT_MAYBE;
alt_status tmp_786_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_786_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6729);
/* BTS_Tests.ttcn, line 6729 */
tmp_786_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__RF__CHAN__REL__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_786_alt_flag_0 == ALT_YES) {
current_location.update_lineno(6730);
/* BTS_Tests.ttcn, line 6730 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_786_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6732);
/* BTS_Tests.ttcn, line 6732 */
tmp_786_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL);
if (tmp_786_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6732);
/* BTS_Tests.ttcn, line 6732 */
goto tmp_786;
}
}
if (tmp_786_default_flag == ALT_MAYBE) {
tmp_786_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_786_default_flag == ALT_YES || tmp_786_default_flag == ALT_BREAK) break;
else if (tmp_786_default_flag == ALT_REPEAT) goto tmp_786;
}
current_location.update_lineno(6728);
/* BTS_Tests.ttcn, line 6728 */
if (tmp_786_alt_flag_0 == ALT_NO && tmp_786_alt_flag_1 == ALT_NO && tmp_786_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6728 and 6733.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__dyn__osmo__pdch__deact(const COMPONENT& component_reference, const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_osmo_pdch_deact(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_dyn_osmo_pdch_deact", text_buf);
pcu__conn__id.encode_text(text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__dyn__osmo__pdch__act__deact(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6737, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_osmo_pdch_act_deact");
current_location.update_lineno(6738);
/* BTS_Tests.ttcn, line 6738 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(6739);
/* BTS_Tests.ttcn, line 6739 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(6740);
/* BTS_Tests.ttcn, line 6740 */
INTEGER trx__nr(0);
current_location.update_lineno(6741);
/* BTS_Tests.ttcn, line 6741 */
INTEGER bts__nr(0);
current_location.update_lineno(6742);
/* BTS_Tests.ttcn, line 6742 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(6744);
/* BTS_Tests.ttcn, line 6744 */
{
INTEGER tmp_787;
PCUIF__Types::PCUIF__Message tmp_788;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_787, tmp_788);
if (tmp_787.is_bound()) pcu__conn__id = tmp_787;
if (tmp_788.is_bound()) first__info = tmp_788;
}
current_location.update_lineno(6746);
/* BTS_Tests.ttcn, line 6746 */
f__dyn__osmo__pdch__act(pcu__conn__id, bts__nr, trx__nr);
current_location.update_lineno(6747);
/* BTS_Tests.ttcn, line 6747 */
Osmocom__Types::f__sleep(3.0);
current_location.update_lineno(6748);
/* BTS_Tests.ttcn, line 6748 */
f__dyn__osmo__pdch__deact(pcu__conn__id, bts__nr, trx__nr);
current_location.update_lineno(6749);
/* BTS_Tests.ttcn, line 6749 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__osmo__pdch__act__deact(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_act_deact(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_osmo_pdch_act_deact", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__osmo__pdch__act__deact(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6751, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_act_deact");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_act_deact", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6752);
/* BTS_Tests.ttcn, line 6752 */
ConnHdlrPars pars;
current_location.update_lineno(6753);
/* BTS_Tests.ttcn, line 6753 */
COMPONENT vc__conn;
current_location.update_lineno(6754);
/* BTS_Tests.ttcn, line 6754 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6756);
/* BTS_Tests.ttcn, line 6756 */
pars = t__Pars(GSM__Types::t__RslChanNr__PDCH(INTEGER_template(4)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6757);
/* BTS_Tests.ttcn, line 6757 */
vc__conn = f__start__handler(&f__TC__dyn__osmo__pdch__act__deact, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(6758);
/* BTS_Tests.ttcn, line 6758 */
{
tmp_791:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_791;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_791;
}
current_location.update_lineno(6758);
/* BTS_Tests.ttcn, line 6758 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6758.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_act_deact was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__osmo__pdch__unsol__deact(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6762, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_osmo_pdch_unsol_deact");
current_location.update_lineno(6763);
/* BTS_Tests.ttcn, line 6763 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(6764);
/* BTS_Tests.ttcn, line 6764 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(6766);
/* BTS_Tests.ttcn, line 6766 */
{
INTEGER tmp_792;
PCUIF__Types::PCUIF__Message tmp_793;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_792, tmp_793);
if (tmp_792.is_bound()) pcu__conn__id = tmp_792;
if (tmp_793.is_bound()) first__info = tmp_793;
}
current_location.update_lineno(6768);
/* BTS_Tests.ttcn, line 6768 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__RF__CHAN__REL(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), FALSE, NULL);
current_location.update_lineno(6770);
/* BTS_Tests.ttcn, line 6770 */
{
tmp_794:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__RF__CHAN__REL__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), NULL, any_compref, NULL, NULL, NULL);
if (alt_flag == ALT_YES) break;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_794;
}
current_location.update_lineno(6770);
/* BTS_Tests.ttcn, line 6770 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone receive statement failed in file BTS_Tests.ttcn, line 6770.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6771);
/* BTS_Tests.ttcn, line 6771 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__osmo__pdch__unsol__deact(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_unsol_deact(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_osmo_pdch_unsol_deact", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__osmo__pdch__unsol__deact(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6773, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_unsol_deact");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_unsol_deact", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6774);
/* BTS_Tests.ttcn, line 6774 */
ConnHdlrPars pars;
current_location.update_lineno(6775);
/* BTS_Tests.ttcn, line 6775 */
COMPONENT vc__conn;
current_location.update_lineno(6776);
/* BTS_Tests.ttcn, line 6776 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6778);
/* BTS_Tests.ttcn, line 6778 */
pars = t__Pars(GSM__Types::t__RslChanNr__PDCH(INTEGER_template(4)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6779);
/* BTS_Tests.ttcn, line 6779 */
vc__conn = f__start__handler(&f__TC__dyn__osmo__pdch__unsol__deact, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(6780);
/* BTS_Tests.ttcn, line 6780 */
{
tmp_797:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_797;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_797;
}
current_location.update_lineno(6780);
/* BTS_Tests.ttcn, line 6780 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6780.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_unsol_deact was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__osmo__pdch__double__act(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6784, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_osmo_pdch_double_act");
current_location.update_lineno(6785);
/* BTS_Tests.ttcn, line 6785 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(6786);
/* BTS_Tests.ttcn, line 6786 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(6787);
/* BTS_Tests.ttcn, line 6787 */
INTEGER trx__nr(0);
current_location.update_lineno(6788);
/* BTS_Tests.ttcn, line 6788 */
INTEGER bts__nr(0);
current_location.update_lineno(6789);
/* BTS_Tests.ttcn, line 6789 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(6791);
/* BTS_Tests.ttcn, line 6791 */
{
INTEGER tmp_798;
PCUIF__Types::PCUIF__Message tmp_799;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_798, tmp_799);
if (tmp_798.is_bound()) pcu__conn__id = tmp_798;
if (tmp_799.is_bound()) first__info = tmp_799;
}
current_location.update_lineno(6793);
/* BTS_Tests.ttcn, line 6793 */
f__dyn__osmo__pdch__act(pcu__conn__id, bts__nr, trx__nr);
current_location.update_lineno(6795);
/* BTS_Tests.ttcn, line 6795 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__NACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::tr__RSL__CHAN__ACT__NACK_cause_defval), cs_121, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(6797);
/* BTS_Tests.ttcn, line 6797 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__osmo__pdch__double__act(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_double_act(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_osmo_pdch_double_act", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__osmo__pdch__double__act(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6799, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_double_act");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_double_act", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6800);
/* BTS_Tests.ttcn, line 6800 */
ConnHdlrPars pars;
current_location.update_lineno(6801);
/* BTS_Tests.ttcn, line 6801 */
COMPONENT vc__conn;
current_location.update_lineno(6802);
/* BTS_Tests.ttcn, line 6802 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6804);
/* BTS_Tests.ttcn, line 6804 */
pars = t__Pars(GSM__Types::t__RslChanNr__PDCH(INTEGER_template(4)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6805);
/* BTS_Tests.ttcn, line 6805 */
vc__conn = f__start__handler(&f__TC__dyn__osmo__pdch__double__act, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(6806);
/* BTS_Tests.ttcn, line 6806 */
{
tmp_802:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_802;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_802;
}
current_location.update_lineno(6806);
/* BTS_Tests.ttcn, line 6806 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6806.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_double_act was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__osmo__pdch__tchf__act(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6810, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_osmo_pdch_tchf_act");
current_location.update_lineno(6811);
/* BTS_Tests.ttcn, line 6811 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(6812);
/* BTS_Tests.ttcn, line 6812 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(6813);
/* BTS_Tests.ttcn, line 6813 */
INTEGER trx__nr(0);
current_location.update_lineno(6814);
/* BTS_Tests.ttcn, line 6814 */
INTEGER bts__nr(0);
current_location.update_lineno(6815);
/* BTS_Tests.ttcn, line 6815 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(6816);
/* BTS_Tests.ttcn, line 6816 */
GSM__Types::RslChannelNr chan__nr(GSM__Types::t__RslChanNr__Bm(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn())).valueof());
current_location.update_lineno(6819);
/* BTS_Tests.ttcn, line 6819 */
RSL__Emulation::f__rslem__register(0, chan__nr, RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
current_location.update_lineno(6821);
/* BTS_Tests.ttcn, line 6821 */
{
INTEGER tmp_803;
PCUIF__Types::PCUIF__Message tmp_804;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_803, tmp_804);
if (tmp_803.is_bound()) pcu__conn__id = tmp_803;
if (tmp_804.is_bound()) first__info = tmp_804;
}
current_location.update_lineno(6823);
/* BTS_Tests.ttcn, line 6823 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__ACK(GSM__Types::RslChannelNr_template(chan__nr)), cs_17, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(6825);
/* BTS_Tests.ttcn, line 6825 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__osmo__pdch__tchf__act(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_tchf_act(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_osmo_pdch_tchf_act", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__osmo__pdch__tchf__act(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6827, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_tchf_act");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_tchf_act", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6828);
/* BTS_Tests.ttcn, line 6828 */
ConnHdlrPars pars;
current_location.update_lineno(6829);
/* BTS_Tests.ttcn, line 6829 */
COMPONENT vc__conn;
current_location.update_lineno(6830);
/* BTS_Tests.ttcn, line 6830 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6832);
/* BTS_Tests.ttcn, line 6832 */
pars = t__Pars(GSM__Types::t__RslChanNr__PDCH(INTEGER_template(4)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6833);
/* BTS_Tests.ttcn, line 6833 */
vc__conn = f__start__handler(&f__TC__dyn__osmo__pdch__tchf__act, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(6834);
/* BTS_Tests.ttcn, line 6834 */
{
tmp_807:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_807;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_807;
}
current_location.update_lineno(6834);
/* BTS_Tests.ttcn, line 6834 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6834.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_tchf_act was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__osmo__pdch__tchh__act(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6838, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_osmo_pdch_tchh_act");
current_location.update_lineno(6839);
/* BTS_Tests.ttcn, line 6839 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(6840);
/* BTS_Tests.ttcn, line 6840 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(6841);
/* BTS_Tests.ttcn, line 6841 */
INTEGER trx__nr(0);
current_location.update_lineno(6842);
/* BTS_Tests.ttcn, line 6842 */
INTEGER bts__nr(0);
current_location.update_lineno(6843);
/* BTS_Tests.ttcn, line 6843 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(6844);
/* BTS_Tests.ttcn, line 6844 */
VALUE_ARRAY<GSM__Types::RslChannelNr, 2, 0> chan__nr;
chan__nr[0] = GSM__Types::t__RslChanNr__Lm(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(0)).valueof();
chan__nr[1] = GSM__Types::t__RslChanNr__Lm(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(1)).valueof();
current_location.update_lineno(6848);
/* BTS_Tests.ttcn, line 6848 */
RSL__Emulation::f__rslem__register(0, const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 2, 0>&>(chan__nr)[0], RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
current_location.update_lineno(6849);
/* BTS_Tests.ttcn, line 6849 */
RSL__Emulation::f__rslem__register(0, const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 2, 0>&>(chan__nr)[1], RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
current_location.update_lineno(6851);
/* BTS_Tests.ttcn, line 6851 */
{
INTEGER tmp_808;
PCUIF__Types::PCUIF__Message tmp_809;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_808, tmp_809);
if (tmp_808.is_bound()) pcu__conn__id = tmp_808;
if (tmp_809.is_bound()) first__info = tmp_809;
}
current_location.update_lineno(6853);
/* BTS_Tests.ttcn, line 6853 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 2, 0>&>(chan__nr)[1]), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__ACK(GSM__Types::RslChannelNr_template(const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 2, 0>&>(chan__nr)[1])), cs_122, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(6855);
/* BTS_Tests.ttcn, line 6855 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 2, 0>&>(chan__nr)[0]), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__ACK(GSM__Types::RslChannelNr_template(const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 2, 0>&>(chan__nr)[0])), cs_123, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(6857);
/* BTS_Tests.ttcn, line 6857 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__osmo__pdch__tchh__act(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_tchh_act(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_osmo_pdch_tchh_act", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__osmo__pdch__tchh__act(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6859, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_tchh_act");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_tchh_act", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6860);
/* BTS_Tests.ttcn, line 6860 */
ConnHdlrPars pars;
current_location.update_lineno(6861);
/* BTS_Tests.ttcn, line 6861 */
COMPONENT vc__conn;
current_location.update_lineno(6862);
/* BTS_Tests.ttcn, line 6862 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6864);
/* BTS_Tests.ttcn, line 6864 */
pars = t__Pars(GSM__Types::t__RslChanNr__PDCH(INTEGER_template(4)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6865);
/* BTS_Tests.ttcn, line 6865 */
vc__conn = f__start__handler(&f__TC__dyn__osmo__pdch__tchh__act, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(6866);
/* BTS_Tests.ttcn, line 6866 */
{
tmp_812:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_812;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_812;
}
current_location.update_lineno(6866);
/* BTS_Tests.ttcn, line 6866 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6866.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_tchh_act was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__osmo__pdch__sdcch8__act(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6870, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_osmo_pdch_sdcch8_act");
current_location.update_lineno(6871);
/* BTS_Tests.ttcn, line 6871 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(6872);
/* BTS_Tests.ttcn, line 6872 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(6873);
/* BTS_Tests.ttcn, line 6873 */
INTEGER trx__nr(0);
current_location.update_lineno(6874);
/* BTS_Tests.ttcn, line 6874 */
INTEGER bts__nr(0);
current_location.update_lineno(6875);
/* BTS_Tests.ttcn, line 6875 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(6876);
/* BTS_Tests.ttcn, line 6876 */
VALUE_ARRAY<GSM__Types::RslChannelNr, 8, 0> chan__nr;
chan__nr[0] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(0)).valueof();
chan__nr[1] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(1)).valueof();
chan__nr[2] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(2)).valueof();
chan__nr[3] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(3)).valueof();
chan__nr[4] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(4)).valueof();
chan__nr[5] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(5)).valueof();
chan__nr[6] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(6)).valueof();
chan__nr[7] = GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn()), INTEGER_template(7)).valueof();
{
current_location.update_lineno(6886);
/* BTS_Tests.ttcn, line 6886 */
INTEGER i(0);
current_location.update_lineno(6886);
/* BTS_Tests.ttcn, line 6886 */
for ( ; ; ) {
current_location.update_lineno(6886);
/* BTS_Tests.ttcn, line 6886 */
if (!(i < chan__nr.lengthof())) break;
current_location.update_lineno(6887);
/* BTS_Tests.ttcn, line 6887 */
RSL__Emulation::f__rslem__register(0, const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 8, 0>&>(chan__nr)[i], RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
current_location.update_lineno(6886);
/* BTS_Tests.ttcn, line 6886 */
{
INTEGER tmp_813;
++i;
}
}
}
current_location.update_lineno(6890);
/* BTS_Tests.ttcn, line 6890 */
{
INTEGER tmp_814;
PCUIF__Types::PCUIF__Message tmp_815;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_814, tmp_815);
if (tmp_814.is_bound()) pcu__conn__id = tmp_814;
if (tmp_815.is_bound()) first__info = tmp_815;
}
{
current_location.update_lineno(6892);
/* BTS_Tests.ttcn, line 6892 */
INTEGER i(0);
current_location.update_lineno(6892);
/* BTS_Tests.ttcn, line 6892 */
for ( ; ; ) {
current_location.update_lineno(6892);
/* BTS_Tests.ttcn, line 6892 */
if (!(i < chan__nr.lengthof())) break;
current_location.update_lineno(6893);
/* BTS_Tests.ttcn, line 6893 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 8, 0>&>(chan__nr)[i]), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__ACK(GSM__Types::RslChannelNr_template(const_cast< const VALUE_ARRAY<GSM__Types::RslChannelNr, 8, 0>&>(chan__nr)[i])), ((cs_124 + int2str(i)) + cs_125), f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(6892);
/* BTS_Tests.ttcn, line 6892 */
{
INTEGER tmp_816;
++i;
}
}
}
current_location.update_lineno(6896);
/* BTS_Tests.ttcn, line 6896 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__osmo__pdch__sdcch8__act(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_sdcch8_act(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_osmo_pdch_sdcch8_act", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__osmo__pdch__sdcch8__act(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6898, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_sdcch8_act");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_sdcch8_act", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6899);
/* BTS_Tests.ttcn, line 6899 */
ConnHdlrPars pars;
current_location.update_lineno(6900);
/* BTS_Tests.ttcn, line 6900 */
COMPONENT vc__conn;
current_location.update_lineno(6901);
/* BTS_Tests.ttcn, line 6901 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6903);
/* BTS_Tests.ttcn, line 6903 */
pars = t__Pars(GSM__Types::t__RslChanNr__PDCH(INTEGER_template(4)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6904);
/* BTS_Tests.ttcn, line 6904 */
vc__conn = f__start__handler(&f__TC__dyn__osmo__pdch__sdcch8__act, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(6905);
/* BTS_Tests.ttcn, line 6905 */
{
tmp_819:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_819;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_819;
}
current_location.update_lineno(6905);
/* BTS_Tests.ttcn, line 6905 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6905.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_sdcch8_act was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__rsl__chan__act__deact(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 6909, TTCN_Location::LOCATION_FUNCTION, "f_rsl_chan_act_deact");
current_location.update_lineno(6910);
/* BTS_Tests.ttcn, line 6910 */
f__rsl__chan__act(RSL__Types::RSL__IE__ChannelMode(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), f__rsl__chan__act_encr__enable_defval, f__rsl__chan__act_more__ies_defval, f__rsl__chan__act_act__type_defval);
current_location.update_lineno(6911);
/* BTS_Tests.ttcn, line 6911 */
Osmocom__Types::f__sleep(1.0);
current_location.update_lineno(6912);
/* BTS_Tests.ttcn, line 6912 */
f__rsl__chan__deact();
current_location.update_lineno(6913);
/* BTS_Tests.ttcn, line 6913 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__rsl__chan__act__deact(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rsl_chan_act_deact(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_rsl_chan_act_deact", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__osmo__pdch__tchh__race__act(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6915, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_tchh_race_act");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_tchh_race_act", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6916);
/* BTS_Tests.ttcn, line 6916 */
VALUE_ARRAY<ConnHdlrPars, 2, 0> pars;
current_location.update_lineno(6917);
/* BTS_Tests.ttcn, line 6917 */
VALUE_ARRAY<COMPONENT, 2, 0> vc__conn;
current_location.update_lineno(6918);
/* BTS_Tests.ttcn, line 6918 */
TRXC__Types::TrxcMessage rsp;
current_location.update_lineno(6920);
/* BTS_Tests.ttcn, line 6920 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6923);
/* BTS_Tests.ttcn, line 6923 */
rsp = TRXC__CodecPort::f__TRXC__transceive(test__CT_component_BTS__TRXC, test__CT_component_g__bts__trxc__conn__id, TRXC__Types::ts__TRXC__FAKE__TRXC__DELAY(200), TRXC__CodecPort::f__TRXC__transceive_tr_defval);
{
current_location.update_lineno(6928);
/* BTS_Tests.ttcn, line 6928 */
INTEGER i(0);
current_location.update_lineno(6928);
/* BTS_Tests.ttcn, line 6928 */
for ( ; ; ) {
current_location.update_lineno(6928);
/* BTS_Tests.ttcn, line 6928 */
if (!(i < 2)) break;
current_location.update_lineno(6930);
/* BTS_Tests.ttcn, line 6930 */
pars[i] = t__Pars(GSM__Types::t__RslChanNr__Lm(INTEGER_template(4), INTEGER_template(i)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6931);
/* BTS_Tests.ttcn, line 6931 */
vc__conn[i] = f__start__handler(&f__rsl__chan__act__deact, const_cast< const VALUE_ARRAY<ConnHdlrPars, 2, 0>&>(pars)[i], f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, FALSE);
current_location.update_lineno(6928);
/* BTS_Tests.ttcn, line 6928 */
{
INTEGER tmp_823;
++i;
}
}
}
{
current_location.update_lineno(6936);
/* BTS_Tests.ttcn, line 6936 */
INTEGER i(0);
current_location.update_lineno(6936);
/* BTS_Tests.ttcn, line 6936 */
for ( ; ; ) {
current_location.update_lineno(6936);
/* BTS_Tests.ttcn, line 6936 */
if (!(i < 2)) break;
current_location.update_lineno(6937);
/* BTS_Tests.ttcn, line 6937 */
{
tmp_824:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = const_cast< const VALUE_ARRAY<COMPONENT, 2, 0>&>(vc__conn)[i].done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_824;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_824;
}
current_location.update_lineno(6937);
/* BTS_Tests.ttcn, line 6937 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6937.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6936);
/* BTS_Tests.ttcn, line 6936 */
{
INTEGER tmp_825;
++i;
}
}
}
current_location.update_lineno(6941);
/* BTS_Tests.ttcn, line 6941 */
rsp = TRXC__CodecPort::f__TRXC__transceive(test__CT_component_BTS__TRXC, test__CT_component_g__bts__trxc__conn__id, TRXC__Types::ts__TRXC__FAKE__TRXC__DELAY(0), TRXC__CodecPort::f__TRXC__transceive_tr_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_tchh_race_act was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__dyn__osmo__pdch__sdcch8__race__act(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 6944, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_osmo_pdch_sdcch8_race_act");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_osmo_pdch_sdcch8_race_act", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(6945);
/* BTS_Tests.ttcn, line 6945 */
VALUE_ARRAY<ConnHdlrPars, 8, 0> pars;
current_location.update_lineno(6946);
/* BTS_Tests.ttcn, line 6946 */
VALUE_ARRAY<COMPONENT, 8, 0> vc__conn;
current_location.update_lineno(6947);
/* BTS_Tests.ttcn, line 6947 */
TRXC__Types::TrxcMessage rsp;
current_location.update_lineno(6949);
/* BTS_Tests.ttcn, line 6949 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(6952);
/* BTS_Tests.ttcn, line 6952 */
rsp = TRXC__CodecPort::f__TRXC__transceive(test__CT_component_BTS__TRXC, test__CT_component_g__bts__trxc__conn__id, TRXC__Types::ts__TRXC__FAKE__TRXC__DELAY(200), TRXC__CodecPort::f__TRXC__transceive_tr_defval);
{
current_location.update_lineno(6957);
/* BTS_Tests.ttcn, line 6957 */
INTEGER i(0);
current_location.update_lineno(6957);
/* BTS_Tests.ttcn, line 6957 */
for ( ; ; ) {
current_location.update_lineno(6957);
/* BTS_Tests.ttcn, line 6957 */
if (!(i < 8)) break;
current_location.update_lineno(6959);
/* BTS_Tests.ttcn, line 6959 */
pars[i] = t__Pars(GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(4), INTEGER_template(i)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(6960);
/* BTS_Tests.ttcn, line 6960 */
vc__conn[i] = f__start__handler(&f__rsl__chan__act__deact, const_cast< const VALUE_ARRAY<ConnHdlrPars, 8, 0>&>(pars)[i], f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, FALSE);
current_location.update_lineno(6957);
/* BTS_Tests.ttcn, line 6957 */
{
INTEGER tmp_830;
++i;
}
}
}
{
current_location.update_lineno(6965);
/* BTS_Tests.ttcn, line 6965 */
INTEGER i(0);
current_location.update_lineno(6965);
/* BTS_Tests.ttcn, line 6965 */
for ( ; ; ) {
current_location.update_lineno(6965);
/* BTS_Tests.ttcn, line 6965 */
if (!(i < 8)) break;
current_location.update_lineno(6966);
/* BTS_Tests.ttcn, line 6966 */
{
tmp_831:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = const_cast< const VALUE_ARRAY<COMPONENT, 8, 0>&>(vc__conn)[i].done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_831;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_831;
}
current_location.update_lineno(6966);
/* BTS_Tests.ttcn, line 6966 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 6966.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6965);
/* BTS_Tests.ttcn, line 6965 */
{
INTEGER tmp_832;
++i;
}
}
}
current_location.update_lineno(6970);
/* BTS_Tests.ttcn, line 6970 */
rsp = TRXC__CodecPort::f__TRXC__transceive(test__CT_component_BTS__TRXC, test__CT_component_g__bts__trxc__conn__id, TRXC__Types::ts__TRXC__FAKE__TRXC__DELAY(0), TRXC__CodecPort::f__TRXC__transceive_tr_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_osmo_pdch_sdcch8_race_act was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__dyn__ipa__pdch__act(const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Location current_location("BTS_Tests.ttcn", 6978, TTCN_Location::LOCATION_FUNCTION, "f_dyn_ipa_pdch_act");
current_location.update_lineno(6981);
/* BTS_Tests.ttcn, line 6981 */
ConnHdlr_component_PCU.clear();
current_location.update_lineno(6982);
/* BTS_Tests.ttcn, line 6982 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__IPA__PDCH__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), FALSE, NULL);
current_location.update_lineno(6984);
/* BTS_Tests.ttcn, line 6984 */
TIMER T__wait("T_wait", 2.0);
current_location.update_lineno(6985);
/* BTS_Tests.ttcn, line 6985 */
T__wait.start();
current_location.update_lineno(6986);
/* BTS_Tests.ttcn, line 6986 */
{
tmp_834:
alt_status tmp_834_alt_flag_0 = ALT_MAYBE;
alt_status tmp_834_alt_flag_1 = ALT_MAYBE;
alt_status tmp_834_alt_flag_2 = ALT_MAYBE;
alt_status tmp_834_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_834_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(6987);
/* BTS_Tests.ttcn, line 6987 */
tmp_834_alt_flag_0 = as__pcuif__check__pdch__mask_instance(pcu__conn__id, bs_1, bts__nr, trx__nr, first_run);
if (tmp_834_alt_flag_0 == ALT_REPEAT) goto tmp_834;
if (tmp_834_alt_flag_0 == ALT_BREAK) break;
if (tmp_834_alt_flag_0 == ALT_YES) break;
}
if (tmp_834_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(6988);
/* BTS_Tests.ttcn, line 6988 */
tmp_834_alt_flag_1 = ConnHdlr_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_834_alt_flag_1 == ALT_YES) {
current_location.update_lineno(6988);
/* BTS_Tests.ttcn, line 6988 */
goto tmp_834;
}
}
if (tmp_834_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(6989);
/* BTS_Tests.ttcn, line 6989 */
tmp_834_alt_flag_2 = T__wait.timeout(NULL);
if (tmp_834_alt_flag_2 == ALT_YES) {
current_location.update_lineno(6990);
/* BTS_Tests.ttcn, line 6990 */
Misc__Helpers::f__shutdown(cs_4, 6990, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for PCUIF_INFO_IND PDCH_MASK to be '1' on TS"),const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn().log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_834_default_flag == ALT_MAYBE) {
tmp_834_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_834_default_flag == ALT_YES || tmp_834_default_flag == ALT_BREAK) break;
else if (tmp_834_default_flag == ALT_REPEAT) goto tmp_834;
}
current_location.update_lineno(6986);
/* BTS_Tests.ttcn, line 6986 */
if (tmp_834_alt_flag_0 == ALT_NO && tmp_834_alt_flag_1 == ALT_NO && tmp_834_alt_flag_2 == ALT_NO && tmp_834_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 6986 and 6993.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(6995);
/* BTS_Tests.ttcn, line 6995 */
ConnHdlr_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(pcu__conn__id, PCUIF__Types::ts__PCUIF__ACT__REQ(bts__nr, trx__nr, const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn())), FALSE, NULL);
current_location.update_lineno(6998);
/* BTS_Tests.ttcn, line 6998 */
{
tmp_835:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__IPA__PDCH__ACT__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__FrameNumber_template(ANY_VALUE)), NULL, any_compref, NULL, NULL, NULL);
if (alt_flag == ALT_YES) break;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_835;
}
current_location.update_lineno(6998);
/* BTS_Tests.ttcn, line 6998 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone receive statement failed in file BTS_Tests.ttcn, line 6998.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__dyn__ipa__pdch__act(const COMPONENT& component_reference, const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_ipa_pdch_act(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_dyn_ipa_pdch_act", text_buf);
pcu__conn__id.encode_text(text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__dyn__ipa__pdch__deact(const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7001, TTCN_Location::LOCATION_FUNCTION, "f_dyn_ipa_pdch_deact");
current_location.update_lineno(7004);
/* BTS_Tests.ttcn, line 7004 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__IPA__PDCH__DEACT(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), FALSE, NULL);
current_location.update_lineno(7005);
/* BTS_Tests.ttcn, line 7005 */
ConnHdlr_component_PCU.clear();
current_location.update_lineno(7007);
/* BTS_Tests.ttcn, line 7007 */
TIMER T__wait("T_wait", 2.0);
current_location.update_lineno(7008);
/* BTS_Tests.ttcn, line 7008 */
T__wait.start();
current_location.update_lineno(7009);
/* BTS_Tests.ttcn, line 7009 */
{
tmp_836:
alt_status tmp_836_alt_flag_0 = ALT_MAYBE;
alt_status tmp_836_alt_flag_1 = ALT_MAYBE;
alt_status tmp_836_alt_flag_2 = ALT_MAYBE;
alt_status tmp_836_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_836_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7010);
/* BTS_Tests.ttcn, line 7010 */
tmp_836_alt_flag_0 = as__pcuif__check__pdch__mask_instance(pcu__conn__id, bs_2, bts__nr, trx__nr, first_run);
if (tmp_836_alt_flag_0 == ALT_REPEAT) goto tmp_836;
if (tmp_836_alt_flag_0 == ALT_BREAK) break;
if (tmp_836_alt_flag_0 == ALT_YES) break;
}
if (tmp_836_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7011);
/* BTS_Tests.ttcn, line 7011 */
tmp_836_alt_flag_1 = ConnHdlr_component_PCU.receive(any_compref, NULL, NULL, NULL);
if (tmp_836_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7011);
/* BTS_Tests.ttcn, line 7011 */
goto tmp_836;
}
}
if (tmp_836_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7012);
/* BTS_Tests.ttcn, line 7012 */
tmp_836_alt_flag_2 = T__wait.timeout(NULL);
if (tmp_836_alt_flag_2 == ALT_YES) {
current_location.update_lineno(7013);
/* BTS_Tests.ttcn, line 7013 */
Misc__Helpers::f__shutdown(cs_4, 7013, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for PCUIF_INFO_IND PDCH_MASK to be '0' on TS"),const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn().log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_836_default_flag == ALT_MAYBE) {
tmp_836_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_836_default_flag == ALT_YES || tmp_836_default_flag == ALT_BREAK) break;
else if (tmp_836_default_flag == ALT_REPEAT) goto tmp_836;
}
current_location.update_lineno(7009);
/* BTS_Tests.ttcn, line 7009 */
if (tmp_836_alt_flag_0 == ALT_NO && tmp_836_alt_flag_1 == ALT_NO && tmp_836_alt_flag_2 == ALT_NO && tmp_836_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7009 and 7016.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7018);
/* BTS_Tests.ttcn, line 7018 */
ConnHdlr_component_PCU.send(PCUIF__CodecPort::t__SD__PCUIF(pcu__conn__id, PCUIF__Types::ts__PCUIF__DEACT__REQ(bts__nr, trx__nr, const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn())), FALSE, NULL);
current_location.update_lineno(7019);
/* BTS_Tests.ttcn, line 7019 */
{
tmp_837:
alt_status tmp_837_alt_flag_0 = ALT_MAYBE;
alt_status tmp_837_alt_flag_1 = ALT_MAYBE;
alt_status tmp_837_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_837_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7020);
/* BTS_Tests.ttcn, line 7020 */
tmp_837_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__IPA__PDCH__DEACT__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_837_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7021);
/* BTS_Tests.ttcn, line 7021 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_837_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7023);
/* BTS_Tests.ttcn, line 7023 */
tmp_837_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL);
if (tmp_837_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7023);
/* BTS_Tests.ttcn, line 7023 */
goto tmp_837;
}
}
if (tmp_837_default_flag == ALT_MAYBE) {
tmp_837_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_837_default_flag == ALT_YES || tmp_837_default_flag == ALT_BREAK) break;
else if (tmp_837_default_flag == ALT_REPEAT) goto tmp_837;
}
current_location.update_lineno(7019);
/* BTS_Tests.ttcn, line 7019 */
if (tmp_837_alt_flag_0 == ALT_NO && tmp_837_alt_flag_1 == ALT_NO && tmp_837_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7019 and 7024.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__dyn__ipa__pdch__deact(const COMPONENT& component_reference, const INTEGER& pcu__conn__id, const INTEGER& bts__nr, const INTEGER& trx__nr)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_ipa_pdch_deact(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_dyn_ipa_pdch_deact", text_buf);
pcu__conn__id.encode_text(text_buf);
bts__nr.encode_text(text_buf);
trx__nr.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__dyn__ipa__pdch__act__deact(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7028, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_ipa_pdch_act_deact");
current_location.update_lineno(7029);
/* BTS_Tests.ttcn, line 7029 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(7030);
/* BTS_Tests.ttcn, line 7030 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(7031);
/* BTS_Tests.ttcn, line 7031 */
INTEGER trx__nr(0);
current_location.update_lineno(7032);
/* BTS_Tests.ttcn, line 7032 */
INTEGER bts__nr(0);
current_location.update_lineno(7033);
/* BTS_Tests.ttcn, line 7033 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(7035);
/* BTS_Tests.ttcn, line 7035 */
{
INTEGER tmp_838;
PCUIF__Types::PCUIF__Message tmp_839;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_838, tmp_839);
if (tmp_838.is_bound()) pcu__conn__id = tmp_838;
if (tmp_839.is_bound()) first__info = tmp_839;
}
current_location.update_lineno(7037);
/* BTS_Tests.ttcn, line 7037 */
f__dyn__ipa__pdch__act(pcu__conn__id, bts__nr, trx__nr);
current_location.update_lineno(7038);
/* BTS_Tests.ttcn, line 7038 */
Osmocom__Types::f__sleep(3.0);
current_location.update_lineno(7039);
/* BTS_Tests.ttcn, line 7039 */
f__dyn__ipa__pdch__deact(pcu__conn__id, bts__nr, trx__nr);
current_location.update_lineno(7041);
/* BTS_Tests.ttcn, line 7041 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__ipa__pdch__act__deact(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_act_deact(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_ipa_pdch_act_deact", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__ipa__pdch__act__deact(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7044, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_ipa_pdch_act_deact");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_ipa_pdch_act_deact", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7045);
/* BTS_Tests.ttcn, line 7045 */
ConnHdlrPars pars;
current_location.update_lineno(7046);
/* BTS_Tests.ttcn, line 7046 */
COMPONENT vc__conn;
current_location.update_lineno(7047);
/* BTS_Tests.ttcn, line 7047 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(7049);
/* BTS_Tests.ttcn, line 7049 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(3)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(7050);
/* BTS_Tests.ttcn, line 7050 */
vc__conn = f__start__handler(&f__TC__dyn__ipa__pdch__act__deact, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(7051);
/* BTS_Tests.ttcn, line 7051 */
{
tmp_842:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_842;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_842;
}
current_location.update_lineno(7051);
/* BTS_Tests.ttcn, line 7051 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 7051.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_ipa_pdch_act_deact was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__ipa__pdch__tchf__act(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7055, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_ipa_pdch_tchf_act");
current_location.update_lineno(7056);
/* BTS_Tests.ttcn, line 7056 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(7057);
/* BTS_Tests.ttcn, line 7057 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(7058);
/* BTS_Tests.ttcn, line 7058 */
INTEGER trx__nr(0);
current_location.update_lineno(7059);
/* BTS_Tests.ttcn, line 7059 */
INTEGER bts__nr(0);
current_location.update_lineno(7060);
/* BTS_Tests.ttcn, line 7060 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(7062);
/* BTS_Tests.ttcn, line 7062 */
{
INTEGER tmp_843;
PCUIF__Types::PCUIF__Message tmp_844;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_843, tmp_844);
if (tmp_843.is_bound()) pcu__conn__id = tmp_843;
if (tmp_844.is_bound()) first__info = tmp_844;
}
current_location.update_lineno(7064);
/* BTS_Tests.ttcn, line 7064 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), cs_17, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(7066);
/* BTS_Tests.ttcn, line 7066 */
f__rsl__transceive(RSL__Types::ts__RSL__RF__CHAN__REL(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), RSL__Types::tr__RSL__RF__CHAN__REL__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), cs_18, TRUE);
current_location.update_lineno(7068);
/* BTS_Tests.ttcn, line 7068 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__ipa__pdch__tchf__act(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_tchf_act(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_ipa_pdch_tchf_act", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__ipa__pdch__tchf__act(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7070, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_ipa_pdch_tchf_act");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_ipa_pdch_tchf_act", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7071);
/* BTS_Tests.ttcn, line 7071 */
ConnHdlrPars pars;
current_location.update_lineno(7072);
/* BTS_Tests.ttcn, line 7072 */
COMPONENT vc__conn;
current_location.update_lineno(7073);
/* BTS_Tests.ttcn, line 7073 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(7075);
/* BTS_Tests.ttcn, line 7075 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(3)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(7076);
/* BTS_Tests.ttcn, line 7076 */
vc__conn = f__start__handler(&f__TC__dyn__ipa__pdch__tchf__act, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(7077);
/* BTS_Tests.ttcn, line 7077 */
{
tmp_847:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_847;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_847;
}
current_location.update_lineno(7077);
/* BTS_Tests.ttcn, line 7077 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 7077.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_ipa_pdch_tchf_act was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__ipa__pdch__tchf__act__pdch__act__nack(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7081, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_ipa_pdch_tchf_act_pdch_act_nack");
current_location.update_lineno(7082);
/* BTS_Tests.ttcn, line 7082 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(7083);
/* BTS_Tests.ttcn, line 7083 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(7084);
/* BTS_Tests.ttcn, line 7084 */
INTEGER trx__nr(0);
current_location.update_lineno(7085);
/* BTS_Tests.ttcn, line 7085 */
INTEGER bts__nr(0);
current_location.update_lineno(7086);
/* BTS_Tests.ttcn, line 7086 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(7088);
/* BTS_Tests.ttcn, line 7088 */
{
INTEGER tmp_848;
PCUIF__Types::PCUIF__Message tmp_849;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_848, tmp_849);
if (tmp_848.is_bound()) pcu__conn__id = tmp_848;
if (tmp_849.is_bound()) first__info = tmp_849;
}
current_location.update_lineno(7090);
/* BTS_Tests.ttcn, line 7090 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), cs_17, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(7093);
/* BTS_Tests.ttcn, line 7093 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__IPA__PDCH__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), FALSE, NULL);
current_location.update_lineno(7094);
/* BTS_Tests.ttcn, line 7094 */
{
tmp_850:
alt_status tmp_850_alt_flag_0 = ALT_MAYBE;
alt_status tmp_850_alt_flag_1 = ALT_MAYBE;
alt_status tmp_850_alt_flag_2 = ALT_MAYBE;
alt_status tmp_850_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_850_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7095);
/* BTS_Tests.ttcn, line 7095 */
tmp_850_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__IPA__PDCH__ACT__NACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__Cause_template(ANY_VALUE)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_850_alt_flag_0 == ALT_YES) break;
}
if (tmp_850_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7096);
/* BTS_Tests.ttcn, line 7096 */
tmp_850_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__IPA__PDCH__ACT__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__FrameNumber_template(ANY_VALUE)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_850_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7097);
/* BTS_Tests.ttcn, line 7097 */
Misc__Helpers::f__shutdown(cs_4, 7097, FAIL, cs_126);
break;
}
}
if (tmp_850_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7099);
/* BTS_Tests.ttcn, line 7099 */
tmp_850_alt_flag_2 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL);
if (tmp_850_alt_flag_2 == ALT_YES) {
current_location.update_lineno(7099);
/* BTS_Tests.ttcn, line 7099 */
goto tmp_850;
}
}
if (tmp_850_default_flag == ALT_MAYBE) {
tmp_850_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_850_default_flag == ALT_YES || tmp_850_default_flag == ALT_BREAK) break;
else if (tmp_850_default_flag == ALT_REPEAT) goto tmp_850;
}
current_location.update_lineno(7094);
/* BTS_Tests.ttcn, line 7094 */
if (tmp_850_alt_flag_0 == ALT_NO && tmp_850_alt_flag_1 == ALT_NO && tmp_850_alt_flag_2 == ALT_NO && tmp_850_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7094 and 7100.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7102);
/* BTS_Tests.ttcn, line 7102 */
f__rsl__transceive(RSL__Types::ts__RSL__RF__CHAN__REL(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), RSL__Types::tr__RSL__RF__CHAN__REL__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), cs_18, TRUE);
current_location.update_lineno(7104);
/* BTS_Tests.ttcn, line 7104 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__ipa__pdch__tchf__act__pdch__act__nack(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_tchf_act_pdch_act_nack(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_ipa_pdch_tchf_act_pdch_act_nack", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__ipa__pdch__tchf__act__pdch__act__nack(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7106, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_ipa_pdch_tchf_act_pdch_act_nack");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_ipa_pdch_tchf_act_pdch_act_nack", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7107);
/* BTS_Tests.ttcn, line 7107 */
ConnHdlrPars pars;
current_location.update_lineno(7108);
/* BTS_Tests.ttcn, line 7108 */
COMPONENT vc__conn;
current_location.update_lineno(7109);
/* BTS_Tests.ttcn, line 7109 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(7111);
/* BTS_Tests.ttcn, line 7111 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(3)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(7112);
/* BTS_Tests.ttcn, line 7112 */
vc__conn = f__start__handler(&f__TC__dyn__ipa__pdch__tchf__act__pdch__act__nack, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(7113);
/* BTS_Tests.ttcn, line 7113 */
{
tmp_853:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_853;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_853;
}
current_location.update_lineno(7113);
/* BTS_Tests.ttcn, line 7113 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 7113.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_ipa_pdch_tchf_act_pdch_act_nack was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__dyn__ipa__pdch__act__tchf__act__nack(const CHARSTRING& id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7117, TTCN_Location::LOCATION_FUNCTION, "f_TC_dyn_ipa_pdch_act_tchf_act_nack");
current_location.update_lineno(7118);
/* BTS_Tests.ttcn, line 7118 */
PCUIF__Types::PCUIF__Message first__info;
current_location.update_lineno(7119);
/* BTS_Tests.ttcn, line 7119 */
INTEGER ts__nr(const_cast< const GSM__Types::RslChannelNr&>(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr).tn());
current_location.update_lineno(7120);
/* BTS_Tests.ttcn, line 7120 */
INTEGER trx__nr(0);
current_location.update_lineno(7121);
/* BTS_Tests.ttcn, line 7121 */
INTEGER bts__nr(0);
current_location.update_lineno(7122);
/* BTS_Tests.ttcn, line 7122 */
INTEGER pcu__conn__id(-1);
current_location.update_lineno(7125);
/* BTS_Tests.ttcn, line 7125 */
RSL__Emulation::f__rslem__register(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
current_location.update_lineno(7127);
/* BTS_Tests.ttcn, line 7127 */
{
INTEGER tmp_854;
PCUIF__Types::PCUIF__Message tmp_855;
f__init__pcu(ConnHdlr_component_PCU, id, tmp_854, tmp_855);
if (tmp_854.is_bound()) pcu__conn__id = tmp_854;
if (tmp_855.is_bound()) first__info = tmp_855;
}
current_location.update_lineno(7129);
/* BTS_Tests.ttcn, line 7129 */
f__dyn__ipa__pdch__act(pcu__conn__id, bts__nr, trx__nr);
current_location.update_lineno(7131);
/* BTS_Tests.ttcn, line 7131 */
f__rsl__transceive(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::ts__RSL__CHAN__ACT_at_defval), RSL__Types::tr__RSL__CHAN__ACT__NACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::tr__RSL__CHAN__ACT__NACK_cause_defval), cs_17, f__rsl__transceive_ignore__other_defval);
current_location.update_lineno(7134);
/* BTS_Tests.ttcn, line 7134 */
f__dyn__ipa__pdch__deact(pcu__conn__id, bts__nr, trx__nr);
current_location.update_lineno(7136);
/* BTS_Tests.ttcn, line 7136 */
TTCN_Runtime::setverdict(PASS);
}

void start_f__TC__dyn__ipa__pdch__act__tchf__act__nack(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_act_tchf_act_nack(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_dyn_ipa_pdch_act_tchf_act_nack", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__dyn__ipa__pdch__act__tchf__act__nack(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7138, TTCN_Location::LOCATION_TESTCASE, "TC_dyn_ipa_pdch_act_tchf_act_nack");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_dyn_ipa_pdch_act_tchf_act_nack", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7139);
/* BTS_Tests.ttcn, line 7139 */
ConnHdlrPars pars;
current_location.update_lineno(7140);
/* BTS_Tests.ttcn, line 7140 */
COMPONENT vc__conn;
current_location.update_lineno(7141);
/* BTS_Tests.ttcn, line 7141 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(7143);
/* BTS_Tests.ttcn, line 7143 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(3)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(7144);
/* BTS_Tests.ttcn, line 7144 */
vc__conn = f__start__handler(&f__TC__dyn__ipa__pdch__act__tchf__act__nack, pars, TRUE, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(7145);
/* BTS_Tests.ttcn, line 7145 */
{
tmp_858:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_858;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_858;
}
current_location.update_lineno(7145);
/* BTS_Tests.ttcn, line 7145 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 7145.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_dyn_ipa_pdch_act_tchf_act_nack was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__tx__lapdm(const LAPDm__Types::LapdmFrame_template& l, const GSM__Types::RslLinkId_template& link__id)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7153, TTCN_Location::LOCATION_FUNCTION, "f_tx_lapdm");
current_location.update_lineno(7155);
/* BTS_Tests.ttcn, line 7155 */
OCTETSTRING l2(LAPDm__Types::enc__LapdmFrame(l.valueof()));
current_location.update_lineno(7156);
/* BTS_Tests.ttcn, line 7156 */
GSM__RR__Types::SacchL1Header_template l1h;
current_location.update_lineno(7159);
/* BTS_Tests.ttcn, line 7159 */
if ((const_cast< const GSM__Types::RslLinkId_template&>(link__id).c().valueof() == GSM__Types::RslLinkIdC::SACCH)) {
current_location.update_lineno(7161);
/* BTS_Tests.ttcn, line 7161 */
l1h = GSM__RR__Types::ts__SacchL1Header(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).l1__pars().ms__power__level(), const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).l1__pars().ms__actual__ta(), GSM__RR__Types::ts__SacchL1Header_fpc_defval);
current_location.update_lineno(7162);
/* BTS_Tests.ttcn, line 7162 */
ConnHdlr_component_L1CTL.send(L1CTL__Types::ts__L1CTL__DATA__REQ__SACCH(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), link__id, l1h, Osmocom__Types::f__pad__oct(l2, 21, os_4)), FALSE, NULL);
}
else {
current_location.update_lineno(7165);
/* BTS_Tests.ttcn, line 7165 */
ConnHdlr_component_L1CTL.send(L1CTL__Types::ts__L1CTL__DATA__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), link__id, Osmocom__Types::f__pad__oct(l2, 23, os_4)), FALSE, NULL);
}
}

void start_f__tx__lapdm(const COMPONENT& component_reference, const LAPDm__Types::LapdmFrame_template& l, const GSM__Types::RslLinkId_template& link__id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tx_lapdm(");
l.log();
TTCN_Logger::log_event_str(", ");
link__id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_tx_lapdm", text_buf);
l.encode_text(text_buf);
link__id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

boolean operator==(null_type, const RllTestCases& other_value)
{
if (other_value.val_ptr == NULL)
TTCN_error("The right operand of comparison is an unbound value of type @BTS_Tests.RllTestCases.");
return other_value.val_ptr->n_elements == 0;
}

RllTestCase_template t__EITC(const INTEGER_template& sapi, const GSM__Types::RslLinkId_template& id, const OCTETSTRING& l3, const BOOLEAN& exp, const RSL__Types::RSL__IE__ActivationType& act__type)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7177, TTCN_Location::LOCATION_TEMPLATE, "t_EITC");
RllTestCase_template ret_val;
ret_val.sapi() = sapi;
ret_val.link__id() = id;
ret_val.l3() = l3;
ret_val.exp() = exp;
ret_val.act__type() = act__type;
return ret_val;
}

void f__rll__testmatrix(const RllTestCases& tcs, const void__fn& fn)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7190, TTCN_Location::LOCATION_FUNCTION, "f_rll_testmatrix");
current_location.update_lineno(7191);
/* BTS_Tests.ttcn, line 7191 */
ConnHdlrPars pars;
current_location.update_lineno(7192);
/* BTS_Tests.ttcn, line 7192 */
COMPONENT vc__conn;
current_location.update_lineno(7193);
/* BTS_Tests.ttcn, line 7193 */
f__init(f__init_trx__nr_defval);
{
current_location.update_lineno(7196);
/* BTS_Tests.ttcn, line 7196 */
INTEGER i(0);
current_location.update_lineno(7196);
/* BTS_Tests.ttcn, line 7196 */
for ( ; ; ) {
current_location.update_lineno(7196);
/* BTS_Tests.ttcn, line 7196 */
if (!(i < test__CT_component_g__AllChanTypes.size_of())) break;
current_location.update_lineno(7197);
/* BTS_Tests.ttcn, line 7197 */
pars = t__Pars(GSM__Types::RslChannelNr_template(const_cast< const ChannelNrs&>(test__CT_component_g__AllChanTypes)[i]), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
{
current_location.update_lineno(7200);
/* BTS_Tests.ttcn, line 7200 */
INTEGER j(0);
current_location.update_lineno(7200);
/* BTS_Tests.ttcn, line 7200 */
for ( ; ; ) {
current_location.update_lineno(7200);
/* BTS_Tests.ttcn, line 7200 */
if (!(j < tcs.size_of())) break;
current_location.update_lineno(7201);
/* BTS_Tests.ttcn, line 7201 */
pars.spec()().rll() = const_cast< const RllTestCases&>(tcs)[j];
current_location.update_lineno(7202);
/* BTS_Tests.ttcn, line 7202 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Runtime::get_testcasename().log();
TTCN_Logger::log_event_str(": XXX Starting ");
const_cast< const RllTestCases&>(tcs)[j].log();
TTCN_Logger::log_event_str(" on ");
const_cast< const ChannelNrs&>(test__CT_component_g__AllChanTypes)[i].log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(7203);
/* BTS_Tests.ttcn, line 7203 */
vc__conn = f__start__handler(fn, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(7204);
/* BTS_Tests.ttcn, line 7204 */
{
tmp_863:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_863;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_863;
}
current_location.update_lineno(7204);
/* BTS_Tests.ttcn, line 7204 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 7204.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7200);
/* BTS_Tests.ttcn, line 7200 */
{
INTEGER tmp_864;
++j;
}
}
}
current_location.update_lineno(7196);
/* BTS_Tests.ttcn, line 7196 */
{
INTEGER tmp_865;
++i;
}
}
}
current_location.update_lineno(7208);
/* BTS_Tests.ttcn, line 7208 */
Misc__Helpers::f__shutdown(cs_4, 7208, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}

void start_f__rll__testmatrix(const COMPONENT& component_reference, const RllTestCases& tcs, const void__fn& fn)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rll_testmatrix(");
tcs.log();
TTCN_Logger::log_event_str(", ");
fn.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_rll_testmatrix", text_buf);
tcs.encode_text(text_buf);
fn.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__rll__est__ind(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7212, TTCN_Location::LOCATION_FUNCTION, "f_TC_rll_est_ind");
current_location.update_lineno(7213);
/* BTS_Tests.ttcn, line 7213 */
RllTestCase tc(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).spec()().rll());
current_location.update_lineno(7214);
/* BTS_Tests.ttcn, line 7214 */
TIMER T("T", 3.0);
current_location.update_lineno(7216);
/* BTS_Tests.ttcn, line 7216 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7217);
/* BTS_Tests.ttcn, line 7217 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(7220);
/* BTS_Tests.ttcn, line 7220 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, const_cast< const RllTestCase&>(tc).act__type());
current_location.update_lineno(7221);
/* BTS_Tests.ttcn, line 7221 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(7223);
/* BTS_Tests.ttcn, line 7223 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__SABM(const_cast< const RllTestCase&>(tc).sapi(), LAPDm__Types::cr__MO__CMD, TRUE, const_cast< const RllTestCase&>(tc).l3()), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id()));
current_location.update_lineno(7224);
/* BTS_Tests.ttcn, line 7224 */
T.start();
current_location.update_lineno(7225);
/* BTS_Tests.ttcn, line 7225 */
{
tmp_866:
alt_status tmp_866_alt_flag_0 = ALT_UNCHECKED;
alt_status tmp_866_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_866_alt_flag_2 = ALT_MAYBE;
alt_status tmp_866_alt_flag_3 = ALT_UNCHECKED;
alt_status tmp_866_alt_flag_4 = ALT_UNCHECKED;
alt_status tmp_866_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_866_alt_flag_0 == ALT_UNCHECKED) {
current_location.update_lineno(7226);
/* BTS_Tests.ttcn, line 7226 */
if ((const_cast< const RllTestCase&>(tc).l3() != os_2)) tmp_866_alt_flag_0 = ALT_MAYBE;
else tmp_866_alt_flag_0 = ALT_NO;
}
if (tmp_866_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7226);
/* BTS_Tests.ttcn, line 7226 */
tmp_866_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__EST__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id()), OCTETSTRING_template(const_cast< const RllTestCase&>(tc).l3())), NULL, any_compref, NULL, NULL, NULL);
if (tmp_866_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7227);
/* BTS_Tests.ttcn, line 7227 */
if (const_cast< const RllTestCase&>(tc).exp()) {
current_location.update_lineno(7228);
/* BTS_Tests.ttcn, line 7228 */
TTCN_Runtime::setverdict(PASS);
}
else {
current_location.update_lineno(7230);
/* BTS_Tests.ttcn, line 7230 */
Misc__Helpers::f__shutdown(cs_4, 7230, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Unexpected EST IND with L3 in "),tc.log(),TTCN_Logger::end_event_log2str()));
}
break;
}
}
if (tmp_866_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(7233);
/* BTS_Tests.ttcn, line 7233 */
if ((const_cast< const RllTestCase&>(tc).l3() == os_2)) tmp_866_alt_flag_1 = ALT_MAYBE;
else tmp_866_alt_flag_1 = ALT_NO;
}
if (tmp_866_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7233);
/* BTS_Tests.ttcn, line 7233 */
tmp_866_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__EST__IND__NOL3(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id())), NULL, any_compref, NULL, NULL, NULL);
if (tmp_866_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7234);
/* BTS_Tests.ttcn, line 7234 */
if (const_cast< const RllTestCase&>(tc).exp()) {
current_location.update_lineno(7235);
/* BTS_Tests.ttcn, line 7235 */
TTCN_Runtime::setverdict(PASS);
}
else {
current_location.update_lineno(7237);
/* BTS_Tests.ttcn, line 7237 */
Misc__Helpers::f__shutdown(cs_4, 7237, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Unexpected EST IND without L3 in "),tc.log(),TTCN_Logger::end_event_log2str()));
}
break;
}
}
if (tmp_866_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7241);
/* BTS_Tests.ttcn, line 7241 */
tmp_866_alt_flag_2 = as__meas__res_instance(FALSE, first_run);
if (tmp_866_alt_flag_2 == ALT_REPEAT) goto tmp_866;
if (tmp_866_alt_flag_2 == ALT_BREAK) break;
if (tmp_866_alt_flag_2 == ALT_YES) break;
}
if (tmp_866_alt_flag_3 == ALT_UNCHECKED) {
current_location.update_lineno(7242);
/* BTS_Tests.ttcn, line 7242 */
if (const_cast< const RllTestCase&>(tc).exp()) tmp_866_alt_flag_3 = ALT_MAYBE;
else tmp_866_alt_flag_3 = ALT_NO;
}
if (tmp_866_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(7242);
/* BTS_Tests.ttcn, line 7242 */
tmp_866_alt_flag_3 = T.timeout(NULL);
if (tmp_866_alt_flag_3 == ALT_YES) {
current_location.update_lineno(7243);
/* BTS_Tests.ttcn, line 7243 */
Misc__Helpers::f__shutdown(cs_4, 7243, FAIL, cs_127);
break;
}
}
if (tmp_866_alt_flag_4 == ALT_UNCHECKED) {
current_location.update_lineno(7245);
/* BTS_Tests.ttcn, line 7245 */
if ((!(const_cast< const RllTestCase&>(tc).exp()))) tmp_866_alt_flag_4 = ALT_MAYBE;
else tmp_866_alt_flag_4 = ALT_NO;
}
if (tmp_866_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(7245);
/* BTS_Tests.ttcn, line 7245 */
tmp_866_alt_flag_4 = T.timeout(NULL);
if (tmp_866_alt_flag_4 == ALT_YES) {
current_location.update_lineno(7246);
/* BTS_Tests.ttcn, line 7246 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_866_default_flag == ALT_MAYBE) {
tmp_866_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_866_default_flag == ALT_YES || tmp_866_default_flag == ALT_BREAK) break;
else if (tmp_866_default_flag == ALT_REPEAT) goto tmp_866;
}
current_location.update_lineno(7225);
/* BTS_Tests.ttcn, line 7225 */
if (tmp_866_alt_flag_0 == ALT_NO && tmp_866_alt_flag_1 == ALT_NO && tmp_866_alt_flag_2 == ALT_NO && tmp_866_alt_flag_3 == ALT_NO && tmp_866_alt_flag_4 == ALT_NO && tmp_866_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7225 and 7248.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7250);
/* BTS_Tests.ttcn, line 7250 */
f__rsl__chan__deact();
current_location.update_lineno(7251);
/* BTS_Tests.ttcn, line 7251 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7252);
/* BTS_Tests.ttcn, line 7252 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rll__est__ind(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_est_ind(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rll_est_ind", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rll__est__ind(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7254, TTCN_Location::LOCATION_TESTCASE, "TC_rll_est_ind");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_est_ind", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7255);
/* BTS_Tests.ttcn, line 7255 */
RllTestCases tcs;
tcs.set_size(7);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__DCCH(0), os_17, TRUE, t__EITC_act__type_defval).valueof();
tcs[1] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__DCCH(0), os_2, FALSE, t__EITC_act__type_defval).valueof();
tcs[2] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__DCCH(0), os_2, TRUE, RSL__Types::c__RSL__IE__ActType__ASS).valueof();
tcs[3] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__DCCH(3), os_17, FALSE, t__EITC_act__type_defval).valueof();
tcs[4] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__SACCH(3), os_17, FALSE, t__EITC_act__type_defval).valueof();
tcs[5] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__DCCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
tcs[6] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__SACCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7270);
/* BTS_Tests.ttcn, line 7270 */
f__rll__testmatrix(tcs, &f__TC__rll__est__ind);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_est_ind was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__rll__est__req(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7274, TTCN_Location::LOCATION_FUNCTION, "f_TC_rll_est_req");
current_location.update_lineno(7275);
/* BTS_Tests.ttcn, line 7275 */
RllTestCase tc(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).spec()().rll());
current_location.update_lineno(7276);
/* BTS_Tests.ttcn, line 7276 */
L1CTL__Types::L1ctlMessage dl;
current_location.update_lineno(7277);
/* BTS_Tests.ttcn, line 7277 */
TIMER T("T", 3.0);
current_location.update_lineno(7279);
/* BTS_Tests.ttcn, line 7279 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7280);
/* BTS_Tests.ttcn, line 7280 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(7283);
/* BTS_Tests.ttcn, line 7283 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7284);
/* BTS_Tests.ttcn, line 7284 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(7287);
/* BTS_Tests.ttcn, line 7287 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__EST__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id())), FALSE, NULL);
current_location.update_lineno(7288);
/* BTS_Tests.ttcn, line 7288 */
T.start();
current_location.update_lineno(7289);
/* BTS_Tests.ttcn, line 7289 */
{
tmp_867:
alt_status tmp_867_alt_flag_0 = ALT_MAYBE;
alt_status tmp_867_alt_flag_1 = ALT_MAYBE;
alt_status tmp_867_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_867_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7290);
/* BTS_Tests.ttcn, line 7290 */
tmp_867_alt_flag_0 = as__l1__exp__lapdm_instance(LAPDm__Types::tr__LAPDm__SABM(INTEGER_template(const_cast< const RllTestCase&>(tc).sapi()), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), BOOLEAN_template(TRUE), OCTETSTRING_template(os_2)), first_run);
if (tmp_867_alt_flag_0 == ALT_REPEAT) goto tmp_867;
if (tmp_867_alt_flag_0 == ALT_BREAK) break;
if (tmp_867_alt_flag_0 == ALT_YES) break;
}
if (tmp_867_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7291);
/* BTS_Tests.ttcn, line 7291 */
tmp_867_alt_flag_1 = T.timeout(NULL);
if (tmp_867_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7292);
/* BTS_Tests.ttcn, line 7292 */
Misc__Helpers::f__shutdown(cs_4, 7292, FAIL, cs_128);
break;
}
}
if (tmp_867_default_flag == ALT_MAYBE) {
tmp_867_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_867_default_flag == ALT_YES || tmp_867_default_flag == ALT_BREAK) break;
else if (tmp_867_default_flag == ALT_REPEAT) goto tmp_867;
}
current_location.update_lineno(7289);
/* BTS_Tests.ttcn, line 7289 */
if (tmp_867_alt_flag_0 == ALT_NO && tmp_867_alt_flag_1 == ALT_NO && tmp_867_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7289 and 7294.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7296);
/* BTS_Tests.ttcn, line 7296 */
f__rsl__chan__deact();
current_location.update_lineno(7297);
/* BTS_Tests.ttcn, line 7297 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7298);
/* BTS_Tests.ttcn, line 7298 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rll__est__req(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_est_req(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rll_est_req", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rll__est__req__DCCH__3(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7300, TTCN_Location::LOCATION_TESTCASE, "TC_rll_est_req_DCCH_3");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_est_req_DCCH_3", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7301);
/* BTS_Tests.ttcn, line 7301 */
RllTestCases tcs;
tcs.set_size(1);
tcs[0] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__DCCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7305);
/* BTS_Tests.ttcn, line 7305 */
f__rll__testmatrix(tcs, &f__TC__rll__est__req);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_est_req_DCCH_3 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__est__req__ACCH__3(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7307, TTCN_Location::LOCATION_TESTCASE, "TC_rll_est_req_ACCH_3");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_est_req_ACCH_3", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7308);
/* BTS_Tests.ttcn, line 7308 */
RllTestCases tcs;
tcs.set_size(1);
tcs[0] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__SACCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7312);
/* BTS_Tests.ttcn, line 7312 */
f__rll__testmatrix(tcs, &f__TC__rll__est__req);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_est_req_ACCH_3 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

alt_status as__l1__exp__lapdm_instance(const LAPDm__Types::LapdmFrame_template& exp, boolean first_alt_run)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7316, TTCN_Location::LOCATION_ALTSTEP, "as_l1_exp_lapdm");
current_location.update_lineno(7317);
/* BTS_Tests.ttcn, line 7317 */
L1CTL__Types::L1ctlMessage dl;
alt_status ret_val = ALT_NO;
current_location.update_lineno(7318);
/* BTS_Tests.ttcn, line 7318 */
switch (ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(ANY_VALUE), L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(dl), any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(7319);
/* BTS_Tests.ttcn, line 7319 */
LAPDm__Types::LapdmFrame lapdm;
current_location.update_lineno(7320);
/* BTS_Tests.ttcn, line 7320 */
OCTETSTRING l2(const_cast< const L1CTL__Types::L1ctlMessage&>(dl).payload()().data__ind().payload());
current_location.update_lineno(7321);
/* BTS_Tests.ttcn, line 7321 */
if ((const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().link__id().c() == GSM__Types::RslLinkIdC::SACCH)) {
current_location.update_lineno(7323);
/* BTS_Tests.ttcn, line 7323 */
{
OCTETSTRING tmp_868;
tmp_868 = substr(l2, 2, (l2.lengthof() - 2));
l2 = tmp_868;
}
}
current_location.update_lineno(7325);
/* BTS_Tests.ttcn, line 7325 */
if (exp.ischosen(LAPDm__Types::LapdmFrame::ALT_ab)) {
current_location.update_lineno(7326);
/* BTS_Tests.ttcn, line 7326 */
lapdm.ab() = LAPDm__Types::dec__LapdmFrameAB(l2);
}
else {
current_location.update_lineno(7327);
/* BTS_Tests.ttcn, line 7327 */
if (exp.ischosen(LAPDm__Types::LapdmFrame::ALT_b4)) {
current_location.update_lineno(7328);
/* BTS_Tests.ttcn, line 7328 */
lapdm.b4() = LAPDm__Types::dec__LapdmFrameB4(l2);
}
else {
current_location.update_lineno(7329);
/* BTS_Tests.ttcn, line 7329 */
if (exp.ischosen(LAPDm__Types::LapdmFrame::ALT_bbis)) {
current_location.update_lineno(7330);
/* BTS_Tests.ttcn, line 7330 */
lapdm.bbis() = LAPDm__Types::dec__LapdmFrameBbis(l2);
}
else {
current_location.update_lineno(7331);
/* BTS_Tests.ttcn, line 7331 */
if (exp.ischosen(LAPDm__Types::LapdmFrame::ALT_bter)) {
current_location.update_lineno(7332);
/* BTS_Tests.ttcn, line 7332 */
lapdm.bter() = LAPDm__Types::dec__LapdmFrameBter(l2);
}
}
}
}
current_location.update_lineno(7334);
/* BTS_Tests.ttcn, line 7334 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Rx LAPDm ");
lapdm.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(7335);
/* BTS_Tests.ttcn, line 7335 */
if (exp.match(lapdm)) {
current_location.update_lineno(7336);
/* BTS_Tests.ttcn, line 7336 */
TTCN_Runtime::setverdict(PASS);
}
else {
current_location.update_lineno(7338);
/* BTS_Tests.ttcn, line 7338 */
return ALT_REPEAT;
}
}
return ALT_YES;
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
current_location.update_lineno(7341);
/* BTS_Tests.ttcn, line 7341 */
switch (ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(7341);
/* BTS_Tests.ttcn, line 7341 */
return ALT_REPEAT;
}
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
return ret_val;
}

void as__l1__exp__lapdm(boolean nodefault_modifier, const LAPDm__Types::LapdmFrame_template& exp)
{
altstep_begin:
boolean block_flag = FALSE;
alt_status altstep_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
for ( ; ; ) {
TTCN_Snapshot::take_new(block_flag);
if (altstep_flag != ALT_NO) {
altstep_flag = as__l1__exp__lapdm_instance(exp, !block_flag);
if (altstep_flag == ALT_YES || altstep_flag == ALT_BREAK) return;
else if (altstep_flag == ALT_REPEAT) goto altstep_begin;
}
if (!nodefault_modifier && default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(!block_flag);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) return;
else if (default_flag == ALT_REPEAT) goto altstep_begin;
}
if (altstep_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in altstep as_l1_exp_lapdm.");
else block_flag = TRUE;
}
}

Default_Base *activate_as__l1__exp__lapdm(const LAPDm__Types::LapdmFrame_template& exp)
{
return new as__l1__exp__lapdm_Default(exp);
}

void f__l1__exp__lapdm(const LAPDm__Types::LapdmFrame_template& exp, const FLOAT& t)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7343, TTCN_Location::LOCATION_FUNCTION, "f_l1_exp_lapdm");
current_location.update_lineno(7344);
/* BTS_Tests.ttcn, line 7344 */
TIMER T("T", t);
current_location.update_lineno(7345);
/* BTS_Tests.ttcn, line 7345 */
T.start();
current_location.update_lineno(7346);
/* BTS_Tests.ttcn, line 7346 */
{
tmp_873:
alt_status tmp_873_alt_flag_0 = ALT_MAYBE;
alt_status tmp_873_alt_flag_1 = ALT_MAYBE;
alt_status tmp_873_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_873_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7347);
/* BTS_Tests.ttcn, line 7347 */
tmp_873_alt_flag_0 = T.timeout(NULL);
if (tmp_873_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7348);
/* BTS_Tests.ttcn, line 7348 */
Misc__Helpers::f__shutdown(cs_4, 7348, FAIL, (TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for LAPDm "),exp.log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_873_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7350);
/* BTS_Tests.ttcn, line 7350 */
tmp_873_alt_flag_1 = as__l1__exp__lapdm_instance(exp, first_run);
if (tmp_873_alt_flag_1 == ALT_REPEAT) goto tmp_873;
if (tmp_873_alt_flag_1 == ALT_BREAK) break;
if (tmp_873_alt_flag_1 == ALT_YES) break;
}
if (tmp_873_default_flag == ALT_MAYBE) {
tmp_873_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_873_default_flag == ALT_YES || tmp_873_default_flag == ALT_BREAK) break;
else if (tmp_873_default_flag == ALT_REPEAT) goto tmp_873;
}
current_location.update_lineno(7346);
/* BTS_Tests.ttcn, line 7346 */
if (tmp_873_alt_flag_0 == ALT_NO && tmp_873_alt_flag_1 == ALT_NO && tmp_873_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7346 and 7351.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__l1__exp__lapdm(const COMPONENT& component_reference, const LAPDm__Types::LapdmFrame_template& exp, const FLOAT& t)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_l1_exp_lapdm(");
exp.log();
TTCN_Logger::log_event_str(", ");
t.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_l1_exp_lapdm", text_buf);
exp.encode_text(text_buf);
t.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__est__rll__mo(const INTEGER& sapi, const GSM__Types::RslLinkId& link__id, const OCTETSTRING& l3)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7355, TTCN_Location::LOCATION_FUNCTION, "f_est_rll_mo");
current_location.update_lineno(7356);
/* BTS_Tests.ttcn, line 7356 */
TIMER T("T", 2.0);
current_location.update_lineno(7358);
/* BTS_Tests.ttcn, line 7358 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__SABM(sapi, LAPDm__Types::cr__MO__CMD, TRUE, l3), GSM__Types::RslLinkId_template(link__id));
current_location.update_lineno(7360);
/* BTS_Tests.ttcn, line 7360 */
T.start();
current_location.update_lineno(7361);
/* BTS_Tests.ttcn, line 7361 */
{
tmp_874:
alt_status tmp_874_alt_flag_0 = ALT_UNCHECKED;
alt_status tmp_874_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_874_alt_flag_2 = ALT_MAYBE;
alt_status tmp_874_alt_flag_3 = ALT_MAYBE;
alt_status tmp_874_alt_flag_4 = ALT_MAYBE;
alt_status tmp_874_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_874_alt_flag_0 == ALT_UNCHECKED) {
current_location.update_lineno(7362);
/* BTS_Tests.ttcn, line 7362 */
if ((l3 != os_2)) tmp_874_alt_flag_0 = ALT_MAYBE;
else tmp_874_alt_flag_0 = ALT_NO;
}
if (tmp_874_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7362);
/* BTS_Tests.ttcn, line 7362 */
tmp_874_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__EST__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id), OCTETSTRING_template(l3)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_874_alt_flag_0 == ALT_YES) break;
}
if (tmp_874_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(7363);
/* BTS_Tests.ttcn, line 7363 */
if ((l3 == os_2)) tmp_874_alt_flag_1 = ALT_MAYBE;
else tmp_874_alt_flag_1 = ALT_NO;
}
if (tmp_874_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7363);
/* BTS_Tests.ttcn, line 7363 */
tmp_874_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__EST__IND__NOL3(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_874_alt_flag_1 == ALT_YES) break;
}
if (tmp_874_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7364);
/* BTS_Tests.ttcn, line 7364 */
tmp_874_alt_flag_2 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__ERROR__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id), OCTETSTRING_template(ANY_VALUE)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_874_alt_flag_2 == ALT_YES) {
current_location.update_lineno(7365);
/* BTS_Tests.ttcn, line 7365 */
Misc__Helpers::f__shutdown(cs_4, 7365, FAIL, cs_129);
break;
}
}
if (tmp_874_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(7367);
/* BTS_Tests.ttcn, line 7367 */
tmp_874_alt_flag_3 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL);
if (tmp_874_alt_flag_3 == ALT_YES) {
current_location.update_lineno(7367);
/* BTS_Tests.ttcn, line 7367 */
goto tmp_874;
}
}
if (tmp_874_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(7368);
/* BTS_Tests.ttcn, line 7368 */
tmp_874_alt_flag_4 = T.timeout(NULL);
if (tmp_874_alt_flag_4 == ALT_YES) {
current_location.update_lineno(7369);
/* BTS_Tests.ttcn, line 7369 */
Misc__Helpers::f__shutdown(cs_4, 7369, FAIL, cs_130);
break;
}
}
if (tmp_874_default_flag == ALT_MAYBE) {
tmp_874_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_874_default_flag == ALT_YES || tmp_874_default_flag == ALT_BREAK) break;
else if (tmp_874_default_flag == ALT_REPEAT) goto tmp_874;
}
current_location.update_lineno(7361);
/* BTS_Tests.ttcn, line 7361 */
if (tmp_874_alt_flag_0 == ALT_NO && tmp_874_alt_flag_1 == ALT_NO && tmp_874_alt_flag_2 == ALT_NO && tmp_874_alt_flag_3 == ALT_NO && tmp_874_alt_flag_4 == ALT_NO && tmp_874_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7361 and 7371.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7373);
/* BTS_Tests.ttcn, line 7373 */
f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__UA(INTEGER_template(sapi), BOOLEAN_template(LAPDm__Types::cr__MT__RSP), BOOLEAN_template(TRUE), OCTETSTRING_template(l3)), f__l1__exp__lapdm_t_defval);
}

void start_f__est__rll__mo(const COMPONENT& component_reference, const INTEGER& sapi, const GSM__Types::RslLinkId& link__id, const OCTETSTRING& l3)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_est_rll_mo(");
sapi.log();
TTCN_Logger::log_event_str(", ");
link__id.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_est_rll_mo", text_buf);
sapi.encode_text(text_buf);
link__id.encode_text(text_buf);
l3.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__rll__rel__ind(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7377, TTCN_Location::LOCATION_FUNCTION, "f_TC_rll_rel_ind");
current_location.update_lineno(7378);
/* BTS_Tests.ttcn, line 7378 */
RllTestCase tc(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).spec()().rll());
current_location.update_lineno(7380);
/* BTS_Tests.ttcn, line 7380 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7381);
/* BTS_Tests.ttcn, line 7381 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(7384);
/* BTS_Tests.ttcn, line 7384 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7385);
/* BTS_Tests.ttcn, line 7385 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(7388);
/* BTS_Tests.ttcn, line 7388 */
f__est__rll__mo(const_cast< const RllTestCase&>(tc).sapi(), const_cast< const RllTestCase&>(tc).link__id(), const_cast< const RllTestCase&>(tc).l3());
current_location.update_lineno(7391);
/* BTS_Tests.ttcn, line 7391 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__DISC(const_cast< const RllTestCase&>(tc).sapi(), LAPDm__Types::cr__MO__CMD, TRUE), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id()));
current_location.update_lineno(7393);
/* BTS_Tests.ttcn, line 7393 */
{
tmp_875:
alt_status tmp_875_alt_flag_0 = ALT_MAYBE;
alt_status tmp_875_alt_flag_1 = ALT_MAYBE;
alt_status tmp_875_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_875_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7394);
/* BTS_Tests.ttcn, line 7394 */
tmp_875_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__REL__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id())), NULL, any_compref, NULL, NULL, NULL);
if (tmp_875_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7395);
/* BTS_Tests.ttcn, line 7395 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_875_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7398);
/* BTS_Tests.ttcn, line 7398 */
tmp_875_alt_flag_1 = as__meas__res_instance(FALSE, first_run);
if (tmp_875_alt_flag_1 == ALT_REPEAT) goto tmp_875;
if (tmp_875_alt_flag_1 == ALT_BREAK) break;
if (tmp_875_alt_flag_1 == ALT_YES) break;
}
if (tmp_875_default_flag == ALT_MAYBE) {
tmp_875_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_875_default_flag == ALT_YES || tmp_875_default_flag == ALT_BREAK) break;
else if (tmp_875_default_flag == ALT_REPEAT) goto tmp_875;
}
current_location.update_lineno(7393);
/* BTS_Tests.ttcn, line 7393 */
if (tmp_875_alt_flag_0 == ALT_NO && tmp_875_alt_flag_1 == ALT_NO && tmp_875_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7393 and 7399.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7402);
/* BTS_Tests.ttcn, line 7402 */
f__rsl__chan__deact();
current_location.update_lineno(7403);
/* BTS_Tests.ttcn, line 7403 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7404);
/* BTS_Tests.ttcn, line 7404 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rll__rel__ind(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_rel_ind(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rll_rel_ind", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rll__rel__ind__DCCH__0(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7406, TTCN_Location::LOCATION_TESTCASE, "TC_rll_rel_ind_DCCH_0");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_rel_ind_DCCH_0", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7407);
/* BTS_Tests.ttcn, line 7407 */
RllTestCases tcs;
tcs.set_size(1);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__DCCH(0), os_17, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7410);
/* BTS_Tests.ttcn, line 7410 */
f__rll__testmatrix(tcs, &f__TC__rll__rel__ind);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_rel_ind_DCCH_0 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__rel__ind__ACCH__0(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7413, TTCN_Location::LOCATION_TESTCASE, "TC_rll_rel_ind_ACCH_0");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_rel_ind_ACCH_0", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7414);
/* BTS_Tests.ttcn, line 7414 */
RllTestCases tcs;
tcs.set_size(1);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__SACCH(0), os_2, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7417);
/* BTS_Tests.ttcn, line 7417 */
f__rll__testmatrix(tcs, &f__TC__rll__rel__ind);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_rel_ind_ACCH_0 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__rel__ind__DCCH__3(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7419, TTCN_Location::LOCATION_TESTCASE, "TC_rll_rel_ind_DCCH_3");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_rel_ind_DCCH_3", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7420);
/* BTS_Tests.ttcn, line 7420 */
RllTestCases tcs;
tcs.set_size(1);
tcs[0] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__DCCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7423);
/* BTS_Tests.ttcn, line 7423 */
f__rll__testmatrix(tcs, &f__TC__rll__rel__ind);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_rel_ind_DCCH_3 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__rel__ind__ACCH__3(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7425, TTCN_Location::LOCATION_TESTCASE, "TC_rll_rel_ind_ACCH_3");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_rel_ind_ACCH_3", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7426);
/* BTS_Tests.ttcn, line 7426 */
RllTestCases tcs;
tcs.set_size(1);
tcs[0] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__SACCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7429);
/* BTS_Tests.ttcn, line 7429 */
f__rll__testmatrix(tcs, &f__TC__rll__rel__ind);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_rel_ind_ACCH_3 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__rll__rel__req(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7433, TTCN_Location::LOCATION_FUNCTION, "f_TC_rll_rel_req");
current_location.update_lineno(7434);
/* BTS_Tests.ttcn, line 7434 */
RllTestCase tc(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).spec()().rll());
current_location.update_lineno(7435);
/* BTS_Tests.ttcn, line 7435 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7436);
/* BTS_Tests.ttcn, line 7436 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(7439);
/* BTS_Tests.ttcn, line 7439 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7440);
/* BTS_Tests.ttcn, line 7440 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(7443);
/* BTS_Tests.ttcn, line 7443 */
f__est__rll__mo(const_cast< const RllTestCase&>(tc).sapi(), const_cast< const RllTestCase&>(tc).link__id(), const_cast< const RllTestCase&>(tc).l3());
current_location.update_lineno(7446);
/* BTS_Tests.ttcn, line 7446 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__REL__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id()), RSL__Types::RSL__IE__ReleaseMode_template(RSL__Types::RSL__IE__ReleaseMode::RSL__REL__MODE__NORMAL)), FALSE, NULL);
current_location.update_lineno(7448);
/* BTS_Tests.ttcn, line 7448 */
{
tmp_876:
alt_status tmp_876_alt_flag_0 = ALT_MAYBE;
alt_status tmp_876_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_876_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7449);
/* BTS_Tests.ttcn, line 7449 */
tmp_876_alt_flag_0 = as__l1__exp__lapdm_instance(LAPDm__Types::tr__LAPDm__DISC(INTEGER_template(const_cast< const RllTestCase&>(tc).sapi()), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), BOOLEAN_template(TRUE)), first_run);
if (tmp_876_alt_flag_0 == ALT_REPEAT) goto tmp_876;
if (tmp_876_alt_flag_0 == ALT_BREAK) break;
if (tmp_876_alt_flag_0 == ALT_YES) break;
}
if (tmp_876_default_flag == ALT_MAYBE) {
tmp_876_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_876_default_flag == ALT_YES || tmp_876_default_flag == ALT_BREAK) break;
else if (tmp_876_default_flag == ALT_REPEAT) goto tmp_876;
}
current_location.update_lineno(7448);
/* BTS_Tests.ttcn, line 7448 */
if (tmp_876_alt_flag_0 == ALT_NO && tmp_876_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7448 and 7452.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7455);
/* BTS_Tests.ttcn, line 7455 */
f__rsl__chan__deact();
current_location.update_lineno(7456);
/* BTS_Tests.ttcn, line 7456 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7457);
/* BTS_Tests.ttcn, line 7457 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rll__rel__req(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_rel_req(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rll_rel_req", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rll__rel__req(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7459, TTCN_Location::LOCATION_TESTCASE, "TC_rll_rel_req");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_rel_req", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7460);
/* BTS_Tests.ttcn, line 7460 */
RllTestCases tcs;
tcs.set_size(4);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__DCCH(0), os_17, TRUE, t__EITC_act__type_defval).valueof();
tcs[1] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__SACCH(0), os_2, TRUE, t__EITC_act__type_defval).valueof();
tcs[2] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__DCCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
tcs[3] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__SACCH(3), os_2, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7466);
/* BTS_Tests.ttcn, line 7466 */
f__rll__testmatrix(tcs, &f__TC__rll__rel__req);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_rel_req was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__data__req(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7470, TTCN_Location::LOCATION_TESTCASE, "TC_rll_data_req");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_data_req", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_data_req was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__data__ind(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7474, TTCN_Location::LOCATION_TESTCASE, "TC_rll_data_ind");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_data_ind", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_data_ind was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__rll__ud__req(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7478, TTCN_Location::LOCATION_FUNCTION, "f_TC_rll_ud_req");
current_location.update_lineno(7479);
/* BTS_Tests.ttcn, line 7479 */
RllTestCase tc(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).spec()().rll());
current_location.update_lineno(7481);
/* BTS_Tests.ttcn, line 7481 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7482);
/* BTS_Tests.ttcn, line 7482 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(7484);
/* BTS_Tests.ttcn, line 7484 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7485);
/* BTS_Tests.ttcn, line 7485 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(7488);
/* BTS_Tests.ttcn, line 7488 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__UNITDATA__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id()), const_cast< const RllTestCase&>(tc).l3()), FALSE, NULL);
current_location.update_lineno(7490);
/* BTS_Tests.ttcn, line 7490 */
if ((const_cast< const RllTestCase&>(tc).link__id().c() == GSM__Types::RslLinkIdC::SACCH)) {
current_location.update_lineno(7491);
/* BTS_Tests.ttcn, line 7491 */
f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__B4__UI(INTEGER_template(const_cast< const RllTestCase&>(tc).sapi()), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), OCTETSTRING_template(const_cast< const RllTestCase&>(tc).l3())), f__l1__exp__lapdm_t_defval);
}
else {
current_location.update_lineno(7493);
/* BTS_Tests.ttcn, line 7493 */
f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__UI(INTEGER_template(const_cast< const RllTestCase&>(tc).sapi()), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), OCTETSTRING_template(const_cast< const RllTestCase&>(tc).l3())), f__l1__exp__lapdm_t_defval);
}
current_location.update_lineno(7497);
/* BTS_Tests.ttcn, line 7497 */
f__rsl__chan__deact();
current_location.update_lineno(7498);
/* BTS_Tests.ttcn, line 7498 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7499);
/* BTS_Tests.ttcn, line 7499 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rll__ud__req(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_ud_req(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rll_ud_req", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rll__unit__data__req__DCCH(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7501, TTCN_Location::LOCATION_TESTCASE, "TC_rll_unit_data_req_DCCH");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_unit_data_req_DCCH", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7502);
/* BTS_Tests.ttcn, line 7502 */
OCTETSTRING l3(Osmocom__Types::f__rnd__octstring(15));
current_location.update_lineno(7503);
/* BTS_Tests.ttcn, line 7503 */
RllTestCases tcs;
tcs.set_size(2);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__DCCH(0), l3, TRUE, t__EITC_act__type_defval).valueof();
tcs[1] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__DCCH(3), l3, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7507);
/* BTS_Tests.ttcn, line 7507 */
f__rll__testmatrix(tcs, &f__TC__rll__ud__req);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_unit_data_req_DCCH was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__unit__data__req__ACCH(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7509, TTCN_Location::LOCATION_TESTCASE, "TC_rll_unit_data_req_ACCH");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_unit_data_req_ACCH", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7510);
/* BTS_Tests.ttcn, line 7510 */
OCTETSTRING l3(Osmocom__Types::f__rnd__octstring(19));
current_location.update_lineno(7511);
/* BTS_Tests.ttcn, line 7511 */
RllTestCases tcs;
tcs.set_size(2);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__SACCH(0), l3, TRUE, t__EITC_act__type_defval).valueof();
tcs[1] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__SACCH(3), l3, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7515);
/* BTS_Tests.ttcn, line 7515 */
f__rll__testmatrix(tcs, &f__TC__rll__ud__req);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_unit_data_req_ACCH was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__rll__ud__ind(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7519, TTCN_Location::LOCATION_FUNCTION, "f_TC_rll_ud_ind");
current_location.update_lineno(7520);
/* BTS_Tests.ttcn, line 7520 */
RllTestCase tc(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).spec()().rll());
current_location.update_lineno(7522);
/* BTS_Tests.ttcn, line 7522 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7523);
/* BTS_Tests.ttcn, line 7523 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(7525);
/* BTS_Tests.ttcn, line 7525 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7526);
/* BTS_Tests.ttcn, line 7526 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(7529);
/* BTS_Tests.ttcn, line 7529 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__UI(const_cast< const RllTestCase&>(tc).sapi(), LAPDm__Types::cr__MO__CMD, const_cast< const RllTestCase&>(tc).l3()), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id()));
current_location.update_lineno(7531);
/* BTS_Tests.ttcn, line 7531 */
{
tmp_877:
alt_status tmp_877_alt_flag_0 = ALT_MAYBE;
alt_status tmp_877_alt_flag_1 = ALT_MAYBE;
alt_status tmp_877_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_877_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7532);
/* BTS_Tests.ttcn, line 7532 */
tmp_877_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__UNITDATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const RllTestCase&>(tc).link__id()), OCTETSTRING_template(const_cast< const RllTestCase&>(tc).l3())), NULL, any_compref, NULL, NULL, NULL);
if (tmp_877_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7533);
/* BTS_Tests.ttcn, line 7533 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_877_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7535);
/* BTS_Tests.ttcn, line 7535 */
tmp_877_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL);
if (tmp_877_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7535);
/* BTS_Tests.ttcn, line 7535 */
goto tmp_877;
}
}
if (tmp_877_default_flag == ALT_MAYBE) {
tmp_877_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_877_default_flag == ALT_YES || tmp_877_default_flag == ALT_BREAK) break;
else if (tmp_877_default_flag == ALT_REPEAT) goto tmp_877;
}
current_location.update_lineno(7531);
/* BTS_Tests.ttcn, line 7531 */
if (tmp_877_alt_flag_0 == ALT_NO && tmp_877_alt_flag_1 == ALT_NO && tmp_877_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7531 and 7536.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7539);
/* BTS_Tests.ttcn, line 7539 */
f__rsl__chan__deact();
current_location.update_lineno(7540);
/* BTS_Tests.ttcn, line 7540 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7541);
/* BTS_Tests.ttcn, line 7541 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rll__ud__ind(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_ud_ind(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rll_ud_ind", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rll__unit__data__ind__DCCH(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7543, TTCN_Location::LOCATION_TESTCASE, "TC_rll_unit_data_ind_DCCH");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_unit_data_ind_DCCH", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7544);
/* BTS_Tests.ttcn, line 7544 */
OCTETSTRING l3(Osmocom__Types::f__rnd__octstring(20));
current_location.update_lineno(7545);
/* BTS_Tests.ttcn, line 7545 */
RllTestCases tcs;
tcs.set_size(2);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__DCCH(0), l3, TRUE, t__EITC_act__type_defval).valueof();
tcs[1] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__DCCH(3), l3, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7549);
/* BTS_Tests.ttcn, line 7549 */
f__rll__testmatrix(tcs, &f__TC__rll__ud__ind);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_unit_data_ind_DCCH was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__rll__unit__data__ind__ACCH(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7551, TTCN_Location::LOCATION_TESTCASE, "TC_rll_unit_data_ind_ACCH");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rll_unit_data_ind_ACCH", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7552);
/* BTS_Tests.ttcn, line 7552 */
OCTETSTRING l3(Osmocom__Types::f__rnd__octstring(18));
current_location.update_lineno(7553);
/* BTS_Tests.ttcn, line 7553 */
RllTestCases tcs;
tcs.set_size(2);
tcs[0] = t__EITC(INTEGER_template(0), GSM__Types::ts__RslLinkID__SACCH(0), l3, TRUE, t__EITC_act__type_defval).valueof();
tcs[1] = t__EITC(INTEGER_template(3), GSM__Types::ts__RslLinkID__SACCH(3), l3, TRUE, t__EITC_act__type_defval).valueof();
current_location.update_lineno(7557);
/* BTS_Tests.ttcn, line 7557 */
f__rll__testmatrix(tcs, &f__TC__rll__ud__ind);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rll_unit_data_ind_ACCH was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__unitdata__mt(const GSM__Types::RslLinkId& link__id, const OCTETSTRING& l3)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7565, TTCN_Location::LOCATION_FUNCTION, "f_unitdata_mt");
current_location.update_lineno(7566);
/* BTS_Tests.ttcn, line 7566 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__UNITDATA__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id), l3), FALSE, NULL);
current_location.update_lineno(7567);
/* BTS_Tests.ttcn, line 7567 */
if ((const_cast< const GSM__Types::RslLinkId&>(link__id).c() == GSM__Types::RslLinkIdC::SACCH)) {
current_location.update_lineno(7568);
/* BTS_Tests.ttcn, line 7568 */
f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__B4__UI(INTEGER_template(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi()), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), OCTETSTRING_template(l3)), f__l1__exp__lapdm_t_defval);
}
else {
current_location.update_lineno(7570);
/* BTS_Tests.ttcn, line 7570 */
f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__UI(INTEGER_template(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi()), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), OCTETSTRING_template(l3)), f__l1__exp__lapdm_t_defval);
}
}

void start_f__unitdata__mt(const COMPONENT& component_reference, const GSM__Types::RslLinkId& link__id, const OCTETSTRING& l3)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_unitdata_mt(");
link__id.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_unitdata_mt", text_buf);
link__id.encode_text(text_buf);
l3.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

alt_status as__rsl__any__ind_instance(const BOOLEAN& exp__any, boolean first_alt_run)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7575, TTCN_Location::LOCATION_ALTSTEP, "as_rsl_any_ind");
alt_status ret_val = ALT_NO;
current_location.update_lineno(7576);
/* BTS_Tests.ttcn, line 7576 */
static boolean guard_expr_0 = FALSE;
if (first_alt_run) {
guard_expr_0 = exp__any;
}
if (guard_expr_0) {
current_location.update_lineno(7576);
/* BTS_Tests.ttcn, line 7576 */
switch (RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(7576);
/* BTS_Tests.ttcn, line 7576 */
return ALT_REPEAT;
}
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
}
current_location.update_lineno(7577);
/* BTS_Tests.ttcn, line 7577 */
static boolean guard_expr_1 = FALSE;
if (first_alt_run) {
guard_expr_1 = (!(exp__any));
}
if (guard_expr_1) {
current_location.update_lineno(7577);
/* BTS_Tests.ttcn, line 7577 */
switch (RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(7578);
/* BTS_Tests.ttcn, line 7578 */
Misc__Helpers::f__shutdown(cs_4, 7578, FAIL, cs_131);
}
return ALT_YES;
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
}
return ret_val;
}

void as__rsl__any__ind(boolean nodefault_modifier, const BOOLEAN& exp__any)
{
altstep_begin:
boolean block_flag = FALSE;
alt_status altstep_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
for ( ; ; ) {
TTCN_Snapshot::take_new(block_flag);
if (altstep_flag != ALT_NO) {
altstep_flag = as__rsl__any__ind_instance(exp__any, !block_flag);
if (altstep_flag == ALT_YES || altstep_flag == ALT_BREAK) return;
else if (altstep_flag == ALT_REPEAT) goto altstep_begin;
}
if (!nodefault_modifier && default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(!block_flag);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) return;
else if (default_flag == ALT_REPEAT) goto altstep_begin;
}
if (altstep_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in altstep as_rsl_any_ind.");
else block_flag = TRUE;
}
}

Default_Base *activate_as__rsl__any__ind(const BOOLEAN& exp__any)
{
return new as__rsl__any__ind_Default(exp__any);
}

void f__unitdata__mo(const GSM__Types::RslLinkId& link__id, const OCTETSTRING& l3, const BOOLEAN& exp__sacch, const BOOLEAN& exp__any)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7583, TTCN_Location::LOCATION_FUNCTION, "f_unitdata_mo");
current_location.update_lineno(7589);
/* BTS_Tests.ttcn, line 7589 */
TIMER T("T", 3.0);
current_location.update_lineno(7590);
/* BTS_Tests.ttcn, line 7590 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__UI(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi(), LAPDm__Types::cr__MO__CMD, l3), GSM__Types::RslLinkId_template(link__id));
current_location.update_lineno(7591);
/* BTS_Tests.ttcn, line 7591 */
T.start();
current_location.update_lineno(7593);
/* BTS_Tests.ttcn, line 7593 */
{
tmp_878:
alt_status tmp_878_alt_flag_0 = ALT_MAYBE;
alt_status tmp_878_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_878_alt_flag_2 = ALT_MAYBE;
alt_status tmp_878_alt_flag_3 = ALT_MAYBE;
alt_status tmp_878_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_878_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7594);
/* BTS_Tests.ttcn, line 7594 */
tmp_878_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__UNITDATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id), OCTETSTRING_template(l3)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_878_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7595);
/* BTS_Tests.ttcn, line 7595 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_878_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(7597);
/* BTS_Tests.ttcn, line 7597 */
if (exp__sacch) tmp_878_alt_flag_1 = ALT_MAYBE;
else tmp_878_alt_flag_1 = ALT_NO;
}
if (tmp_878_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7597);
/* BTS_Tests.ttcn, line 7597 */
tmp_878_alt_flag_1 = as__meas__res_instance(FALSE, first_run);
if (tmp_878_alt_flag_1 == ALT_REPEAT) goto tmp_878;
if (tmp_878_alt_flag_1 == ALT_BREAK) break;
if (tmp_878_alt_flag_1 == ALT_YES) break;
}
if (tmp_878_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7598);
/* BTS_Tests.ttcn, line 7598 */
tmp_878_alt_flag_2 = as__rsl__any__ind_instance(exp__any, first_run);
if (tmp_878_alt_flag_2 == ALT_REPEAT) goto tmp_878;
if (tmp_878_alt_flag_2 == ALT_BREAK) break;
if (tmp_878_alt_flag_2 == ALT_YES) break;
}
if (tmp_878_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(7599);
/* BTS_Tests.ttcn, line 7599 */
tmp_878_alt_flag_3 = T.timeout(NULL);
if (tmp_878_alt_flag_3 == ALT_YES) {
current_location.update_lineno(7600);
/* BTS_Tests.ttcn, line 7600 */
Misc__Helpers::f__shutdown(cs_4, 7600, FAIL, cs_132);
break;
}
}
if (tmp_878_default_flag == ALT_MAYBE) {
tmp_878_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_878_default_flag == ALT_YES || tmp_878_default_flag == ALT_BREAK) break;
else if (tmp_878_default_flag == ALT_REPEAT) goto tmp_878;
}
current_location.update_lineno(7593);
/* BTS_Tests.ttcn, line 7593 */
if (tmp_878_alt_flag_0 == ALT_NO && tmp_878_alt_flag_1 == ALT_NO && tmp_878_alt_flag_2 == ALT_NO && tmp_878_alt_flag_3 == ALT_NO && tmp_878_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7593 and 7602.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__unitdata__mo(const COMPONENT& component_reference, const GSM__Types::RslLinkId& link__id, const OCTETSTRING& l3, const BOOLEAN& exp__sacch, const BOOLEAN& exp__any)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_unitdata_mo(");
link__id.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(", ");
exp__sacch.log();
TTCN_Logger::log_event_str(", ");
exp__any.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_unitdata_mo", text_buf);
link__id.encode_text(text_buf);
l3.encode_text(text_buf);
exp__sacch.encode_text(text_buf);
exp__any.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__data__mo(const GSM__Types::RslLinkId& link__id, const BOOLEAN& p, const INTEGER& nr, const INTEGER& ns, const OCTETSTRING& l3, const BOOLEAN& exp__sacch, const BOOLEAN& exp__any)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7606, TTCN_Location::LOCATION_FUNCTION, "f_data_mo");
current_location.update_lineno(7613);
/* BTS_Tests.ttcn, line 7613 */
TIMER T("T", 3.0);
current_location.update_lineno(7614);
/* BTS_Tests.ttcn, line 7614 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__I(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi(), LAPDm__Types::cr__MO__CMD, p, nr, ns, l3, LAPDm__Types::ts__LAPDm__I_m_defval), GSM__Types::RslLinkId_template(link__id));
current_location.update_lineno(7615);
/* BTS_Tests.ttcn, line 7615 */
T.start();
current_location.update_lineno(7617);
/* BTS_Tests.ttcn, line 7617 */
{
tmp_879:
alt_status tmp_879_alt_flag_0 = ALT_MAYBE;
alt_status tmp_879_alt_flag_1 = ALT_UNCHECKED;
alt_status tmp_879_alt_flag_2 = ALT_MAYBE;
alt_status tmp_879_alt_flag_3 = ALT_MAYBE;
alt_status tmp_879_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_879_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7618);
/* BTS_Tests.ttcn, line 7618 */
tmp_879_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__DATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id), OCTETSTRING_template(l3)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_879_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7619);
/* BTS_Tests.ttcn, line 7619 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_879_alt_flag_1 == ALT_UNCHECKED) {
current_location.update_lineno(7621);
/* BTS_Tests.ttcn, line 7621 */
if (exp__sacch) tmp_879_alt_flag_1 = ALT_MAYBE;
else tmp_879_alt_flag_1 = ALT_NO;
}
if (tmp_879_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7621);
/* BTS_Tests.ttcn, line 7621 */
tmp_879_alt_flag_1 = as__meas__res_instance(FALSE, first_run);
if (tmp_879_alt_flag_1 == ALT_REPEAT) goto tmp_879;
if (tmp_879_alt_flag_1 == ALT_BREAK) break;
if (tmp_879_alt_flag_1 == ALT_YES) break;
}
if (tmp_879_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7622);
/* BTS_Tests.ttcn, line 7622 */
tmp_879_alt_flag_2 = as__rsl__any__ind_instance(exp__any, first_run);
if (tmp_879_alt_flag_2 == ALT_REPEAT) goto tmp_879;
if (tmp_879_alt_flag_2 == ALT_BREAK) break;
if (tmp_879_alt_flag_2 == ALT_YES) break;
}
if (tmp_879_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(7623);
/* BTS_Tests.ttcn, line 7623 */
tmp_879_alt_flag_3 = T.timeout(NULL);
if (tmp_879_alt_flag_3 == ALT_YES) {
current_location.update_lineno(7624);
/* BTS_Tests.ttcn, line 7624 */
Misc__Helpers::f__shutdown(cs_4, 7624, FAIL, cs_133);
break;
}
}
if (tmp_879_default_flag == ALT_MAYBE) {
tmp_879_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_879_default_flag == ALT_YES || tmp_879_default_flag == ALT_BREAK) break;
else if (tmp_879_default_flag == ALT_REPEAT) goto tmp_879;
}
current_location.update_lineno(7617);
/* BTS_Tests.ttcn, line 7617 */
if (tmp_879_alt_flag_0 == ALT_NO && tmp_879_alt_flag_1 == ALT_NO && tmp_879_alt_flag_2 == ALT_NO && tmp_879_alt_flag_3 == ALT_NO && tmp_879_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7617 and 7626.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__data__mo(const COMPONENT& component_reference, const GSM__Types::RslLinkId& link__id, const BOOLEAN& p, const INTEGER& nr, const INTEGER& ns, const OCTETSTRING& l3, const BOOLEAN& exp__sacch, const BOOLEAN& exp__any)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_data_mo(");
link__id.log();
TTCN_Logger::log_event_str(", ");
p.log();
TTCN_Logger::log_event_str(", ");
nr.log();
TTCN_Logger::log_event_str(", ");
ns.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(", ");
exp__sacch.log();
TTCN_Logger::log_event_str(", ");
exp__any.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_data_mo", text_buf);
link__id.encode_text(text_buf);
p.encode_text(text_buf);
nr.encode_text(text_buf);
ns.encode_text(text_buf);
l3.encode_text(text_buf);
exp__sacch.encode_text(text_buf);
exp__any.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__chan__act__encr(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7630, TTCN_Location::LOCATION_FUNCTION, "f_TC_chan_act_encr");
current_location.update_lineno(7631);
/* BTS_Tests.ttcn, line 7631 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7632);
/* BTS_Tests.ttcn, line 7632 */
f__est__dchan(TRUE, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7635);
/* BTS_Tests.ttcn, line 7635 */
L1CTL__Types::L1ctlMessage dl;
current_location.update_lineno(7637);
/* BTS_Tests.ttcn, line 7637 */
OCTETSTRING l3(Osmocom__Types::f__rnd__octstring(20));
current_location.update_lineno(7638);
/* BTS_Tests.ttcn, line 7638 */
GSM__Types::RslLinkId link__id(GSM__Types::ts__RslLinkID__DCCH(0).valueof());
current_location.update_lineno(7641);
/* BTS_Tests.ttcn, line 7641 */
f__unitdata__mt(link__id, l3);
current_location.update_lineno(7644);
/* BTS_Tests.ttcn, line 7644 */
f__unitdata__mo(link__id, l3, f__unitdata__mo_exp__sacch_defval, f__unitdata__mo_exp__any_defval);
current_location.update_lineno(7647);
/* BTS_Tests.ttcn, line 7647 */
f__rsl__chan__deact();
current_location.update_lineno(7648);
/* BTS_Tests.ttcn, line 7648 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7649);
/* BTS_Tests.ttcn, line 7649 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__chan__act__encr(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_act_encr(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_chan_act_encr", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__chan__act__a51(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7651, TTCN_Location::LOCATION_TESTCASE, "TC_chan_act_a51");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_chan_act_a51", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7652);
/* BTS_Tests.ttcn, line 7652 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7653);
/* BTS_Tests.ttcn, line 7653 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__1), Osmocom__Types::f__rnd__octstring(8)).valueof();
current_location.update_lineno(7654);
/* BTS_Tests.ttcn, line 7654 */
f__testmatrix__each__chan(pars, &f__TC__chan__act__encr);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_chan_act_a51 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__chan__act__a52(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7656, TTCN_Location::LOCATION_TESTCASE, "TC_chan_act_a52");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_chan_act_a52", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7657);
/* BTS_Tests.ttcn, line 7657 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7658);
/* BTS_Tests.ttcn, line 7658 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__2), Osmocom__Types::f__rnd__octstring(8)).valueof();
current_location.update_lineno(7659);
/* BTS_Tests.ttcn, line 7659 */
f__testmatrix__each__chan(pars, &f__TC__chan__act__encr);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_chan_act_a52 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__chan__act__a53(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7661, TTCN_Location::LOCATION_TESTCASE, "TC_chan_act_a53");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_chan_act_a53", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7662);
/* BTS_Tests.ttcn, line 7662 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7663);
/* BTS_Tests.ttcn, line 7663 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__3), Osmocom__Types::f__rnd__octstring(8)).valueof();
current_location.update_lineno(7664);
/* BTS_Tests.ttcn, line 7664 */
f__testmatrix__each__chan(pars, &f__TC__chan__act__encr);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_chan_act_a53 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__chan__act__a54(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7666, TTCN_Location::LOCATION_TESTCASE, "TC_chan_act_a54");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_chan_act_a54", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7667);
/* BTS_Tests.ttcn, line 7667 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7668);
/* BTS_Tests.ttcn, line 7668 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__4), Osmocom__Types::f__rnd__octstring(16)).valueof();
current_location.update_lineno(7669);
/* BTS_Tests.ttcn, line 7669 */
f__testmatrix__each__chan(pars, &f__TC__chan__act__encr);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_chan_act_a54 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__rsl__modify__encr(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7674, TTCN_Location::LOCATION_FUNCTION, "f_TC_rsl_modify_encr");
current_location.update_lineno(7675);
/* BTS_Tests.ttcn, line 7675 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7676);
/* BTS_Tests.ttcn, line 7676 */
f__est__dchan(TRUE, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7679);
/* BTS_Tests.ttcn, line 7679 */
L1CTL__Types::L1ctlMessage dl;
current_location.update_lineno(7681);
/* BTS_Tests.ttcn, line 7681 */
OCTETSTRING l3(Osmocom__Types::f__rnd__octstring(20));
current_location.update_lineno(7682);
/* BTS_Tests.ttcn, line 7682 */
GSM__Types::RslLinkId link__id(GSM__Types::ts__RslLinkID__DCCH(0).valueof());
current_location.update_lineno(7685);
/* BTS_Tests.ttcn, line 7685 */
f__unitdata__mt(link__id, l3);
current_location.update_lineno(7688);
/* BTS_Tests.ttcn, line 7688 */
f__unitdata__mo(link__id, l3, f__unitdata__mo_exp__sacch_defval, f__unitdata__mo_exp__any_defval);
current_location.update_lineno(7690);
/* BTS_Tests.ttcn, line 7690 */
RSL__Types::RSL__Message rsl;
current_location.update_lineno(7691);
/* BTS_Tests.ttcn, line 7691 */
rsl = RSL__Types::ts__RSL__MODE__MODIFY__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval)).valueof();
current_location.update_lineno(7694);
/* BTS_Tests.ttcn, line 7694 */
ConnHdlr_component_g__pars.encr()().key() = Osmocom__Types::f__rnd__octstring(8);
current_location.update_lineno(7695);
/* BTS_Tests.ttcn, line 7695 */
RSL__Types::RSL__IE ei;
{
RSL__Types::RSL__IE__Body_template tmp_886;
tmp_886.encr__info() = const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).encr();
ei = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__ENCR__INFO, tmp_886).valueof();
}
current_location.update_lineno(7696);
/* BTS_Tests.ttcn, line 7696 */
{
OPTIONAL< RSL__Types::RSL__IE__List > tmp_887;
{
RSL__Types::RSL__IE__List tmp_889;
tmp_889.set_size(1);
tmp_889[0] = ei;
tmp_887() = (const_cast< const RSL__Types::RSL__Message&>(rsl).ies()() + tmp_889);
}
{
RSL__Types::RSL__IE__List& tmp_888 = rsl.ies(); /* 7388 */
tmp_888 = tmp_887;
}
}
current_location.update_lineno(7697);
/* BTS_Tests.ttcn, line 7697 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(rsl, FALSE, NULL);
current_location.update_lineno(7699);
/* BTS_Tests.ttcn, line 7699 */
TIMER T0("T0", 1.0);
current_location.update_lineno(7700);
/* BTS_Tests.ttcn, line 7700 */
T0.start();
current_location.update_lineno(7702);
/* BTS_Tests.ttcn, line 7702 */
{
tmp_890:
alt_status tmp_890_alt_flag_0 = ALT_MAYBE;
alt_status tmp_890_alt_flag_1 = ALT_MAYBE;
alt_status tmp_890_alt_flag_2 = ALT_MAYBE;
alt_status tmp_890_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_890_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7703);
/* BTS_Tests.ttcn, line 7703 */
tmp_890_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__MODE__MODIFY__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_890_alt_flag_0 == ALT_YES) break;
}
if (tmp_890_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7704);
/* BTS_Tests.ttcn, line 7704 */
tmp_890_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__MODE__MODIFY__NACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__Cause_template(ANY_VALUE)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_890_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7705);
/* BTS_Tests.ttcn, line 7705 */
Misc__Helpers::f__shutdown(cs_4, 7705, FAIL, cs_134);
break;
}
}
if (tmp_890_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7707);
/* BTS_Tests.ttcn, line 7707 */
tmp_890_alt_flag_2 = T0.timeout(NULL);
if (tmp_890_alt_flag_2 == ALT_YES) {
current_location.update_lineno(7708);
/* BTS_Tests.ttcn, line 7708 */
Misc__Helpers::f__shutdown(cs_4, 7708, FAIL, cs_135);
break;
}
}
if (tmp_890_default_flag == ALT_MAYBE) {
tmp_890_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_890_default_flag == ALT_YES || tmp_890_default_flag == ALT_BREAK) break;
else if (tmp_890_default_flag == ALT_REPEAT) goto tmp_890;
}
current_location.update_lineno(7702);
/* BTS_Tests.ttcn, line 7702 */
if (tmp_890_alt_flag_0 == ALT_NO && tmp_890_alt_flag_1 == ALT_NO && tmp_890_alt_flag_2 == ALT_NO && tmp_890_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7702 and 7710.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7712);
/* BTS_Tests.ttcn, line 7712 */
OCTETSTRING l3msg(Osmocom__Types::f__rnd__octstring(15));
current_location.update_lineno(7713);
/* BTS_Tests.ttcn, line 7713 */
TIMER T1("T1", 3.0);
current_location.update_lineno(7716);
/* BTS_Tests.ttcn, line 7716 */
f__tx__lapdm(LAPDm__Types::ts__LAPDm__UI(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi(), LAPDm__Types::cr__MO__CMD, l3msg), GSM__Types::RslLinkId_template(link__id));
current_location.update_lineno(7717);
/* BTS_Tests.ttcn, line 7717 */
T1.start();
current_location.update_lineno(7718);
/* BTS_Tests.ttcn, line 7718 */
{
tmp_891:
alt_status tmp_891_alt_flag_0 = ALT_MAYBE;
alt_status tmp_891_alt_flag_1 = ALT_MAYBE;
alt_status tmp_891_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_891_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7719);
/* BTS_Tests.ttcn, line 7719 */
tmp_891_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__UNITDATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id), OCTETSTRING_template(l3msg)), NULL, any_compref, NULL, NULL, NULL);
if (tmp_891_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7720);
/* BTS_Tests.ttcn, line 7720 */
Misc__Helpers::f__shutdown(cs_4, 7720, FAIL, cs_136);
break;
}
}
if (tmp_891_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7722);
/* BTS_Tests.ttcn, line 7722 */
tmp_891_alt_flag_1 = T1.timeout(NULL);
if (tmp_891_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7723);
/* BTS_Tests.ttcn, line 7723 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_891_default_flag == ALT_MAYBE) {
tmp_891_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_891_default_flag == ALT_YES || tmp_891_default_flag == ALT_BREAK) break;
else if (tmp_891_default_flag == ALT_REPEAT) goto tmp_891;
}
current_location.update_lineno(7718);
/* BTS_Tests.ttcn, line 7718 */
if (tmp_891_alt_flag_0 == ALT_NO && tmp_891_alt_flag_1 == ALT_NO && tmp_891_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7718 and 7725.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(7728);
/* BTS_Tests.ttcn, line 7728 */
f__rsl__chan__deact();
current_location.update_lineno(7729);
/* BTS_Tests.ttcn, line 7729 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7730);
/* BTS_Tests.ttcn, line 7730 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__rsl__modify__encr(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_modify_encr(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rsl_modify_encr", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rsl__modify__encr(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7732, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_modify_encr");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_modify_encr", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7733);
/* BTS_Tests.ttcn, line 7733 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7734);
/* BTS_Tests.ttcn, line 7734 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__1), Osmocom__Types::f__rnd__octstring(8)).valueof();
current_location.update_lineno(7735);
/* BTS_Tests.ttcn, line 7735 */
f__testmatrix__each__chan(pars, &f__TC__rsl__modify__encr);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_modify_encr was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__rsl__rf__resource__ind(const RSL__Types::RSL__ResourceInfo_template& info)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7739, TTCN_Location::LOCATION_FUNCTION, "f_TC_rsl_rf_resource_ind");
current_location.update_lineno(7741);
/* BTS_Tests.ttcn, line 7741 */
IPA__Types::IpaStreamId sid(IPA__Types::IpaStreamId::IPAC__PROTO__RSL__TRX0);
current_location.update_lineno(7742);
/* BTS_Tests.ttcn, line 7742 */
IPA__Emulation::ASP__RSL__Unitdata ud;
current_location.update_lineno(7743);
/* BTS_Tests.ttcn, line 7743 */
TIMER T("T");
current_location.update_lineno(7746);
/* BTS_Tests.ttcn, line 7746 */
FLOAT Tval(3.38);
current_location.update_lineno(7748);
/* BTS_Tests.ttcn, line 7748 */
T.start(Tval);
current_location.update_lineno(7749);
/* BTS_Tests.ttcn, line 7749 */
{
tmp_893:
alt_status tmp_893_alt_flag_0 = ALT_MAYBE;
alt_status tmp_893_alt_flag_1 = ALT_MAYBE;
alt_status tmp_893_alt_flag_2 = ALT_MAYBE;
alt_status tmp_893_alt_flag_3 = ALT_MAYBE;
alt_status tmp_893_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_893_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7750);
/* BTS_Tests.ttcn, line 7750 */
tmp_893_alt_flag_0 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__RF__RES__IND(info), IPA__Types::IpaStreamId_template(IPA__Types::IpaStreamId::IPAC__PROTO__RSL__TRX0), IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_893_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7751);
/* BTS_Tests.ttcn, line 7751 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_893_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(7753);
/* BTS_Tests.ttcn, line 7753 */
tmp_893_alt_flag_1 = test__CT_component_RSL__CCHAN.receive(IPA__Emulation::tr__ASP__RSL__UD(RSL__Types::tr__RSL__RF__RES__IND(RSL__Types::RSL__ResourceInfo_template(ANY_VALUE)), IPA__Types::IpaStreamId_template(IPA__Types::IpaStreamId::IPAC__PROTO__RSL__TRX0), IPA__Emulation::tr__ASP__RSL__UD_conn__id_defval), &(ud), any_compref, NULL, NULL, NULL);
if (tmp_893_alt_flag_1 == ALT_YES) {
current_location.update_lineno(7754);
/* BTS_Tests.ttcn, line 7754 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("RF RESource INDication mismatch: "),const_cast< const IPA__Emulation::ASP__RSL__Unitdata&>(ud).rsl().log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_893_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(7756);
/* BTS_Tests.ttcn, line 7756 */
tmp_893_alt_flag_2 = test__CT_component_RSL__CCHAN.receive(any_compref, NULL, NULL, NULL);
if (tmp_893_alt_flag_2 == ALT_YES) {
current_location.update_lineno(7756);
/* BTS_Tests.ttcn, line 7756 */
goto tmp_893;
}
}
if (tmp_893_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(7757);
/* BTS_Tests.ttcn, line 7757 */
tmp_893_alt_flag_3 = T.timeout(NULL);
if (tmp_893_alt_flag_3 == ALT_YES) {
current_location.update_lineno(7758);
/* BTS_Tests.ttcn, line 7758 */
Misc__Helpers::f__shutdown(cs_4, 7758, FAIL, cs_137);
break;
}
}
if (tmp_893_default_flag == ALT_MAYBE) {
tmp_893_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_893_default_flag == ALT_YES || tmp_893_default_flag == ALT_BREAK) break;
else if (tmp_893_default_flag == ALT_REPEAT) goto tmp_893;
}
current_location.update_lineno(7749);
/* BTS_Tests.ttcn, line 7749 */
if (tmp_893_alt_flag_0 == ALT_NO && tmp_893_alt_flag_1 == ALT_NO && tmp_893_alt_flag_2 == ALT_NO && tmp_893_alt_flag_3 == ALT_NO && tmp_893_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7749 and 7761.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__TC__rsl__rf__resource__ind(const COMPONENT& component_reference, const RSL__Types::RSL__ResourceInfo_template& info)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_rf_resource_ind(");
info.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_rsl_rf_resource_ind", text_buf);
info.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__rsl__rf__resource__ind(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7763, TTCN_Location::LOCATION_TESTCASE, "TC_rsl_rf_resource_ind");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_rsl_rf_resource_ind", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7764);
/* BTS_Tests.ttcn, line 7764 */
TrxParsItem trx__pars(const_cast< const TrxPars&>(mp__trx__pars)[0]);
current_location.update_lineno(7765);
/* BTS_Tests.ttcn, line 7765 */
RSL__Types::RSL__ResourceInfo info(NULL_VALUE);
current_location.update_lineno(7766);
/* BTS_Tests.ttcn, line 7766 */
ChannelNrs chans(NULL_VALUE);
current_location.update_lineno(7768);
/* BTS_Tests.ttcn, line 7768 */
f__init(0);
current_location.update_lineno(7770);
/* BTS_Tests.ttcn, line 7770 */
f__init__l1ctl();
current_location.update_lineno(7771);
/* BTS_Tests.ttcn, line 7771 */
f__l1__tune(test__CT_component_L1CTL, f__l1__tune_ccch__mode_defval);
{
current_location.update_lineno(7774);
/* BTS_Tests.ttcn, line 7774 */
INTEGER tn(0);
current_location.update_lineno(7774);
/* BTS_Tests.ttcn, line 7774 */
for ( ; ; ) {
current_location.update_lineno(7774);
/* BTS_Tests.ttcn, line 7774 */
if (!(tn < const_cast< const TrxParsItem&>(trx__pars).ts().lengthof())) break;
current_location.update_lineno(7775);
/* BTS_Tests.ttcn, line 7775 */
GSM__Types::PchanConfig config(const_cast< const TrxParsItem&>(trx__pars).ts()[tn].config());
{
const GSM__Types::PchanConfig &tmp_895 = config;
current_location.update_lineno(7777);
/* BTS_Tests.ttcn, line 7777 */
if(tmp_895 == GSM__Types::PchanConfig::GSM__PCHAN__TCHH__TCHF__PDCH) goto tmp_894_0;
current_location.update_lineno(7780);
/* BTS_Tests.ttcn, line 7780 */
if(tmp_895 == GSM__Types::PchanConfig::GSM__PCHAN__TCHF__PDCH) goto tmp_894_1;
current_location.update_lineno(7784);
/* BTS_Tests.ttcn, line 7784 */
if(tmp_895 == GSM__Types::PchanConfig::GSM__PCHAN__PDCH) goto tmp_894_2;
goto tmp_894_3;
tmp_894_0:
{
goto tmp_894_end;
}
tmp_894_1:
{
current_location.update_lineno(7782);
/* BTS_Tests.ttcn, line 7782 */
{
ChannelNrs tmp_896;
{
ChannelNrs tmp_897;
tmp_897.set_size(1);
tmp_897[0] = GSM__Types::ts__RslChanNr__Bm(tn).valueof();
tmp_896 = (chans + tmp_897);
}
chans = tmp_896;
}
goto tmp_894_end;
}
tmp_894_2:
{
current_location.update_lineno(7785);
/* BTS_Tests.ttcn, line 7785 */
{
ChannelNrs tmp_898;
{
ChannelNrs tmp_899;
tmp_899.set_size(1);
tmp_899[0] = GSM__Types::ts__RslChanNr__PDCH(tn).valueof();
tmp_898 = (chans + tmp_899);
}
chans = tmp_898;
}
goto tmp_894_end;
}
tmp_894_3:
{
current_location.update_lineno(7788);
/* BTS_Tests.ttcn, line 7788 */
{
ChannelNrs tmp_900;
tmp_900 = (chans + f__gen__chans__for__ts(tn, config));
chans = tmp_900;
}
goto tmp_894_end;
}
tmp_894_end: /* empty */;
}
current_location.update_lineno(7774);
/* BTS_Tests.ttcn, line 7774 */
{
INTEGER tmp_901;
++tn;
}
}
}
{
current_location.update_lineno(7794);
/* BTS_Tests.ttcn, line 7794 */
INTEGER i(0);
current_location.update_lineno(7794);
/* BTS_Tests.ttcn, line 7794 */
for ( ; ; ) {
current_location.update_lineno(7794);
/* BTS_Tests.ttcn, line 7794 */
if (!(i < chans.lengthof())) break;
current_location.update_lineno(7795);
/* BTS_Tests.ttcn, line 7795 */
{
RSL__Types::RSL__ResourceInfo tmp_902;
{
RSL__Types::RSL__ResourceInfo tmp_903;
tmp_903.set_size(1);
tmp_903[0] = RSL__Types::ts__RSL__ResourceInfoItem(GSM__Types::RslChannelNr_template(const_cast< const ChannelNrs&>(chans)[i]), INTEGER_template(mp__interf__band)).valueof();
tmp_902 = (info + tmp_903);
}
info = tmp_902;
}
current_location.update_lineno(7794);
/* BTS_Tests.ttcn, line 7794 */
{
INTEGER tmp_904;
++i;
}
}
}
current_location.update_lineno(7799);
/* BTS_Tests.ttcn, line 7799 */
f__TC__rsl__rf__resource__ind(RSL__Types::RSL__ResourceInfo_template(ANY_VALUE));
{
current_location.update_lineno(7802);
/* BTS_Tests.ttcn, line 7802 */
INTEGER i(0);
current_location.update_lineno(7802);
/* BTS_Tests.ttcn, line 7802 */
for ( ; ; ) {
current_location.update_lineno(7802);
/* BTS_Tests.ttcn, line 7802 */
if (!(i < 4)) break;
current_location.update_lineno(7803);
/* BTS_Tests.ttcn, line 7803 */
f__TC__rsl__rf__resource__ind(RSL__Types::RSL__ResourceInfo_template(info));
current_location.update_lineno(7802);
/* BTS_Tests.ttcn, line 7802 */
{
INTEGER tmp_905;
++i;
}
}
}
current_location.update_lineno(7806);
/* BTS_Tests.ttcn, line 7806 */
Misc__Helpers::f__shutdown(cs_4, 7806, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_rsl_rf_resource_ind was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__encr__cmd(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7810, TTCN_Location::LOCATION_FUNCTION, "f_TC_encr_cmd");
current_location.update_lineno(7812);
/* BTS_Tests.ttcn, line 7812 */
BITSTRING l3__alg__id(f__alg__id__to__l3(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).encr()().alg__id()));
current_location.update_lineno(7813);
/* BTS_Tests.ttcn, line 7813 */
OCTETSTRING l3(MobileL3__Types::enc__PDU__ML3__NW__MS(L3__Templates::ts__RRM__CiphModeCmd(l3__alg__id).valueof()));
current_location.update_lineno(7814);
/* BTS_Tests.ttcn, line 7814 */
GSM__Types::RslLinkId link__id(GSM__Types::ts__RslLinkID__DCCH(0).valueof());
current_location.update_lineno(7816);
/* BTS_Tests.ttcn, line 7816 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7819);
/* BTS_Tests.ttcn, line 7819 */
f__est__dchan(FALSE, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7822);
/* BTS_Tests.ttcn, line 7822 */
f__est__rll__mo(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi(), link__id, os_24);
current_location.update_lineno(7825);
/* BTS_Tests.ttcn, line 7825 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__ENCR__CMD(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(link__id), RSL__Types::RSL__AlgId_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).encr()().alg__id()), const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).encr()().key(), l3), FALSE, NULL);
current_location.update_lineno(7827);
/* BTS_Tests.ttcn, line 7827 */
f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__I(INTEGER_template(const_cast< const GSM__Types::RslLinkId&>(link__id).sapi()), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), BOOLEAN_template(ANY_VALUE), INTEGER_template(ANY_VALUE), INTEGER_template(ANY_VALUE), OCTETSTRING_template(l3), LAPDm__Types::tr__LAPDm__I_m_defval), f__l1__exp__lapdm_t_defval);
current_location.update_lineno(7830);
/* BTS_Tests.ttcn, line 7830 */
INTEGER alg__id(f__alg__id__to__l1ctl(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).encr()().alg__id()));
current_location.update_lineno(7831);
/* BTS_Tests.ttcn, line 7831 */
L1CTL__PortType::f__L1CTL__CRYPTO__REQ(ConnHdlr_component_L1CTL, const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__nr(), alg__id, const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).encr()().key());
current_location.update_lineno(7834);
/* BTS_Tests.ttcn, line 7834 */
f__data__mo(link__id, TRUE, 1, 0, os_25, TRUE, f__data__mo_exp__any_defval);
current_location.update_lineno(7840);
/* BTS_Tests.ttcn, line 7840 */
f__unitdata__mo(link__id, Osmocom__Types::f__rnd__octstring(15), f__unitdata__mo_exp__sacch_defval, f__unitdata__mo_exp__any_defval);
current_location.update_lineno(7841);
/* BTS_Tests.ttcn, line 7841 */
f__unitdata__mt(link__id, Osmocom__Types::f__rnd__octstring(15));
current_location.update_lineno(7844);
/* BTS_Tests.ttcn, line 7844 */
f__rsl__chan__deact();
current_location.update_lineno(7845);
/* BTS_Tests.ttcn, line 7845 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7846);
/* BTS_Tests.ttcn, line 7846 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__encr__cmd(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_encr_cmd(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_encr_cmd", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__encr__cmd__a51(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7848, TTCN_Location::LOCATION_TESTCASE, "TC_encr_cmd_a51");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_encr_cmd_a51", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7849);
/* BTS_Tests.ttcn, line 7849 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7850);
/* BTS_Tests.ttcn, line 7850 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__1), Osmocom__Types::f__rnd__octstring(8)).valueof();
current_location.update_lineno(7851);
/* BTS_Tests.ttcn, line 7851 */
f__testmatrix__each__chan(pars, &f__TC__encr__cmd);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_encr_cmd_a51 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__encr__cmd__a52(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7853, TTCN_Location::LOCATION_TESTCASE, "TC_encr_cmd_a52");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_encr_cmd_a52", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7854);
/* BTS_Tests.ttcn, line 7854 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7855);
/* BTS_Tests.ttcn, line 7855 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__2), Osmocom__Types::f__rnd__octstring(8)).valueof();
current_location.update_lineno(7856);
/* BTS_Tests.ttcn, line 7856 */
f__testmatrix__each__chan(pars, &f__TC__encr__cmd);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_encr_cmd_a52 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__encr__cmd__a53(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7858, TTCN_Location::LOCATION_TESTCASE, "TC_encr_cmd_a53");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_encr_cmd_a53", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7859);
/* BTS_Tests.ttcn, line 7859 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7860);
/* BTS_Tests.ttcn, line 7860 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__3), Osmocom__Types::f__rnd__octstring(8)).valueof();
current_location.update_lineno(7861);
/* BTS_Tests.ttcn, line 7861 */
f__testmatrix__each__chan(pars, &f__TC__encr__cmd);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_encr_cmd_a53 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__encr__cmd__a54(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7863, TTCN_Location::LOCATION_TESTCASE, "TC_encr_cmd_a54");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_encr_cmd_a54", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7864);
/* BTS_Tests.ttcn, line 7864 */
ConnHdlrPars pars(t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof());
current_location.update_lineno(7865);
/* BTS_Tests.ttcn, line 7865 */
pars.encr() = RSL__Types::ts__RSL__IE__EncrInfo(RSL__Types::RSL__AlgId_template(RSL__Types::RSL__AlgId::RSL__ALG__ID__A5__4), Osmocom__Types::f__rnd__octstring(16)).valueof();
current_location.update_lineno(7866);
/* BTS_Tests.ttcn, line 7866 */
f__testmatrix__each__chan(pars, &f__TC__encr__cmd);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_encr_cmd_a54 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__assert__lapdm(const OCTETSTRING& enc, const LAPDm__Types::LapdmFrame_template& exp__match, const CHARSTRING& name)
{
TTCN_Location current_location("BTS_Tests.ttcn", 7869, TTCN_Location::LOCATION_FUNCTION, "f_assert_lapdm");
current_location.update_lineno(7870);
/* BTS_Tests.ttcn, line 7870 */
LAPDm__Types::LapdmFrame lf;
current_location.update_lineno(7871);
/* BTS_Tests.ttcn, line 7871 */
OCTETSTRING reenc;
current_location.update_lineno(7874);
/* BTS_Tests.ttcn, line 7874 */
if (exp__match.ischosen(LAPDm__Types::LapdmFrame::ALT_ab)) {
current_location.update_lineno(7875);
/* BTS_Tests.ttcn, line 7875 */
lf.ab() = LAPDm__Types::dec__LapdmFrameAB(enc);
}
else {
current_location.update_lineno(7877);
/* BTS_Tests.ttcn, line 7877 */
Misc__Helpers::f__shutdown(cs_4, 7877, FAIL, cs_138);
}
current_location.update_lineno(7881);
/* BTS_Tests.ttcn, line 7881 */
if ((!(exp__match.match(lf)))) {
current_location.update_lineno(7882);
/* BTS_Tests.ttcn, line 7882 */
Misc__Helpers::f__shutdown(cs_4, 7882, FAIL, (TTCN_Logger::begin_event_log2str(),name.log(),TTCN_Logger::log_event_str(": decoded LAPDm doesn't match"),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(7884);
/* BTS_Tests.ttcn, line 7884 */
try {
TTCN_Logger::begin_event(TTCN_USER);
name.log();
TTCN_Logger::log_event_str(": matched");
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(7885);
/* BTS_Tests.ttcn, line 7885 */
TTCN_Runtime::setverdict(PASS);
}
current_location.update_lineno(7889);
/* BTS_Tests.ttcn, line 7889 */
reenc = LAPDm__Types::enc__LapdmFrame(lf);
current_location.update_lineno(7890);
/* BTS_Tests.ttcn, line 7890 */
if ((enc != reenc)) {
current_location.update_lineno(7891);
/* BTS_Tests.ttcn, line 7891 */
Misc__Helpers::f__shutdown(cs_4, 7891, FAIL, (TTCN_Logger::begin_event_log2str(),name.log(),TTCN_Logger::log_event_str(": re-encoded LAPDm frame doesn't match"),TTCN_Logger::end_event_log2str()));
}
else {
current_location.update_lineno(7893);
/* BTS_Tests.ttcn, line 7893 */
TTCN_Runtime::setverdict(PASS);
}
}

verdicttype testcase_TC__lapdm__selftest(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 7897, TTCN_Location::LOCATION_TESTCASE, "TC_lapdm_selftest");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_lapdm_selftest", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(7898);
/* BTS_Tests.ttcn, line 7898 */
f__assert__lapdm(os_26, LAPDm__Types::tr__LAPDm__UI(INTEGER_template(0), BOOLEAN_template(TRUE), OCTETSTRING_template(os_2)), cs_139);
current_location.update_lineno(7899);
/* BTS_Tests.ttcn, line 7899 */
f__assert__lapdm(os_27, LAPDm__Types::tr__LAPDm__UI(INTEGER_template(3), BOOLEAN_template(TRUE), OCTETSTRING_template(os_2)), cs_140);
current_location.update_lineno(7900);
/* BTS_Tests.ttcn, line 7900 */
f__assert__lapdm(os_28, LAPDm__Types::tr__LAPDm__SABM(INTEGER_template(0), BOOLEAN_template(FALSE), BOOLEAN_template(TRUE), OCTETSTRING_template(os_2)), cs_141);
current_location.update_lineno(7901);
/* BTS_Tests.ttcn, line 7901 */
f__assert__lapdm(os_29, LAPDm__Types::tr__LAPDm__SABM(INTEGER_template(0), BOOLEAN_template(FALSE), BOOLEAN_template(TRUE), OCTETSTRING_template(os_24)), cs_142);
current_location.update_lineno(7902);
/* BTS_Tests.ttcn, line 7902 */
f__assert__lapdm(os_30, LAPDm__Types::tr__LAPDm__RR(INTEGER_template(0), BOOLEAN_template(TRUE), BOOLEAN_template(FALSE), INTEGER_template(7)), cs_143);
current_location.update_lineno(7903);
/* BTS_Tests.ttcn, line 7903 */
f__assert__lapdm(os_31, LAPDm__Types::tr__LAPDm__I(INTEGER_template(0), BOOLEAN_template(TRUE), BOOLEAN_template(FALSE), INTEGER_template(0), INTEGER_template(0), OCTETSTRING_template(os_32), LAPDm__Types::tr__LAPDm__I_m_defval), cs_144);
current_location.update_lineno(7904);
/* BTS_Tests.ttcn, line 7904 */
f__assert__lapdm(os_33, LAPDm__Types::tr__LAPDm__I(INTEGER_template(0), BOOLEAN_template(TRUE), BOOLEAN_template(FALSE), INTEGER_template(7), INTEGER_template(0), OCTETSTRING_template(os_32), LAPDm__Types::tr__LAPDm__I_m_defval), cs_145);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_lapdm_selftest was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__tch__sign__l2__fill__frame(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 7910, TTCN_Location::LOCATION_FUNCTION, "f_TC_tch_sign_l2_fill_frame");
current_location.update_lineno(7911);
/* BTS_Tests.ttcn, line 7911 */
L1CTL__Types::L1ctlMessage dl;
current_location.update_lineno(7912);
/* BTS_Tests.ttcn, line 7912 */
INTEGER first__fn;
current_location.update_lineno(7913);
/* BTS_Tests.ttcn, line 7913 */
BOOLEAN is__first__frame(TRUE);
current_location.update_lineno(7914);
/* BTS_Tests.ttcn, line 7914 */
INTEGER nfill__frames(0);
current_location.update_lineno(7915);
/* BTS_Tests.ttcn, line 7915 */
INTEGER expected__fill__frames(10000);
current_location.update_lineno(7917);
/* BTS_Tests.ttcn, line 7917 */
General__Types::Integers required__tdma__frames__dtx__tchf;
required__tdma__frames__dtx__tchf.set_size(8);
required__tdma__frames__dtx__tchf[0] = 52;
required__tdma__frames__dtx__tchf[1] = 53;
required__tdma__frames__dtx__tchf[2] = 54;
required__tdma__frames__dtx__tchf[3] = 55;
required__tdma__frames__dtx__tchf[4] = 56;
required__tdma__frames__dtx__tchf[5] = 57;
required__tdma__frames__dtx__tchf[6] = 58;
required__tdma__frames__dtx__tchf[7] = 59;
current_location.update_lineno(7918);
/* BTS_Tests.ttcn, line 7918 */
INTEGER frame__dtx__tchf__mod(104);
current_location.update_lineno(7921);
/* BTS_Tests.ttcn, line 7921 */
General__Types::Integers required__tdma__blocks__dtx__tchf;
required__tdma__blocks__dtx__tchf.set_size(2);
required__tdma__blocks__dtx__tchf[0] = 52;
required__tdma__blocks__dtx__tchf[1] = 56;
current_location.update_lineno(7922);
/* BTS_Tests.ttcn, line 7922 */
INTEGER block__dtx__tchf__mod(26);
current_location.update_lineno(7923);
/* BTS_Tests.ttcn, line 7923 */
TIMER T("T", 5.0);
current_location.update_lineno(7925);
/* BTS_Tests.ttcn, line 7925 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(7926);
/* BTS_Tests.ttcn, line 7926 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(7927);
/* BTS_Tests.ttcn, line 7927 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(7930);
/* BTS_Tests.ttcn, line 7930 */
f__est__dchan(FALSE, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(7933);
/* BTS_Tests.ttcn, line 7933 */
L1CTL__Types::L1ctlMessage_template tr__fill__frame(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::tr__RslLinkID__DCCH(INTEGER_template(ANY_VALUE)), OCTETSTRING_template(Osmocom__Types::f__pad__oct(os_26, 23, os_4)), L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval));
current_location.update_lineno(7937);
/* BTS_Tests.ttcn, line 7937 */
T.start();
current_location.update_lineno(7938);
/* BTS_Tests.ttcn, line 7938 */
{
tmp_912:
alt_status tmp_912_alt_flag_0 = ALT_MAYBE;
alt_status tmp_912_alt_flag_1 = ALT_MAYBE;
alt_status tmp_912_alt_flag_2 = ALT_MAYBE;
alt_status tmp_912_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_912_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(7939);
/* BTS_Tests.ttcn, line 7939 */
tmp_912_alt_flag_0 = ConnHdlr_component_L1CTL.receive(tr__fill__frame, &(dl), any_compref, NULL, NULL, NULL);
if (tmp_912_alt_flag_0 == ALT_YES) {
current_location.update_lineno(7940);
/* BTS_Tests.ttcn, line 7940 */
INTEGER fn(const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().frame__nr());
current_location.update_lineno(7942);
/* BTS_Tests.ttcn, line 7942 */
if (is__first__frame) {
current_location.update_lineno(7943);
/* BTS_Tests.ttcn, line 7943 */
is__first__frame = FALSE;
current_location.update_lineno(7944);
/* BTS_Tests.ttcn, line 7944 */
first__fn = const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().frame__nr();
}
current_location.update_lineno(7947);
/* BTS_Tests.ttcn, line 7947 */
if (const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode().dtx__d()) {
current_location.update_lineno(7948);
/* BTS_Tests.ttcn, line 7948 */
if ((fn > (first__fn + 104))) {
current_location.update_lineno(7949);
/* BTS_Tests.ttcn, line 7949 */
T.stop();
current_location.update_lineno(7950);
/* BTS_Tests.ttcn, line 7950 */
f__rsl__chan__deact();
current_location.update_lineno(7951);
/* BTS_Tests.ttcn, line 7951 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(7954);
/* BTS_Tests.ttcn, line 7954 */
expected__fill__frames = 2;
current_location.update_lineno(7956);
/* BTS_Tests.ttcn, line 7956 */
if ((nfill__frames < expected__fill__frames)) {
current_location.update_lineno(7957);
/* BTS_Tests.ttcn, line 7957 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Not enough fill frames received: "),nfill__frames.log(),TTCN_Logger::log_event_str(" out of "),expected__fill__frames.log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(7959);
/* BTS_Tests.ttcn, line 7959 */
Misc__Helpers::f__shutdown(cs_4, 7959, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}
else {
current_location.update_lineno(7961);
/* BTS_Tests.ttcn, line 7961 */
TTCN_Runtime::setverdict(PASS);
}
}
else {
{
current_location.update_lineno(7968);
/* BTS_Tests.ttcn, line 7968 */
INTEGER i(0);
current_location.update_lineno(7968);
/* BTS_Tests.ttcn, line 7968 */
for ( ; ; ) {
current_location.update_lineno(7968);
/* BTS_Tests.ttcn, line 7968 */
if (!(i < required__tdma__blocks__dtx__tchf.lengthof())) break;
current_location.update_lineno(7969);
/* BTS_Tests.ttcn, line 7969 */
if ((mod(fn, 104) == const_cast< const General__Types::Integers&>(required__tdma__blocks__dtx__tchf)[i])) {
current_location.update_lineno(7970);
/* BTS_Tests.ttcn, line 7970 */
{
INTEGER tmp_916;
++nfill__frames;
}
current_location.update_lineno(7971);
/* BTS_Tests.ttcn, line 7971 */
goto tmp_912;
}
current_location.update_lineno(7968);
/* BTS_Tests.ttcn, line 7968 */
{
INTEGER tmp_917;
++i;
}
}
}
current_location.update_lineno(7974);
/* BTS_Tests.ttcn, line 7974 */
{
INTEGER tmp_918(mod(fn, 104));
INTEGER tmp_919(mod(fn, 26));
;
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Received DTX TCH fill frame with bad frame number: "),fn.log(),TTCN_Logger::log_event_str(" (mod "),frame__dtx__tchf__mod.log(),TTCN_Logger::log_event_str(": "),tmp_918.log(),TTCN_Logger::log_event_str(") (mod "),block__dtx__tchf__mod.log(),TTCN_Logger::log_event_str(": "),tmp_919.log(),TTCN_Logger::log_char(')'),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(7977);
/* BTS_Tests.ttcn, line 7977 */
f__rsl__chan__deact();
current_location.update_lineno(7978);
/* BTS_Tests.ttcn, line 7978 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
}
}
else {
current_location.update_lineno(7981);
/* BTS_Tests.ttcn, line 7981 */
{
INTEGER tmp_920;
++nfill__frames;
}
current_location.update_lineno(7982);
/* BTS_Tests.ttcn, line 7982 */
if ((fn > (first__fn + 104))) {
current_location.update_lineno(7983);
/* BTS_Tests.ttcn, line 7983 */
T.stop();
{
const GSM__Types::RslChannelNr &tmp_922 = RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr;
current_location.update_lineno(7987);
/* BTS_Tests.ttcn, line 7987 */
if(GSM__Types::t__RslChanNr__Bm(INTEGER_template(ANY_VALUE)).match(tmp_922)) goto tmp_921_0;
current_location.update_lineno(7989);
/* BTS_Tests.ttcn, line 7989 */
if(GSM__Types::t__RslChanNr__Lm(INTEGER_template(ANY_VALUE), INTEGER_template(ANY_VALUE)).match(tmp_922)) goto tmp_921_1;
current_location.update_lineno(7991);
/* BTS_Tests.ttcn, line 7991 */
if(GSM__Types::t__RslChanNr__SDCCH4(INTEGER_template(ANY_VALUE), INTEGER_template(ANY_VALUE)).match(tmp_922)) goto tmp_921_2;
current_location.update_lineno(7992);
/* BTS_Tests.ttcn, line 7992 */
if(GSM__Types::t__RslChanNr__SDCCH8(INTEGER_template(ANY_VALUE), INTEGER_template(ANY_VALUE)).match(tmp_922)) goto tmp_921_3;
goto tmp_921_4;
tmp_921_0:
{
current_location.update_lineno(7987);
/* BTS_Tests.ttcn, line 7987 */
expected__fill__frames = 24;
goto tmp_921_end;
}
tmp_921_1:
{
current_location.update_lineno(7989);
/* BTS_Tests.ttcn, line 7989 */
expected__fill__frames = 2;
goto tmp_921_end;
}
tmp_921_2:
{
current_location.update_lineno(7991);
/* BTS_Tests.ttcn, line 7991 */
expected__fill__frames = 4;
goto tmp_921_end;
}
tmp_921_3:
{
current_location.update_lineno(7992);
/* BTS_Tests.ttcn, line 7992 */
expected__fill__frames = 4;
goto tmp_921_end;
}
tmp_921_4:
{
current_location.update_lineno(7995);
/* BTS_Tests.ttcn, line 7995 */
Misc__Helpers::f__shutdown(cs_4, 7995, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
goto tmp_921_end;
}
tmp_921_end: /* empty */;
}
current_location.update_lineno(7999);
/* BTS_Tests.ttcn, line 7999 */
f__rsl__chan__deact();
current_location.update_lineno(8000);
/* BTS_Tests.ttcn, line 8000 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(8002);
/* BTS_Tests.ttcn, line 8002 */
if ((nfill__frames >= expected__fill__frames)) {
current_location.update_lineno(8003);
/* BTS_Tests.ttcn, line 8003 */
TTCN_Runtime::setverdict(PASS);
}
else {
current_location.update_lineno(8005);
/* BTS_Tests.ttcn, line 8005 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Not enough fill frames received: "),nfill__frames.log(),TTCN_Logger::log_event_str(" out of "),expected__fill__frames.log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8007);
/* BTS_Tests.ttcn, line 8007 */
Misc__Helpers::f__shutdown(cs_4, 8007, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}
}
else {
current_location.update_lineno(8010);
/* BTS_Tests.ttcn, line 8010 */
goto tmp_912;
}
}
break;
}
}
if (tmp_912_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8014);
/* BTS_Tests.ttcn, line 8014 */
tmp_912_alt_flag_1 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_912_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8014);
/* BTS_Tests.ttcn, line 8014 */
goto tmp_912;
}
}
if (tmp_912_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8015);
/* BTS_Tests.ttcn, line 8015 */
tmp_912_alt_flag_2 = T.timeout(NULL);
if (tmp_912_alt_flag_2 == ALT_YES) {
current_location.update_lineno(8016);
/* BTS_Tests.ttcn, line 8016 */
f__rsl__chan__deact();
current_location.update_lineno(8017);
/* BTS_Tests.ttcn, line 8017 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(8018);
/* BTS_Tests.ttcn, line 8018 */
Misc__Helpers::f__shutdown(cs_4, 8018, FAIL, cs_146);
break;
}
}
if (tmp_912_default_flag == ALT_MAYBE) {
tmp_912_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_912_default_flag == ALT_YES || tmp_912_default_flag == ALT_BREAK) break;
else if (tmp_912_default_flag == ALT_REPEAT) goto tmp_912;
}
current_location.update_lineno(7938);
/* BTS_Tests.ttcn, line 7938 */
if (tmp_912_alt_flag_0 == ALT_NO && tmp_912_alt_flag_1 == ALT_NO && tmp_912_alt_flag_2 == ALT_NO && tmp_912_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 7938 and 8020.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
}

void start_f__TC__tch__sign__l2__fill__frame(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_tch_sign_l2_fill_frame(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_tch_sign_l2_fill_frame", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__tch__sign__l2__fill__frame(const BOOLEAN& dtxd)
{
TTCN_Location current_location("BTS_Tests.ttcn", 8023, TTCN_Location::LOCATION_FUNCTION, "f_tch_sign_l2_fill_frame");
current_location.update_lineno(8024);
/* BTS_Tests.ttcn, line 8024 */
RSL__Types::RSL__IE__ChannelMode_template ch__mode;
current_location.update_lineno(8025);
/* BTS_Tests.ttcn, line 8025 */
COMPONENT vc__conn;
current_location.update_lineno(8026);
/* BTS_Tests.ttcn, line 8026 */
ConnHdlrPars pars;
current_location.update_lineno(8027);
/* BTS_Tests.ttcn, line 8027 */
pars.t__guard() = 6.0e1;
current_location.update_lineno(8028);
/* BTS_Tests.ttcn, line 8028 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8029);
/* BTS_Tests.ttcn, line 8029 */
ch__mode = RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, BOOLEAN_template(dtxd), RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval);
{
current_location.update_lineno(8030);
/* BTS_Tests.ttcn, line 8030 */
INTEGER i(0);
current_location.update_lineno(8030);
/* BTS_Tests.ttcn, line 8030 */
for ( ; ; ) {
current_location.update_lineno(8030);
/* BTS_Tests.ttcn, line 8030 */
if (!(i < test__CT_component_g__AllChannels.size_of())) break;
current_location.update_lineno(8031);
/* BTS_Tests.ttcn, line 8031 */
pars = t__Pars(GSM__Types::RslChannelNr_template(const_cast< const ChannelNrs&>(test__CT_component_g__AllChannels)[i]), ch__mode, t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8032);
/* BTS_Tests.ttcn, line 8032 */
if (dtxd) {
current_location.update_lineno(8033);
/* BTS_Tests.ttcn, line 8033 */
if ((i >= 4)) {
current_location.update_lineno(8034);
/* BTS_Tests.ttcn, line 8034 */
break;
}
}
current_location.update_lineno(8037);
/* BTS_Tests.ttcn, line 8037 */
vc__conn = f__start__handler(&f__TC__tch__sign__l2__fill__frame, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8038);
/* BTS_Tests.ttcn, line 8038 */
{
tmp_931:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_931;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_931;
}
current_location.update_lineno(8038);
/* BTS_Tests.ttcn, line 8038 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8038.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8030);
/* BTS_Tests.ttcn, line 8030 */
{
INTEGER tmp_932;
++i;
}
}
}
}

void start_f__tch__sign__l2__fill__frame(const COMPONENT& component_reference, const BOOLEAN& dtxd)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tch_sign_l2_fill_frame(");
dtxd.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_tch_sign_l2_fill_frame", text_buf);
dtxd.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__tch__sign__l2__fill__frame(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8044, TTCN_Location::LOCATION_TESTCASE, "TC_tch_sign_l2_fill_frame");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_tch_sign_l2_fill_frame", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8045);
/* BTS_Tests.ttcn, line 8045 */
f__tch__sign__l2__fill__frame(FALSE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_tch_sign_l2_fill_frame was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__tch__sign__l2__fill__frame__dtxd(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8050, TTCN_Location::LOCATION_TESTCASE, "TC_tch_sign_l2_fill_frame_dtxd");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_tch_sign_l2_fill_frame_dtxd", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8051);
/* BTS_Tests.ttcn, line 8051 */
f__tch__sign__l2__fill__frame(TRUE);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_tch_sign_l2_fill_frame_dtxd was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__chopped__ipa__ping(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8054, TTCN_Location::LOCATION_TESTCASE, "TC_chopped_ipa_ping");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_chopped_ipa_ping", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8055);
/* BTS_Tests.ttcn, line 8055 */
IPA__Testing::f__run__TC__chopped__ipa__ping(mp__rsl__ip, mp__rsl__port, IPA__Testing::IPA__ConnectionMode::LISTEN__FOR__CLIENT);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_chopped_ipa_ping was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__chopped__ipa__payload(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8058, TTCN_Location::LOCATION_TESTCASE, "TC_chopped_ipa_payload");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_chopped_ipa_payload", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8059);
/* BTS_Tests.ttcn, line 8059 */
IPA__Testing::f__run__TC__chopped__ipa__payload(mp__rsl__ip, mp__rsl__port, IPA__Testing::IPA__ConnectionMode::LISTEN__FOR__CLIENT);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_chopped_ipa_payload was stopped.");
}
return TTCN_Runtime::end_testcase();
}

alt_status as__TC__ms__pwr__ctrl_instance(const f__TC__ms__pwr__ctrl__cb& cb, INTEGER& num__blocks, boolean first_alt_run)
{
TTCN_Location current_location("BTS_Tests.ttcn", 8068, TTCN_Location::LOCATION_ALTSTEP, "as_TC_ms_pwr_ctrl");
current_location.update_lineno(8070);
/* BTS_Tests.ttcn, line 8070 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(8071);
/* BTS_Tests.ttcn, line 8071 */
GSM__RR__Types::SacchL1Header l1h;
current_location.update_lineno(8072);
/* BTS_Tests.ttcn, line 8072 */
OCTETSTRING l2;
alt_status ret_val = ALT_NO;
current_location.update_lineno(8074);
/* BTS_Tests.ttcn, line 8074 */
switch (ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::tr__RslLinkID__SACCH(INTEGER_template(ANY_VALUE)), L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(8076);
/* BTS_Tests.ttcn, line 8076 */
l1h = GSM__RR__Types::dec__SacchL1Header(substr(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().data__ind().payload(), 0, 2));
current_location.update_lineno(8077);
/* BTS_Tests.ttcn, line 8077 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("as_TC_ms_pwr_ctrl(): Rx SACCH L1 header: ");
l1h.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8080);
/* BTS_Tests.ttcn, line 8080 */
l2 = cb.invoke(l1h, INTEGER(num__blocks));
current_location.update_lineno(8082);
/* BTS_Tests.ttcn, line 8082 */
ConnHdlr_component_L1CTL.send(L1CTL__Types::ts__L1CTL__DATA__REQ__SACCH(GSM__Types::RslChannelNr_template(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).dl__info()().chan__nr()), GSM__Types::RslLinkId_template(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).dl__info()().link__id()), GSM__RR__Types::SacchL1Header_template(l1h), l2), FALSE, NULL);
current_location.update_lineno(8087);
/* BTS_Tests.ttcn, line 8087 */
{
INTEGER tmp_935;
--num__blocks;
}
current_location.update_lineno(8088);
/* BTS_Tests.ttcn, line 8088 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("as_TC_ms_pwr_ctrl(): ");
num__blocks.log();
TTCN_Logger::log_event_str(" SACCH blocks remaining");
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8089);
/* BTS_Tests.ttcn, line 8089 */
if ((num__blocks > 0)) {
current_location.update_lineno(8089);
/* BTS_Tests.ttcn, line 8089 */
return ALT_REPEAT;
}
}
return ALT_YES;
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
current_location.update_lineno(8091);
/* BTS_Tests.ttcn, line 8091 */
switch (ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL)) {
case ALT_YES:
{
current_location.update_lineno(8091);
/* BTS_Tests.ttcn, line 8091 */
return ALT_REPEAT;
}
case ALT_MAYBE:
ret_val = ALT_MAYBE;
default:
break;
}
return ret_val;
}

void as__TC__ms__pwr__ctrl(boolean nodefault_modifier, const f__TC__ms__pwr__ctrl__cb& cb, INTEGER& num__blocks)
{
altstep_begin:
boolean block_flag = FALSE;
alt_status altstep_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
for ( ; ; ) {
TTCN_Snapshot::take_new(block_flag);
if (altstep_flag != ALT_NO) {
altstep_flag = as__TC__ms__pwr__ctrl_instance(cb, num__blocks, !block_flag);
if (altstep_flag == ALT_YES || altstep_flag == ALT_BREAK) return;
else if (altstep_flag == ALT_REPEAT) goto altstep_begin;
}
if (!nodefault_modifier && default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(!block_flag);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) return;
else if (default_flag == ALT_REPEAT) goto altstep_begin;
}
if (altstep_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in altstep as_TC_ms_pwr_ctrl.");
else block_flag = TRUE;
}
}

Default_Base *activate_as__TC__ms__pwr__ctrl(const f__TC__ms__pwr__ctrl__cb& cb, INTEGER& num__blocks)
{
return new as__TC__ms__pwr__ctrl_Default(cb, num__blocks);
}

OCTETSTRING f__TC__ms__pwr__ctrl__cb__def(GSM__RR__Types::SacchL1Header& l1h, const INTEGER& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8094, TTCN_Location::LOCATION_FUNCTION, "f_TC_ms_pwr_ctrl_cb_def");
current_location.update_lineno(8097);
/* BTS_Tests.ttcn, line 8097 */
L1CTL__PortType::f__L1CTL__PARAM(ConnHdlr_component_L1CTL, const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).actual__ta(), const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).ms__power__lvl());
current_location.update_lineno(8100);
/* BTS_Tests.ttcn, line 8100 */
return Osmocom__Types::f__pad__oct(os_34, 21, os_1);
}

void start_f__TC__ms__pwr__ctrl__cb__def(const COMPONENT& component_reference, GSM__RR__Types::SacchL1Header& l1h, const INTEGER& num__blocks)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_cb_def(");
l1h.log();
TTCN_Logger::log_event_str(", ");
num__blocks.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ms_pwr_ctrl_cb_def", text_buf);
l1h.encode_text(text_buf);
num__blocks.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

OCTETSTRING f__TC__ms__pwr__ctrl__cb__const(GSM__RR__Types::SacchL1Header& l1h, const INTEGER& num__blocks)
{
TTCN_Location current_location("BTS_Tests.ttcn", 8103, TTCN_Location::LOCATION_FUNCTION, "f_TC_ms_pwr_ctrl_cb_const");
current_location.update_lineno(8105);
/* BTS_Tests.ttcn, line 8105 */
if ((const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).ms__power__lvl() != const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).l1__pars().ms__power__level())) {
current_location.update_lineno(8106);
/* BTS_Tests.ttcn, line 8106 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Unexpected MS Power level change: "),const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).l1__pars().ms__power__level().log(),TTCN_Logger::log_event_str(" -> "),const_cast< const GSM__RR__Types::SacchL1Header&>(l1h).ms__power__lvl().log(),TTCN_Logger::end_event_log2str()));
}
current_location.update_lineno(8111);
/* BTS_Tests.ttcn, line 8111 */
return f__TC__ms__pwr__ctrl__cb__def(l1h, num__blocks);
}

void start_f__TC__ms__pwr__ctrl__cb__const(const COMPONENT& component_reference, GSM__RR__Types::SacchL1Header& l1h, const INTEGER& num__blocks)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_cb_const(");
l1h.log();
TTCN_Logger::log_event_str(", ");
num__blocks.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ms_pwr_ctrl_cb_const", text_buf);
l1h.encode_text(text_buf);
num__blocks.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

OCTETSTRING f__TC__ms__pwr__ctrl__cb__rssi__pwm(GSM__RR__Types::SacchL1Header& l1h, const INTEGER& num__blocks)
{
TTCN_Location current_location("BTS_Tests.ttcn", 8114, TTCN_Location::LOCATION_FUNCTION, "f_TC_ms_pwr_ctrl_cb_rssi_pwm");
current_location.update_lineno(8117);
/* BTS_Tests.ttcn, line 8117 */
if ((rem(num__blocks, 2) == 0)) {
current_location.update_lineno(8118);
/* BTS_Tests.ttcn, line 8118 */
f__trxc__fake__rssi(-100);
}
else {
current_location.update_lineno(8120);
/* BTS_Tests.ttcn, line 8120 */
f__trxc__fake__rssi(-50);
}
current_location.update_lineno(8124);
/* BTS_Tests.ttcn, line 8124 */
return f__TC__ms__pwr__ctrl__cb__const(l1h, num__blocks);
}

void start_f__TC__ms__pwr__ctrl__cb__rssi__pwm(const COMPONENT& component_reference, GSM__RR__Types::SacchL1Header& l1h, const INTEGER& num__blocks)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_cb_rssi_pwm(");
l1h.log();
TTCN_Logger::log_event_str(", ");
num__blocks.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ms_pwr_ctrl_cb_rssi_pwm", text_buf);
l1h.encode_text(text_buf);
num__blocks.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__ms__pwr__ctrl__constant(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8128, TTCN_Location::LOCATION_FUNCTION, "f_TC_ms_pwr_ctrl_constant");
current_location.update_lineno(8130);
/* BTS_Tests.ttcn, line 8130 */
INTEGER num__blocks(8);
current_location.update_lineno(8131);
/* BTS_Tests.ttcn, line 8131 */
TIMER T("T", int2float(num__blocks));
current_location.update_lineno(8133);
/* BTS_Tests.ttcn, line 8133 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8134);
/* BTS_Tests.ttcn, line 8134 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(8137);
/* BTS_Tests.ttcn, line 8137 */
RSL__Types::RSL__IE__List_template ies;
ies.set_size(2);
{
RSL__Types::RSL__IE__Body_template tmp_936;
tmp_936.ms__power() = RSL__Types::ts__RSL__IE__MS__Power(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).l1__pars().ms__power__level(), RSL__Types::ts__RSL__IE__MS__Power_fpc__epc_defval);
ies[0] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__MS__POWER, tmp_936);
}
{
RSL__Types::RSL__IE__Body_template tmp_937;
tmp_937.ms__power__params() = RSL__Types::ts__RSL__IE__MS__Power__Parameters(os_2);
ies[1] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__MS__POWER__PARAM, tmp_937);
}
current_location.update_lineno(8147);
/* BTS_Tests.ttcn, line 8147 */
f__trxc__fake__rssi(mp__uplink__power__target);
current_location.update_lineno(8150);
/* BTS_Tests.ttcn, line 8150 */
f__send__meas__rep(GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, GSM__RR__Types::ts__MeasurementResults_rxq__f_defval, GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval));
current_location.update_lineno(8153);
/* BTS_Tests.ttcn, line 8153 */
f__est__dchan(f__est__dchan_encr__enable_defval, ies.valueof(), f__est__dchan_act__type_defval);
current_location.update_lineno(8155);
/* BTS_Tests.ttcn, line 8155 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(8156);
/* BTS_Tests.ttcn, line 8156 */
T.start();
current_location.update_lineno(8157);
/* BTS_Tests.ttcn, line 8157 */
{
tmp_938:
alt_status tmp_938_alt_flag_0 = ALT_MAYBE;
alt_status tmp_938_alt_flag_1 = ALT_MAYBE;
alt_status tmp_938_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_938_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8158);
/* BTS_Tests.ttcn, line 8158 */
tmp_938_alt_flag_0 = as__TC__ms__pwr__ctrl_instance(&f__TC__ms__pwr__ctrl__cb__const, num__blocks, first_run);
if (tmp_938_alt_flag_0 == ALT_REPEAT) goto tmp_938;
if (tmp_938_alt_flag_0 == ALT_BREAK) break;
if (tmp_938_alt_flag_0 == ALT_YES) break;
}
if (tmp_938_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8159);
/* BTS_Tests.ttcn, line 8159 */
tmp_938_alt_flag_1 = T.timeout(NULL);
if (tmp_938_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8160);
/* BTS_Tests.ttcn, line 8160 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Not all SACCH blocks were processed in time, "),num__blocks.log(),TTCN_Logger::log_event_str(" were not handled"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_938_default_flag == ALT_MAYBE) {
tmp_938_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_938_default_flag == ALT_YES || tmp_938_default_flag == ALT_BREAK) break;
else if (tmp_938_default_flag == ALT_REPEAT) goto tmp_938;
}
current_location.update_lineno(8157);
/* BTS_Tests.ttcn, line 8157 */
if (tmp_938_alt_flag_0 == ALT_NO && tmp_938_alt_flag_1 == ALT_NO && tmp_938_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8157 and 8163.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8166);
/* BTS_Tests.ttcn, line 8166 */
f__rsl__chan__deact();
current_location.update_lineno(8167);
/* BTS_Tests.ttcn, line 8167 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
}

void start_f__TC__ms__pwr__ctrl__constant(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_constant(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ms_pwr_ctrl_constant", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ms__pwr__ctrl__constant(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8169, TTCN_Location::LOCATION_TESTCASE, "TC_ms_pwr_ctrl_constant");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ms_pwr_ctrl_constant", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8170);
/* BTS_Tests.ttcn, line 8170 */
COMPONENT vc__conn;
current_location.update_lineno(8171);
/* BTS_Tests.ttcn, line 8171 */
ConnHdlrPars pars;
current_location.update_lineno(8173);
/* BTS_Tests.ttcn, line 8173 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8176);
/* BTS_Tests.ttcn, line 8176 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, (cs_147 + int2str(mp__uplink__power__target)));
{
current_location.update_lineno(8178);
/* BTS_Tests.ttcn, line 8178 */
INTEGER i(0);
current_location.update_lineno(8178);
/* BTS_Tests.ttcn, line 8178 */
for ( ; ; ) {
current_location.update_lineno(8178);
/* BTS_Tests.ttcn, line 8178 */
if (!(i < test__CT_component_g__AllChanTypes.size_of())) break;
current_location.update_lineno(8179);
/* BTS_Tests.ttcn, line 8179 */
pars = t__Pars(GSM__Types::RslChannelNr_template(const_cast< const ChannelNrs&>(test__CT_component_g__AllChanTypes)[i]), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8180);
/* BTS_Tests.ttcn, line 8180 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("TC_ms_pwr_ctrl_constant: starting on ");
const_cast< const ConnHdlrPars&>(pars).chan__nr().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8182);
/* BTS_Tests.ttcn, line 8182 */
vc__conn = f__start__handler(&f__TC__ms__pwr__ctrl__constant, pars, f__start__handler_pcu__comp_defval, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(8184);
/* BTS_Tests.ttcn, line 8184 */
{
tmp_941:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_941;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_941;
}
current_location.update_lineno(8184);
/* BTS_Tests.ttcn, line 8184 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8184.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8178);
/* BTS_Tests.ttcn, line 8178 */
{
INTEGER tmp_942;
++i;
}
}
}
current_location.update_lineno(8188);
/* BTS_Tests.ttcn, line 8188 */
Misc__Helpers::f__shutdown(cs_4, 8188, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ms_pwr_ctrl_constant was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__ms__pwr__ctrl__pf__ewma(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8192, TTCN_Location::LOCATION_FUNCTION, "f_TC_ms_pwr_ctrl_pf_ewma");
current_location.update_lineno(8194);
/* BTS_Tests.ttcn, line 8194 */
INTEGER num__blocks(16);
current_location.update_lineno(8195);
/* BTS_Tests.ttcn, line 8195 */
TIMER T("T", int2float(num__blocks));
current_location.update_lineno(8197);
/* BTS_Tests.ttcn, line 8197 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8198);
/* BTS_Tests.ttcn, line 8198 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(8201);
/* BTS_Tests.ttcn, line 8201 */
RSL__Types::RSL__IE__List_template ies;
ies.set_size(2);
{
RSL__Types::RSL__IE__Body_template tmp_943;
tmp_943.ms__power() = RSL__Types::ts__RSL__IE__MS__Power(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).l1__pars().ms__power__level(), RSL__Types::ts__RSL__IE__MS__Power_fpc__epc_defval);
ies[0] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__MS__POWER, tmp_943);
}
{
RSL__Types::RSL__IE__Body_template tmp_944;
tmp_944.ms__power__params() = RSL__Types::ts__RSL__IE__MS__Power__Parameters(os_2);
ies[1] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__MS__POWER__PARAM, tmp_944);
}
current_location.update_lineno(8211);
/* BTS_Tests.ttcn, line 8211 */
f__trxc__fake__rssi(mp__uplink__power__target);
current_location.update_lineno(8214);
/* BTS_Tests.ttcn, line 8214 */
f__send__meas__rep(GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, GSM__RR__Types::ts__MeasurementResults_rxq__f_defval, GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval));
current_location.update_lineno(8217);
/* BTS_Tests.ttcn, line 8217 */
f__est__dchan(f__est__dchan_encr__enable_defval, ies.valueof(), f__est__dchan_act__type_defval);
current_location.update_lineno(8219);
/* BTS_Tests.ttcn, line 8219 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(8220);
/* BTS_Tests.ttcn, line 8220 */
T.start();
current_location.update_lineno(8221);
/* BTS_Tests.ttcn, line 8221 */
{
tmp_945:
alt_status tmp_945_alt_flag_0 = ALT_MAYBE;
alt_status tmp_945_alt_flag_1 = ALT_MAYBE;
alt_status tmp_945_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_945_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8222);
/* BTS_Tests.ttcn, line 8222 */
tmp_945_alt_flag_0 = as__TC__ms__pwr__ctrl_instance(&f__TC__ms__pwr__ctrl__cb__rssi__pwm, num__blocks, first_run);
if (tmp_945_alt_flag_0 == ALT_REPEAT) goto tmp_945;
if (tmp_945_alt_flag_0 == ALT_BREAK) break;
if (tmp_945_alt_flag_0 == ALT_YES) break;
}
if (tmp_945_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8223);
/* BTS_Tests.ttcn, line 8223 */
tmp_945_alt_flag_1 = T.timeout(NULL);
if (tmp_945_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8224);
/* BTS_Tests.ttcn, line 8224 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Not all SACCH blocks were processed in time, "),num__blocks.log(),TTCN_Logger::log_event_str(" were not handled"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_945_default_flag == ALT_MAYBE) {
tmp_945_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_945_default_flag == ALT_YES || tmp_945_default_flag == ALT_BREAK) break;
else if (tmp_945_default_flag == ALT_REPEAT) goto tmp_945;
}
current_location.update_lineno(8221);
/* BTS_Tests.ttcn, line 8221 */
if (tmp_945_alt_flag_0 == ALT_NO && tmp_945_alt_flag_1 == ALT_NO && tmp_945_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8221 and 8227.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8230);
/* BTS_Tests.ttcn, line 8230 */
f__rsl__chan__deact();
current_location.update_lineno(8231);
/* BTS_Tests.ttcn, line 8231 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
}

void start_f__TC__ms__pwr__ctrl__pf__ewma(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_pf_ewma(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_ms_pwr_ctrl_pf_ewma", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__ms__pwr__ctrl__pf__ewma(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8233, TTCN_Location::LOCATION_TESTCASE, "TC_ms_pwr_ctrl_pf_ewma");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_ms_pwr_ctrl_pf_ewma", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8234);
/* BTS_Tests.ttcn, line 8234 */
COMPONENT vc__conn;
current_location.update_lineno(8235);
/* BTS_Tests.ttcn, line 8235 */
ConnHdlrPars pars;
current_location.update_lineno(8237);
/* BTS_Tests.ttcn, line 8237 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8240);
/* BTS_Tests.ttcn, line 8240 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, cs_148);
current_location.update_lineno(8242);
/* BTS_Tests.ttcn, line 8242 */
Osmocom__VTY__Functions::f__vty__config(test__CT_component_BTSVTY, cs_63, (((cs_147 + int2str(mp__uplink__power__target)) + cs_149) + int2str(mp__uplink__power__hysteresis)));
{
current_location.update_lineno(8245);
/* BTS_Tests.ttcn, line 8245 */
INTEGER i(0);
current_location.update_lineno(8245);
/* BTS_Tests.ttcn, line 8245 */
for ( ; ; ) {
current_location.update_lineno(8245);
/* BTS_Tests.ttcn, line 8245 */
if (!(i < test__CT_component_g__AllChanTypes.size_of())) break;
current_location.update_lineno(8246);
/* BTS_Tests.ttcn, line 8246 */
pars = t__Pars(GSM__Types::RslChannelNr_template(const_cast< const ChannelNrs&>(test__CT_component_g__AllChanTypes)[i]), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8247);
/* BTS_Tests.ttcn, line 8247 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("TC_ms_pwr_ctrl_pf_ewma: starting on ");
const_cast< const ConnHdlrPars&>(pars).chan__nr().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8249);
/* BTS_Tests.ttcn, line 8249 */
vc__conn = f__start__handler(&f__TC__ms__pwr__ctrl__pf__ewma, pars, f__start__handler_pcu__comp_defval, TRUE, f__start__handler_l1ctl_defval);
current_location.update_lineno(8251);
/* BTS_Tests.ttcn, line 8251 */
{
tmp_948:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_948;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_948;
}
current_location.update_lineno(8251);
/* BTS_Tests.ttcn, line 8251 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8251.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8245);
/* BTS_Tests.ttcn, line 8245 */
{
INTEGER tmp_949;
++i;
}
}
}
current_location.update_lineno(8255);
/* BTS_Tests.ttcn, line 8255 */
Misc__Helpers::f__shutdown(cs_4, 8255, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_ms_pwr_ctrl_pf_ewma was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__speech__no__rtp(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8258, TTCN_Location::LOCATION_FUNCTION, "f_TC_speech_no_rtp");
current_location.update_lineno(8259);
/* BTS_Tests.ttcn, line 8259 */
L1CTL__Types::L1ctlMessage_template tr__dummy__frame;
current_location.update_lineno(8260);
/* BTS_Tests.ttcn, line 8260 */
INTEGER dummy__frame__num(0);
current_location.update_lineno(8261);
/* BTS_Tests.ttcn, line 8261 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(8262);
/* BTS_Tests.ttcn, line 8262 */
TIMER T("T", 8.0);
current_location.update_lineno(8264);
/* BTS_Tests.ttcn, line 8264 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8265);
/* BTS_Tests.ttcn, line 8265 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(8267);
/* BTS_Tests.ttcn, line 8267 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(8270);
/* BTS_Tests.ttcn, line 8270 */
Osmocom__Types::f__sleep(2.0);
current_location.update_lineno(8271);
/* BTS_Tests.ttcn, line 8271 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(8277);
/* BTS_Tests.ttcn, line 8277 */
tr__dummy__frame = L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::tr__RslLinkID__DCCH(INTEGER_template(0)), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_frame_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval);
current_location.update_lineno(8278);
/* BTS_Tests.ttcn, line 8278 */
{
INTEGER_template& tmp_952 = tr__dummy__frame.dl__info().fire__crc();
tmp_952.set_type(VALUE_RANGE);
tmp_952.set_min(1);
tmp_952.set_max(255);
}
current_location.update_lineno(8279);
/* BTS_Tests.ttcn, line 8279 */
tr__dummy__frame.dl__info().num__biterr() = 0;
current_location.update_lineno(8280);
/* BTS_Tests.ttcn, line 8280 */
tr__dummy__frame.payload() = OMIT_VALUE;
current_location.update_lineno(8282);
/* BTS_Tests.ttcn, line 8282 */
T.start();
current_location.update_lineno(8283);
/* BTS_Tests.ttcn, line 8283 */
{
tmp_955:
alt_status tmp_955_alt_flag_0 = ALT_MAYBE;
alt_status tmp_955_alt_flag_1 = ALT_MAYBE;
alt_status tmp_955_alt_flag_2 = ALT_MAYBE;
alt_status tmp_955_alt_flag_3 = ALT_MAYBE;
alt_status tmp_955_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_955_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8284);
/* BTS_Tests.ttcn, line 8284 */
tmp_955_alt_flag_0 = ConnHdlr_component_L1CTL.receive(tr__dummy__frame, &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_955_alt_flag_0 == ALT_YES) {
current_location.update_lineno(8285);
/* BTS_Tests.ttcn, line 8285 */
{
INTEGER tmp_956;
++dummy__frame__num;
}
current_location.update_lineno(8286);
/* BTS_Tests.ttcn, line 8286 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Rx dummy TRAFFIC.ind (num ");
dummy__frame__num.log();
TTCN_Logger::log_event_str("): ");
l1__dl.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8288);
/* BTS_Tests.ttcn, line 8288 */
if ((dummy__frame__num < 5)) {
current_location.update_lineno(8289);
/* BTS_Tests.ttcn, line 8289 */
goto tmp_955;
}
break;
}
}
if (tmp_955_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8291);
/* BTS_Tests.ttcn, line 8291 */
tmp_955_alt_flag_1 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_link__id_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_frame_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_955_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8292);
/* BTS_Tests.ttcn, line 8292 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Rx unexpected TRAFFIC.ind: "),l1__dl.log(),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_955_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8294);
/* BTS_Tests.ttcn, line 8294 */
tmp_955_alt_flag_2 = as__l1__sacch__loop_instance(first_run);
if (tmp_955_alt_flag_2 == ALT_REPEAT) goto tmp_955;
if (tmp_955_alt_flag_2 == ALT_BREAK) break;
if (tmp_955_alt_flag_2 == ALT_YES) break;
}
if (tmp_955_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(8295);
/* BTS_Tests.ttcn, line 8295 */
tmp_955_alt_flag_3 = T.timeout(NULL);
if (tmp_955_alt_flag_3 == ALT_YES) {
current_location.update_lineno(8296);
/* BTS_Tests.ttcn, line 8296 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for TRAFFIC.ind"),TTCN_Logger::end_event_log2str()));
break;
}
}
if (tmp_955_default_flag == ALT_MAYBE) {
tmp_955_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_955_default_flag == ALT_YES || tmp_955_default_flag == ALT_BREAK) break;
else if (tmp_955_default_flag == ALT_REPEAT) goto tmp_955;
}
current_location.update_lineno(8283);
/* BTS_Tests.ttcn, line 8283 */
if (tmp_955_alt_flag_0 == ALT_NO && tmp_955_alt_flag_1 == ALT_NO && tmp_955_alt_flag_2 == ALT_NO && tmp_955_alt_flag_3 == ALT_NO && tmp_955_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8283 and 8298.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8300);
/* BTS_Tests.ttcn, line 8300 */
f__rsl__chan__deact();
current_location.update_lineno(8301);
/* BTS_Tests.ttcn, line 8301 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(8302);
/* BTS_Tests.ttcn, line 8302 */
f__rsl__chan__deact();
current_location.update_lineno(8303);
/* BTS_Tests.ttcn, line 8303 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__speech__no__rtp(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_speech_no_rtp(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_speech_no_rtp", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__speech__no__rtp__tchf(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8305, TTCN_Location::LOCATION_TESTCASE, "TC_speech_no_rtp_tchf");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_speech_no_rtp_tchf", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8306);
/* BTS_Tests.ttcn, line 8306 */
COMPONENT vc__conn;
current_location.update_lineno(8307);
/* BTS_Tests.ttcn, line 8307 */
ConnHdlrPars pars;
current_location.update_lineno(8309);
/* BTS_Tests.ttcn, line 8309 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8312);
/* BTS_Tests.ttcn, line 8312 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8313);
/* BTS_Tests.ttcn, line 8313 */
vc__conn = f__start__handler(&f__TC__speech__no__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8314);
/* BTS_Tests.ttcn, line 8314 */
{
tmp_959:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_959;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_959;
}
current_location.update_lineno(8314);
/* BTS_Tests.ttcn, line 8314 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8314.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8317);
/* BTS_Tests.ttcn, line 8317 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM2, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8318);
/* BTS_Tests.ttcn, line 8318 */
vc__conn = f__start__handler(&f__TC__speech__no__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8319);
/* BTS_Tests.ttcn, line 8319 */
{
tmp_962:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_962;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_962;
}
current_location.update_lineno(8319);
/* BTS_Tests.ttcn, line 8319 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8319.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8322);
/* BTS_Tests.ttcn, line 8322 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8323);
/* BTS_Tests.ttcn, line 8323 */
pars.mr__conf() = RSL__Types::ts__RSL__MultirateCfg(RSL__Types::ts__RSL__MultirateCfg_icmi_defval, RSL__Types::ts__RSL__MultirateCfg_start__mode_defval, RSL__Types::ts__RSL__MultirateCfg_codec__modes_defval, RSL__Types::ts__RSL__MultirateCfg_params_defval).valueof();
current_location.update_lineno(8324);
/* BTS_Tests.ttcn, line 8324 */
vc__conn = f__start__handler(&f__TC__speech__no__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8325);
/* BTS_Tests.ttcn, line 8325 */
{
tmp_966:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_966;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_966;
}
current_location.update_lineno(8325);
/* BTS_Tests.ttcn, line 8325 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8325.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8327);
/* BTS_Tests.ttcn, line 8327 */
Misc__Helpers::f__shutdown(cs_4, 8327, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_speech_no_rtp_tchf was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__speech__no__rtp__tchh(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8329, TTCN_Location::LOCATION_TESTCASE, "TC_speech_no_rtp_tchh");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_speech_no_rtp_tchh", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8330);
/* BTS_Tests.ttcn, line 8330 */
COMPONENT vc__conn;
current_location.update_lineno(8331);
/* BTS_Tests.ttcn, line 8331 */
ConnHdlrPars pars;
current_location.update_lineno(8333);
/* BTS_Tests.ttcn, line 8333 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8336);
/* BTS_Tests.ttcn, line 8336 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8337);
/* BTS_Tests.ttcn, line 8337 */
vc__conn = f__start__handler(&f__TC__speech__no__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8338);
/* BTS_Tests.ttcn, line 8338 */
{
tmp_969:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_969;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_969;
}
current_location.update_lineno(8338);
/* BTS_Tests.ttcn, line 8338 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8338.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8341);
/* BTS_Tests.ttcn, line 8341 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8342);
/* BTS_Tests.ttcn, line 8342 */
pars.mr__conf() = RSL__Types::ts__RSL__MultirateCfg(RSL__Types::ts__RSL__MultirateCfg_icmi_defval, RSL__Types::ts__RSL__MultirateCfg_start__mode_defval, RSL__Types::ts__RSL__MultirateCfg_codec__modes_defval, RSL__Types::ts__RSL__MultirateCfg_params_defval).valueof();
current_location.update_lineno(8343);
/* BTS_Tests.ttcn, line 8343 */
vc__conn = f__start__handler(&f__TC__speech__no__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8344);
/* BTS_Tests.ttcn, line 8344 */
{
tmp_973:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_973;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_973;
}
current_location.update_lineno(8344);
/* BTS_Tests.ttcn, line 8344 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8344.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8346);
/* BTS_Tests.ttcn, line 8346 */
Misc__Helpers::f__shutdown(cs_4, 8346, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_speech_no_rtp_tchh was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__speech__rtp(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8350, TTCN_Location::LOCATION_FUNCTION, "f_TC_speech_rtp");
current_location.update_lineno(8351);
/* BTS_Tests.ttcn, line 8351 */
OCTETSTRING payload;
current_location.update_lineno(8352);
/* BTS_Tests.ttcn, line 8352 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(8353);
/* BTS_Tests.ttcn, line 8353 */
RTP__Types::PDU__RTP rtp__pdu;
current_location.update_lineno(8354);
/* BTS_Tests.ttcn, line 8354 */
TIMER Td("Td");
current_location.update_lineno(8354);
/* BTS_Tests.ttcn, line 8354 */
TIMER Tu("Tu");
current_location.update_lineno(8356);
/* BTS_Tests.ttcn, line 8356 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Testing channel mode ");
const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8358);
/* BTS_Tests.ttcn, line 8358 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8359);
/* BTS_Tests.ttcn, line 8359 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
{
const RSL__Types::RSL__IE__ChannelMode &tmp_975 = const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode();
current_location.update_lineno(8362);
/* BTS_Tests.ttcn, line 8362 */
if(RSL__Types::tr__RSL__ChanMode(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6SpeechAlgo_template(RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1)).match(tmp_975)) goto tmp_974_0;
current_location.update_lineno(8364);
/* BTS_Tests.ttcn, line 8364 */
if(RSL__Types::tr__RSL__ChanMode(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6SpeechAlgo_template(RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1)).match(tmp_975)) goto tmp_974_1;
current_location.update_lineno(8366);
/* BTS_Tests.ttcn, line 8366 */
if(RSL__Types::tr__RSL__ChanMode(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6SpeechAlgo_template(RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM2)).match(tmp_975)) goto tmp_974_2;
current_location.update_lineno(8368);
/* BTS_Tests.ttcn, line 8368 */
if(RSL__Types::tr__RSL__ChanMode(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6SpeechAlgo_template(RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3)).match(tmp_975)) goto tmp_974_3;
current_location.update_lineno(8375);
/* BTS_Tests.ttcn, line 8375 */
if(RSL__Types::tr__RSL__ChanMode(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6SpeechAlgo_template(RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3)).match(tmp_975)) goto tmp_974_4;
goto tmp_974_5;
tmp_974_0:
{
current_location.update_lineno(8363);
/* BTS_Tests.ttcn, line 8363 */
payload = Osmocom__Types::f__pad__oct((os_35 + Osmocom__Types::f__rnd__octstring(6)), 33, os_36);
goto tmp_974_end;
}
tmp_974_1:
{
current_location.update_lineno(8365);
/* BTS_Tests.ttcn, line 8365 */
payload = Osmocom__Types::f__pad__oct((os_1 + Osmocom__Types::f__rnd__octstring(6)), 15, os_1);
goto tmp_974_end;
}
tmp_974_2:
{
current_location.update_lineno(8367);
/* BTS_Tests.ttcn, line 8367 */
payload = Osmocom__Types::f__pad__oct((os_37 + Osmocom__Types::f__rnd__octstring(6)), 31, os_1);
goto tmp_974_end;
}
tmp_974_3:
{
current_location.update_lineno(8370);
/* BTS_Tests.ttcn, line 8370 */
INTEGER amr__ft(get__start__amr__ft());
current_location.update_lineno(8371);
/* BTS_Tests.ttcn, line 8371 */
INTEGER payload__len((AMR__Types::f__amrft__payload__len(amr__ft) + 2));
current_location.update_lineno(8372);
/* BTS_Tests.ttcn, line 8372 */
payload = AMR__Types::enc__RTP__AMR__Hdr(AMR__Types::ts__RTP__AMR__Hdr(INTEGER_template(amr__ft), INTEGER_template(amr__ft), BITSTRING_template(bs_1), AMR__Types::ts__RTP__AMR__Hdr_f_defval).valueof());
current_location.update_lineno(8373);
/* BTS_Tests.ttcn, line 8373 */
payload = Osmocom__Types::f__pad__oct((payload + Osmocom__Types::f__rnd__octstring(6)), payload__len, os_1);
goto tmp_974_end;
}
tmp_974_4:
{
current_location.update_lineno(8377);
/* BTS_Tests.ttcn, line 8377 */
INTEGER amr__ft(get__start__amr__ft());
current_location.update_lineno(8378);
/* BTS_Tests.ttcn, line 8378 */
INTEGER payload__len((AMR__Types::f__amrft__payload__len(amr__ft) + 2));
current_location.update_lineno(8379);
/* BTS_Tests.ttcn, line 8379 */
payload = AMR__Types::enc__RTP__AMR__Hdr(AMR__Types::ts__RTP__AMR__Hdr(INTEGER_template(amr__ft), INTEGER_template(amr__ft), BITSTRING_template(bs_1), AMR__Types::ts__RTP__AMR__Hdr_f_defval).valueof());
current_location.update_lineno(8380);
/* BTS_Tests.ttcn, line 8380 */
payload = Osmocom__Types::f__pad__oct((payload + Osmocom__Types::f__rnd__octstring(6)), payload__len, os_1);
goto tmp_974_end;
}
tmp_974_5:
{
current_location.update_lineno(8383);
/* BTS_Tests.ttcn, line 8383 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Unhandled RSL channel mode := "),const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode().log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8384);
/* BTS_Tests.ttcn, line 8384 */
Misc__Helpers::f__shutdown(cs_4, 8384, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
goto tmp_974_end;
}
tmp_974_end: /* empty */;
}
current_location.update_lineno(8389);
/* BTS_Tests.ttcn, line 8389 */
RTP__Emulation::RtpemConfig cfg(RTP__Emulation::c__RtpemDefaultCfg);
current_location.update_lineno(8390);
/* BTS_Tests.ttcn, line 8390 */
cfg.tx__payloads()[0].fixed__payload() = payload;
current_location.update_lineno(8391);
/* BTS_Tests.ttcn, line 8391 */
f__rtpem__activate(cfg, RTP__Emulation::RtpemMode::RTPEM__MODE__BIDIR, f__rtpem__activate_rtp__pt_defval);
current_location.update_lineno(8394);
/* BTS_Tests.ttcn, line 8394 */
Osmocom__Types::f__sleep(2.0);
current_location.update_lineno(8395);
/* BTS_Tests.ttcn, line 8395 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(8396);
/* BTS_Tests.ttcn, line 8396 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(8399);
/* BTS_Tests.ttcn, line 8399 */
Td.start(2.0);
current_location.update_lineno(8400);
/* BTS_Tests.ttcn, line 8400 */
{
tmp_984:
alt_status tmp_984_alt_flag_0 = ALT_MAYBE;
alt_status tmp_984_alt_flag_1 = ALT_MAYBE;
alt_status tmp_984_alt_flag_2 = ALT_MAYBE;
alt_status tmp_984_alt_flag_3 = ALT_MAYBE;
alt_status tmp_984_alt_flag_4 = ALT_MAYBE;
alt_status tmp_984_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_984_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8401);
/* BTS_Tests.ttcn, line 8401 */
tmp_984_alt_flag_0 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_link__id_defval, OCTETSTRING_template(payload), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_984_alt_flag_0 == ALT_YES) {
current_location.update_lineno(8402);
/* BTS_Tests.ttcn, line 8402 */
OCTETSTRING data(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().traffic__ind().data());
current_location.update_lineno(8403);
/* BTS_Tests.ttcn, line 8403 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("TCH received (len=");
{
INTEGER tmp_985(data.lengthof());
tmp_985.log();
}
TTCN_Logger::log_event_str("): ");
data.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8404);
/* BTS_Tests.ttcn, line 8404 */
ConnHdlr_component_L1CTL.send(L1CTL__Types::ts__L1CTL__TRAFFIC__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).dl__info()().link__id()), const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().traffic__ind().data()), FALSE, NULL);
current_location.update_lineno(8406);
/* BTS_Tests.ttcn, line 8406 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_984_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8408);
/* BTS_Tests.ttcn, line 8408 */
tmp_984_alt_flag_1 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_link__id_defval, OCTETSTRING_template(ANY_VALUE), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_984_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8409);
/* BTS_Tests.ttcn, line 8409 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Rx unexpected Downlink speech frame ("),const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().traffic__ind().data().log(),TTCN_Logger::log_event_str(") expected ("),payload.log(),TTCN_Logger::log_char(')'),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8412);
/* BTS_Tests.ttcn, line 8412 */
Misc__Helpers::f__shutdown(cs_4, 8412, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_984_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8414);
/* BTS_Tests.ttcn, line 8414 */
tmp_984_alt_flag_2 = as__l1__sacch__loop_instance(first_run);
if (tmp_984_alt_flag_2 == ALT_REPEAT) goto tmp_984;
if (tmp_984_alt_flag_2 == ALT_BREAK) break;
if (tmp_984_alt_flag_2 == ALT_YES) break;
}
if (tmp_984_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(8415);
/* BTS_Tests.ttcn, line 8415 */
tmp_984_alt_flag_3 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_984_alt_flag_3 == ALT_YES) {
current_location.update_lineno(8415);
/* BTS_Tests.ttcn, line 8415 */
goto tmp_984;
}
}
if (tmp_984_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(8416);
/* BTS_Tests.ttcn, line 8416 */
tmp_984_alt_flag_4 = Td.timeout(NULL);
if (tmp_984_alt_flag_4 == ALT_YES) {
current_location.update_lineno(8417);
/* BTS_Tests.ttcn, line 8417 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for Downlink speech frames"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8418);
/* BTS_Tests.ttcn, line 8418 */
Misc__Helpers::f__shutdown(cs_4, 8418, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_984_default_flag == ALT_MAYBE) {
tmp_984_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_984_default_flag == ALT_YES || tmp_984_default_flag == ALT_BREAK) break;
else if (tmp_984_default_flag == ALT_REPEAT) goto tmp_984;
}
current_location.update_lineno(8400);
/* BTS_Tests.ttcn, line 8400 */
if (tmp_984_alt_flag_0 == ALT_NO && tmp_984_alt_flag_1 == ALT_NO && tmp_984_alt_flag_2 == ALT_NO && tmp_984_alt_flag_3 == ALT_NO && tmp_984_alt_flag_4 == ALT_NO && tmp_984_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8400 and 8420.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8423);
/* BTS_Tests.ttcn, line 8423 */
ConnHdlr_component_RTPEM__DATA.clear();
current_location.update_lineno(8424);
/* BTS_Tests.ttcn, line 8424 */
Tu.start(2.0);
current_location.update_lineno(8425);
/* BTS_Tests.ttcn, line 8425 */
{
tmp_986:
alt_status tmp_986_alt_flag_0 = ALT_MAYBE;
alt_status tmp_986_alt_flag_1 = ALT_MAYBE;
alt_status tmp_986_alt_flag_2 = ALT_MAYBE;
alt_status tmp_986_alt_flag_3 = ALT_MAYBE;
alt_status tmp_986_alt_flag_4 = ALT_MAYBE;
alt_status tmp_986_alt_flag_5 = ALT_MAYBE;
alt_status tmp_986_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_986_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8426);
/* BTS_Tests.ttcn, line 8426 */
tmp_986_alt_flag_0 = as__l1__tch__loop_instance(first_run);
if (tmp_986_alt_flag_0 == ALT_REPEAT) goto tmp_986;
if (tmp_986_alt_flag_0 == ALT_BREAK) break;
if (tmp_986_alt_flag_0 == ALT_YES) break;
}
if (tmp_986_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8427);
/* BTS_Tests.ttcn, line 8427 */
tmp_986_alt_flag_1 = as__l1__sacch__loop_instance(first_run);
if (tmp_986_alt_flag_1 == ALT_REPEAT) goto tmp_986;
if (tmp_986_alt_flag_1 == ALT_BREAK) break;
if (tmp_986_alt_flag_1 == ALT_YES) break;
}
if (tmp_986_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8428);
/* BTS_Tests.ttcn, line 8428 */
tmp_986_alt_flag_2 = ConnHdlr_component_RTPEM__DATA.receive(RTP__Types::PDU__RTP_template(ANY_VALUE), &(rtp__pdu), any_compref, NULL, NULL, NULL);
if (tmp_986_alt_flag_2 == ALT_YES) {
current_location.update_lineno(8429);
/* BTS_Tests.ttcn, line 8429 */
if ((const_cast< const RTP__Types::PDU__RTP&>(rtp__pdu).data() != payload)) {
current_location.update_lineno(8430);
/* BTS_Tests.ttcn, line 8430 */
goto tmp_986;
}
break;
}
}
if (tmp_986_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(8432);
/* BTS_Tests.ttcn, line 8432 */
tmp_986_alt_flag_3 = ConnHdlr_component_RTPEM__DATA.receive(any_compref, NULL, NULL, NULL);
if (tmp_986_alt_flag_3 == ALT_YES) {
current_location.update_lineno(8432);
/* BTS_Tests.ttcn, line 8432 */
goto tmp_986;
}
}
if (tmp_986_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(8433);
/* BTS_Tests.ttcn, line 8433 */
tmp_986_alt_flag_4 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_986_alt_flag_4 == ALT_YES) {
current_location.update_lineno(8433);
/* BTS_Tests.ttcn, line 8433 */
goto tmp_986;
}
}
if (tmp_986_alt_flag_5 == ALT_MAYBE) {
current_location.update_lineno(8434);
/* BTS_Tests.ttcn, line 8434 */
tmp_986_alt_flag_5 = Tu.timeout(NULL);
if (tmp_986_alt_flag_5 == ALT_YES) {
current_location.update_lineno(8435);
/* BTS_Tests.ttcn, line 8435 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for Uplink speech frames"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8436);
/* BTS_Tests.ttcn, line 8436 */
Misc__Helpers::f__shutdown(cs_4, 8436, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_986_default_flag == ALT_MAYBE) {
tmp_986_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_986_default_flag == ALT_YES || tmp_986_default_flag == ALT_BREAK) break;
else if (tmp_986_default_flag == ALT_REPEAT) goto tmp_986;
}
current_location.update_lineno(8425);
/* BTS_Tests.ttcn, line 8425 */
if (tmp_986_alt_flag_0 == ALT_NO && tmp_986_alt_flag_1 == ALT_NO && tmp_986_alt_flag_2 == ALT_NO && tmp_986_alt_flag_3 == ALT_NO && tmp_986_alt_flag_4 == ALT_NO && tmp_986_alt_flag_5 == ALT_NO && tmp_986_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8425 and 8438.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8440);
/* BTS_Tests.ttcn, line 8440 */
RTP__Emulation::f__rtpem__mode(ConnHdlr_component_RTPEM__CTRL, RTP__Emulation::RtpemMode::RTPEM__MODE__NONE);
current_location.update_lineno(8441);
/* BTS_Tests.ttcn, line 8441 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(8442);
/* BTS_Tests.ttcn, line 8442 */
f__rsl__chan__deact();
current_location.update_lineno(8443);
/* BTS_Tests.ttcn, line 8443 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__speech__rtp(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_speech_rtp(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_speech_rtp", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__speech__rtp__tchf(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8445, TTCN_Location::LOCATION_TESTCASE, "TC_speech_rtp_tchf");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_speech_rtp_tchf", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8446);
/* BTS_Tests.ttcn, line 8446 */
COMPONENT vc__conn;
current_location.update_lineno(8447);
/* BTS_Tests.ttcn, line 8447 */
ConnHdlrPars pars;
current_location.update_lineno(8449);
/* BTS_Tests.ttcn, line 8449 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8452);
/* BTS_Tests.ttcn, line 8452 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8453);
/* BTS_Tests.ttcn, line 8453 */
vc__conn = f__start__handler(&f__TC__speech__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8454);
/* BTS_Tests.ttcn, line 8454 */
{
tmp_989:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_989;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_989;
}
current_location.update_lineno(8454);
/* BTS_Tests.ttcn, line 8454 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8454.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8457);
/* BTS_Tests.ttcn, line 8457 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM2, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8458);
/* BTS_Tests.ttcn, line 8458 */
vc__conn = f__start__handler(&f__TC__speech__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8459);
/* BTS_Tests.ttcn, line 8459 */
{
tmp_992:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_992;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_992;
}
current_location.update_lineno(8459);
/* BTS_Tests.ttcn, line 8459 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8459.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8462);
/* BTS_Tests.ttcn, line 8462 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8463);
/* BTS_Tests.ttcn, line 8463 */
pars.mr__conf() = RSL__Types::ts__RSL__MultirateCfg(RSL__Types::ts__RSL__MultirateCfg_icmi_defval, RSL__Types::ts__RSL__MultirateCfg_start__mode_defval, RSL__Types::ts__RSL__MultirateCfg_codec__modes_defval, RSL__Types::ts__RSL__MultirateCfg_params_defval).valueof();
current_location.update_lineno(8464);
/* BTS_Tests.ttcn, line 8464 */
vc__conn = f__start__handler(&f__TC__speech__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8465);
/* BTS_Tests.ttcn, line 8465 */
{
tmp_996:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_996;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_996;
}
current_location.update_lineno(8465);
/* BTS_Tests.ttcn, line 8465 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8465.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8467);
/* BTS_Tests.ttcn, line 8467 */
Misc__Helpers::f__shutdown(cs_4, 8467, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_speech_rtp_tchf was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__speech__rtp__tchh(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8469, TTCN_Location::LOCATION_TESTCASE, "TC_speech_rtp_tchh");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_speech_rtp_tchh", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8470);
/* BTS_Tests.ttcn, line 8470 */
COMPONENT vc__conn;
current_location.update_lineno(8471);
/* BTS_Tests.ttcn, line 8471 */
ConnHdlrPars pars;
current_location.update_lineno(8473);
/* BTS_Tests.ttcn, line 8473 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8476);
/* BTS_Tests.ttcn, line 8476 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8477);
/* BTS_Tests.ttcn, line 8477 */
vc__conn = f__start__handler(&f__TC__speech__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8478);
/* BTS_Tests.ttcn, line 8478 */
{
tmp_999:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_999;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_999;
}
current_location.update_lineno(8478);
/* BTS_Tests.ttcn, line 8478 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8478.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8481);
/* BTS_Tests.ttcn, line 8481 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8482);
/* BTS_Tests.ttcn, line 8482 */
pars.mr__conf() = RSL__Types::ts__RSL__MultirateCfg(RSL__Types::ts__RSL__MultirateCfg_icmi_defval, RSL__Types::ts__RSL__MultirateCfg_start__mode_defval, RSL__Types::ts__RSL__MultirateCfg_codec__modes_defval, RSL__Types::ts__RSL__MultirateCfg_params_defval).valueof();
current_location.update_lineno(8483);
/* BTS_Tests.ttcn, line 8483 */
vc__conn = f__start__handler(&f__TC__speech__rtp, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8484);
/* BTS_Tests.ttcn, line 8484 */
{
tmp_1003:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1003;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1003;
}
current_location.update_lineno(8484);
/* BTS_Tests.ttcn, line 8484 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8484.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8486);
/* BTS_Tests.ttcn, line 8486 */
Misc__Helpers::f__shutdown(cs_4, 8486, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_speech_rtp_tchh was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__speech__osmux(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8491, TTCN_Location::LOCATION_FUNCTION, "f_TC_speech_osmux");
current_location.update_lineno(8492);
/* BTS_Tests.ttcn, line 8492 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(8493);
/* BTS_Tests.ttcn, line 8493 */
OSMUX__Types::OSMUX__PDU osmux__pdu;
current_location.update_lineno(8494);
/* BTS_Tests.ttcn, line 8494 */
OCTETSTRING pl;
current_location.update_lineno(8495);
/* BTS_Tests.ttcn, line 8495 */
OCTETSTRING exp__rtp__pl;
current_location.update_lineno(8496);
/* BTS_Tests.ttcn, line 8496 */
TIMER Td("Td");
current_location.update_lineno(8496);
/* BTS_Tests.ttcn, line 8496 */
TIMER Tu("Tu");
current_location.update_lineno(8498);
/* BTS_Tests.ttcn, line 8498 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8499);
/* BTS_Tests.ttcn, line 8499 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, f__est__dchan_act__type_defval);
current_location.update_lineno(8502);
/* BTS_Tests.ttcn, line 8502 */
pl = Osmocom__Types::f__rnd__octstring(6);
current_location.update_lineno(8503);
/* BTS_Tests.ttcn, line 8503 */
f__osmuxem__activate(pl, f__osmuxem__activate_cfg_defval, f__osmuxem__activate_mode_defval);
current_location.update_lineno(8506);
/* BTS_Tests.ttcn, line 8506 */
Osmocom__Types::f__sleep(2.0);
current_location.update_lineno(8507);
/* BTS_Tests.ttcn, line 8507 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(8508);
/* BTS_Tests.ttcn, line 8508 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(8511);
/* BTS_Tests.ttcn, line 8511 */
INTEGER amr__ft(get__start__amr__ft());
current_location.update_lineno(8512);
/* BTS_Tests.ttcn, line 8512 */
INTEGER amr__pl__len(AMR__Types::f__amrft__payload__len(amr__ft));
current_location.update_lineno(8513);
/* BTS_Tests.ttcn, line 8513 */
OCTETSTRING hdr(AMR__Types::enc__RTP__AMR__Hdr(AMR__Types::ts__RTP__AMR__Hdr(INTEGER_template(amr__ft), INTEGER_template(amr__ft), BITSTRING_template(bs_1), AMR__Types::ts__RTP__AMR__Hdr_f_defval).valueof()));
current_location.update_lineno(8514);
/* BTS_Tests.ttcn, line 8514 */
pl = OSMUX__Emulation::f__osmux__gen__expected__rx__rtp__payload(amr__ft, pl);
current_location.update_lineno(8515);
/* BTS_Tests.ttcn, line 8515 */
exp__rtp__pl = (hdr + pl);
current_location.update_lineno(8518);
/* BTS_Tests.ttcn, line 8518 */
Td.start(2.0);
current_location.update_lineno(8519);
/* BTS_Tests.ttcn, line 8519 */
{
tmp_1007:
alt_status tmp_1007_alt_flag_0 = ALT_MAYBE;
alt_status tmp_1007_alt_flag_1 = ALT_MAYBE;
alt_status tmp_1007_alt_flag_2 = ALT_MAYBE;
alt_status tmp_1007_alt_flag_3 = ALT_MAYBE;
alt_status tmp_1007_alt_flag_4 = ALT_MAYBE;
alt_status tmp_1007_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_1007_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8520);
/* BTS_Tests.ttcn, line 8520 */
tmp_1007_alt_flag_0 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_link__id_defval, OCTETSTRING_template(exp__rtp__pl), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_1007_alt_flag_0 == ALT_YES) {
current_location.update_lineno(8521);
/* BTS_Tests.ttcn, line 8521 */
OCTETSTRING data(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().traffic__ind().data());
current_location.update_lineno(8522);
/* BTS_Tests.ttcn, line 8522 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("TCH received (len=");
{
INTEGER tmp_1008(data.lengthof());
tmp_1008.log();
}
TTCN_Logger::log_event_str("): ");
data.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8523);
/* BTS_Tests.ttcn, line 8523 */
ConnHdlr_component_L1CTL.send(L1CTL__Types::ts__L1CTL__TRAFFIC__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::RslLinkId_template(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).dl__info()().link__id()), data), FALSE, NULL);
current_location.update_lineno(8524);
/* BTS_Tests.ttcn, line 8524 */
TTCN_Runtime::setverdict(PASS);
break;
}
}
if (tmp_1007_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8526);
/* BTS_Tests.ttcn, line 8526 */
tmp_1007_alt_flag_1 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_link__id_defval, OCTETSTRING_template(ANY_VALUE), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_1007_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8527);
/* BTS_Tests.ttcn, line 8527 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Rx unexpected Downlink speech frame ("),const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().traffic__ind().data().log(),TTCN_Logger::log_event_str(") expected ("),exp__rtp__pl.log(),TTCN_Logger::log_char(')'),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8530);
/* BTS_Tests.ttcn, line 8530 */
Misc__Helpers::f__shutdown(cs_4, 8530, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_1007_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8532);
/* BTS_Tests.ttcn, line 8532 */
tmp_1007_alt_flag_2 = as__l1__sacch__loop_instance(first_run);
if (tmp_1007_alt_flag_2 == ALT_REPEAT) goto tmp_1007;
if (tmp_1007_alt_flag_2 == ALT_BREAK) break;
if (tmp_1007_alt_flag_2 == ALT_YES) break;
}
if (tmp_1007_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(8533);
/* BTS_Tests.ttcn, line 8533 */
tmp_1007_alt_flag_3 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_1007_alt_flag_3 == ALT_YES) {
current_location.update_lineno(8533);
/* BTS_Tests.ttcn, line 8533 */
goto tmp_1007;
}
}
if (tmp_1007_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(8534);
/* BTS_Tests.ttcn, line 8534 */
tmp_1007_alt_flag_4 = Td.timeout(NULL);
if (tmp_1007_alt_flag_4 == ALT_YES) {
current_location.update_lineno(8535);
/* BTS_Tests.ttcn, line 8535 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for Downlink speech frames"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8536);
/* BTS_Tests.ttcn, line 8536 */
Misc__Helpers::f__shutdown(cs_4, 8536, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_1007_default_flag == ALT_MAYBE) {
tmp_1007_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_1007_default_flag == ALT_YES || tmp_1007_default_flag == ALT_BREAK) break;
else if (tmp_1007_default_flag == ALT_REPEAT) goto tmp_1007;
}
current_location.update_lineno(8519);
/* BTS_Tests.ttcn, line 8519 */
if (tmp_1007_alt_flag_0 == ALT_NO && tmp_1007_alt_flag_1 == ALT_NO && tmp_1007_alt_flag_2 == ALT_NO && tmp_1007_alt_flag_3 == ALT_NO && tmp_1007_alt_flag_4 == ALT_NO && tmp_1007_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8519 and 8538.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8541);
/* BTS_Tests.ttcn, line 8541 */
ConnHdlr_component_OsmuxEM__DATA.clear();
current_location.update_lineno(8542);
/* BTS_Tests.ttcn, line 8542 */
OSMUX__Types::OSMUX__PDU_template osmux__pdu__exp(OSMUX__Types::tr__PDU__Osmux__AMR(OSMUX__Types::tr__PDU__Osmux__AMR_marker_defval, OSMUX__Types::tr__PDU__Osmux__AMR_ctr_defval, OSMUX__Types::tr__PDU__Osmux__AMR_amr__f_defval, OSMUX__Types::tr__PDU__Osmux__AMR_amr__q_defval, OSMUX__Types::tr__PDU__Osmux__AMR_seq_defval, INTEGER_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).loc__osmux__cid()), INTEGER_template(amr__ft), INTEGER_template(amr__ft), OSMUX__Types::tr__PDU__Osmux__AMR_payload_defval));
current_location.update_lineno(8545);
/* BTS_Tests.ttcn, line 8545 */
Tu.start(2.0);
current_location.update_lineno(8546);
/* BTS_Tests.ttcn, line 8546 */
{
tmp_1009:
alt_status tmp_1009_alt_flag_0 = ALT_MAYBE;
alt_status tmp_1009_alt_flag_1 = ALT_MAYBE;
alt_status tmp_1009_alt_flag_2 = ALT_MAYBE;
alt_status tmp_1009_alt_flag_3 = ALT_MAYBE;
alt_status tmp_1009_alt_flag_4 = ALT_MAYBE;
alt_status tmp_1009_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_1009_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8547);
/* BTS_Tests.ttcn, line 8547 */
tmp_1009_alt_flag_0 = as__l1__tch__loop_instance(first_run);
if (tmp_1009_alt_flag_0 == ALT_REPEAT) goto tmp_1009;
if (tmp_1009_alt_flag_0 == ALT_BREAK) break;
if (tmp_1009_alt_flag_0 == ALT_YES) break;
}
if (tmp_1009_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8548);
/* BTS_Tests.ttcn, line 8548 */
tmp_1009_alt_flag_1 = as__l1__sacch__loop_instance(first_run);
if (tmp_1009_alt_flag_1 == ALT_REPEAT) goto tmp_1009;
if (tmp_1009_alt_flag_1 == ALT_BREAK) break;
if (tmp_1009_alt_flag_1 == ALT_YES) break;
}
if (tmp_1009_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8549);
/* BTS_Tests.ttcn, line 8549 */
tmp_1009_alt_flag_2 = ConnHdlr_component_OsmuxEM__DATA.receive(osmux__pdu__exp, &(osmux__pdu), any_compref, NULL, NULL, NULL);
if (tmp_1009_alt_flag_2 == ALT_YES) {
current_location.update_lineno(8550);
/* BTS_Tests.ttcn, line 8550 */
BOOLEAN matched(FALSE);
{
current_location.update_lineno(8551);
/* BTS_Tests.ttcn, line 8551 */
INTEGER i(0);
current_location.update_lineno(8551);
/* BTS_Tests.ttcn, line 8551 */
for ( ; ; ) {
current_location.update_lineno(8551);
/* BTS_Tests.ttcn, line 8551 */
if (!(i < (const_cast< const OSMUX__Types::OSMUX__PDU&>(osmux__pdu).osmux__amr().header().ctr() + 1))) break;
current_location.update_lineno(8552);
/* BTS_Tests.ttcn, line 8552 */
OCTETSTRING rx__pl;
current_location.update_lineno(8553);
/* BTS_Tests.ttcn, line 8553 */
rx__pl = OSMUX__Types::f__osmux__amr__get__nth__amr__payload(const_cast< const OSMUX__Types::OSMUX__PDU&>(osmux__pdu).osmux__amr(), i);
current_location.update_lineno(8554);
/* BTS_Tests.ttcn, line 8554 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("got ");
rx__pl.log();
TTCN_Logger::log_event_str(" vs exp ");
pl.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8555);
/* BTS_Tests.ttcn, line 8555 */
if ((rx__pl == pl)) {
current_location.update_lineno(8556);
/* BTS_Tests.ttcn, line 8556 */
matched = TRUE;
current_location.update_lineno(8557);
/* BTS_Tests.ttcn, line 8557 */
break;
}
current_location.update_lineno(8551);
/* BTS_Tests.ttcn, line 8551 */
{
INTEGER tmp_1012;
++i;
}
}
}
current_location.update_lineno(8560);
/* BTS_Tests.ttcn, line 8560 */
if ((!(matched))) {
current_location.update_lineno(8561);
/* BTS_Tests.ttcn, line 8561 */
goto tmp_1009;
}
break;
}
}
if (tmp_1009_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(8564);
/* BTS_Tests.ttcn, line 8564 */
tmp_1009_alt_flag_3 = ConnHdlr_component_OsmuxEM__DATA.receive(any_compref, NULL, NULL, NULL);
if (tmp_1009_alt_flag_3 == ALT_YES) {
current_location.update_lineno(8564);
/* BTS_Tests.ttcn, line 8564 */
goto tmp_1009;
}
}
if (tmp_1009_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(8565);
/* BTS_Tests.ttcn, line 8565 */
tmp_1009_alt_flag_4 = Tu.timeout(NULL);
if (tmp_1009_alt_flag_4 == ALT_YES) {
current_location.update_lineno(8566);
/* BTS_Tests.ttcn, line 8566 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for Uplink speech frames"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8567);
/* BTS_Tests.ttcn, line 8567 */
Misc__Helpers::f__shutdown(cs_4, 8567, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_1009_default_flag == ALT_MAYBE) {
tmp_1009_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_1009_default_flag == ALT_YES || tmp_1009_default_flag == ALT_BREAK) break;
else if (tmp_1009_default_flag == ALT_REPEAT) goto tmp_1009;
}
current_location.update_lineno(8546);
/* BTS_Tests.ttcn, line 8546 */
if (tmp_1009_alt_flag_0 == ALT_NO && tmp_1009_alt_flag_1 == ALT_NO && tmp_1009_alt_flag_2 == ALT_NO && tmp_1009_alt_flag_3 == ALT_NO && tmp_1009_alt_flag_4 == ALT_NO && tmp_1009_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8546 and 8569.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8571);
/* BTS_Tests.ttcn, line 8571 */
OSMUX__Emulation::f__osmuxem__mode(ConnHdlr_component_OsmuxEM__CTRL, OSMUX__Emulation::OsmuxemMode::OSMUXEM__MODE__NONE);
current_location.update_lineno(8572);
/* BTS_Tests.ttcn, line 8572 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(8573);
/* BTS_Tests.ttcn, line 8573 */
f__rsl__chan__deact();
current_location.update_lineno(8574);
/* BTS_Tests.ttcn, line 8574 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__speech__osmux(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_speech_osmux(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_speech_osmux", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__speech__osmux__tchf(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8576, TTCN_Location::LOCATION_TESTCASE, "TC_speech_osmux_tchf");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_speech_osmux_tchf", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8577);
/* BTS_Tests.ttcn, line 8577 */
COMPONENT vc__conn;
current_location.update_lineno(8578);
/* BTS_Tests.ttcn, line 8578 */
ConnHdlrPars pars;
current_location.update_lineno(8580);
/* BTS_Tests.ttcn, line 8580 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8583);
/* BTS_Tests.ttcn, line 8583 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8584);
/* BTS_Tests.ttcn, line 8584 */
pars.mr__conf() = RSL__Types::ts__RSL__MultirateCfg(RSL__Types::ts__RSL__MultirateCfg_icmi_defval, RSL__Types::ts__RSL__MultirateCfg_start__mode_defval, RSL__Types::ts__RSL__MultirateCfg_codec__modes_defval, RSL__Types::ts__RSL__MultirateCfg_params_defval).valueof();
current_location.update_lineno(8585);
/* BTS_Tests.ttcn, line 8585 */
vc__conn = f__start__handler(&f__TC__speech__osmux, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8586);
/* BTS_Tests.ttcn, line 8586 */
{
tmp_1016:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1016;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1016;
}
current_location.update_lineno(8586);
/* BTS_Tests.ttcn, line 8586 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8586.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8588);
/* BTS_Tests.ttcn, line 8588 */
Misc__Helpers::f__shutdown(cs_4, 8588, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_speech_osmux_tchf was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__speech__osmux__tchh(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8590, TTCN_Location::LOCATION_TESTCASE, "TC_speech_osmux_tchh");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_speech_osmux_tchh", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8591);
/* BTS_Tests.ttcn, line 8591 */
COMPONENT vc__conn;
current_location.update_lineno(8592);
/* BTS_Tests.ttcn, line 8592 */
ConnHdlrPars pars;
current_location.update_lineno(8594);
/* BTS_Tests.ttcn, line 8594 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8597);
/* BTS_Tests.ttcn, line 8597 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM3, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8598);
/* BTS_Tests.ttcn, line 8598 */
pars.mr__conf() = RSL__Types::ts__RSL__MultirateCfg(RSL__Types::ts__RSL__MultirateCfg_icmi_defval, RSL__Types::ts__RSL__MultirateCfg_start__mode_defval, RSL__Types::ts__RSL__MultirateCfg_codec__modes_defval, RSL__Types::ts__RSL__MultirateCfg_params_defval).valueof();
current_location.update_lineno(8599);
/* BTS_Tests.ttcn, line 8599 */
vc__conn = f__start__handler(&f__TC__speech__osmux, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8600);
/* BTS_Tests.ttcn, line 8600 */
{
tmp_1020:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1020;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1020;
}
current_location.update_lineno(8600);
/* BTS_Tests.ttcn, line 8600 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8600.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8602);
/* BTS_Tests.ttcn, line 8602 */
Misc__Helpers::f__shutdown(cs_4, 8602, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_speech_osmux_tchh was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__data__rtp__loopback(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8606, TTCN_Location::LOCATION_FUNCTION, "f_TC_data_rtp_loopback");
current_location.update_lineno(8607);
/* BTS_Tests.ttcn, line 8607 */
OCTETSTRING udata(os_2);
current_location.update_lineno(8608);
/* BTS_Tests.ttcn, line 8608 */
INTEGER payload__len;
current_location.update_lineno(8609);
/* BTS_Tests.ttcn, line 8609 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(8610);
/* BTS_Tests.ttcn, line 8610 */
TIMER Td("Td");
current_location.update_lineno(8612);
/* BTS_Tests.ttcn, line 8612 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("f_TC_data_rtp_loopback(): Testing channel mode ");
const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
{
const RSL__Types::RSL__IE__ChannelMode &tmp_1022 = const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode();
current_location.update_lineno(8615);
/* BTS_Tests.ttcn, line 8615 */
{
boolean tmp_1021_0b;
{
RSL__Types::RSL__ChanModeOct6DataRate_template tmp_1023;
tmp_1023.set_type(VALUE_LIST, 2);
tmp_1023.list_item(0) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__14k4;
tmp_1023.list_item(1) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__14k5;
tmp_1021_0b = RSL__Types::tr__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), tmp_1023, RSL__Types::tr__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::tr__RSL__ChanMode__DATA_dtxu_defval).match(tmp_1022);
}
if(tmp_1021_0b) goto tmp_1021_0;
}
current_location.update_lineno(8617);
/* BTS_Tests.ttcn, line 8617 */
{
boolean tmp_1021_1b;
{
RSL__Types::RSL__ChanModeOct6DataRate_template tmp_1024;
tmp_1024.set_type(VALUE_LIST, 2);
tmp_1024.list_item(0) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__9k6;
tmp_1024.list_item(1) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__12k0;
tmp_1021_1b = RSL__Types::tr__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), tmp_1024, RSL__Types::tr__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::tr__RSL__ChanMode__DATA_dtxu_defval).match(tmp_1022);
}
if(tmp_1021_1b) goto tmp_1021_1;
}
current_location.update_lineno(8619);
/* BTS_Tests.ttcn, line 8619 */
{
boolean tmp_1021_2b;
{
RSL__Types::RSL__ChanModeOct6DataRate_template tmp_1025;
tmp_1025.set_type(VALUE_LIST, 2);
tmp_1025.list_item(0) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__4k8;
tmp_1025.list_item(1) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__6k0;
tmp_1021_2b = RSL__Types::tr__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), tmp_1025, RSL__Types::tr__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::tr__RSL__ChanMode__DATA_dtxu_defval).match(tmp_1022);
}
if(tmp_1021_2b) goto tmp_1021_2;
}
current_location.update_lineno(8621);
/* BTS_Tests.ttcn, line 8621 */
{
boolean tmp_1021_3b;
{
RSL__Types::RSL__ChanModeOct6DataRate_template tmp_1026;
tmp_1026.set_type(VALUE_LIST, 2);
tmp_1026.list_item(0) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__4k8;
tmp_1026.list_item(1) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__6k0;
tmp_1021_3b = RSL__Types::tr__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), tmp_1026, RSL__Types::tr__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::tr__RSL__ChanMode__DATA_dtxu_defval).match(tmp_1022);
}
if(tmp_1021_3b) goto tmp_1021_3;
}
current_location.update_lineno(8623);
/* BTS_Tests.ttcn, line 8623 */
{
boolean tmp_1021_4b;
{
RSL__Types::RSL__ChanModeOct6DataRate_template tmp_1027;
tmp_1027.set_type(VALUE_LIST, 4);
tmp_1027.list_item(0) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__2k4;
tmp_1027.list_item(1) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__1k2;
tmp_1027.list_item(2) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__600;
tmp_1027.list_item(3) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__1200__75;
tmp_1021_4b = RSL__Types::tr__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), tmp_1027, RSL__Types::tr__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::tr__RSL__ChanMode__DATA_dtxu_defval).match(tmp_1022);
}
if(tmp_1021_4b) goto tmp_1021_4;
}
current_location.update_lineno(8626);
/* BTS_Tests.ttcn, line 8626 */
{
boolean tmp_1021_5b;
{
RSL__Types::RSL__ChanModeOct6DataRate_template tmp_1028;
tmp_1028.set_type(VALUE_LIST, 4);
tmp_1028.list_item(0) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__2k4;
tmp_1028.list_item(1) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__1k2;
tmp_1028.list_item(2) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__600;
tmp_1028.list_item(3) = RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__1200__75;
tmp_1021_5b = RSL__Types::tr__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), tmp_1028, RSL__Types::tr__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::tr__RSL__ChanMode__DATA_dtxu_defval).match(tmp_1022);
}
if(tmp_1021_5b) goto tmp_1021_5;
}
goto tmp_1021_6;
tmp_1021_0:
{
current_location.update_lineno(8616);
/* BTS_Tests.ttcn, line 8616 */
payload__len = 290;
goto tmp_1021_end;
}
tmp_1021_1:
{
current_location.update_lineno(8618);
/* BTS_Tests.ttcn, line 8618 */
payload__len = 240;
goto tmp_1021_end;
}
tmp_1021_2:
{
current_location.update_lineno(8620);
/* BTS_Tests.ttcn, line 8620 */
payload__len = 120;
goto tmp_1021_end;
}
tmp_1021_3:
{
current_location.update_lineno(8622);
/* BTS_Tests.ttcn, line 8622 */
payload__len = 240;
goto tmp_1021_end;
}
tmp_1021_4:
{
current_location.update_lineno(8625);
/* BTS_Tests.ttcn, line 8625 */
payload__len = 72;
goto tmp_1021_end;
}
tmp_1021_5:
{
current_location.update_lineno(8628);
/* BTS_Tests.ttcn, line 8628 */
payload__len = 144;
goto tmp_1021_end;
}
tmp_1021_6:
{
current_location.update_lineno(8630);
/* BTS_Tests.ttcn, line 8630 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Unhandled RSL channel mode := "),const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode().log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8631);
/* BTS_Tests.ttcn, line 8631 */
Misc__Helpers::f__shutdown(cs_4, 8631, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
goto tmp_1021_end;
}
tmp_1021_end: /* empty */;
}
{
current_location.update_lineno(8636);
/* BTS_Tests.ttcn, line 8636 */
INTEGER i(0);
current_location.update_lineno(8636);
/* BTS_Tests.ttcn, line 8636 */
for ( ; ; ) {
current_location.update_lineno(8636);
/* BTS_Tests.ttcn, line 8636 */
if (!(i < payload__len)) break;
current_location.update_lineno(8637);
/* BTS_Tests.ttcn, line 8637 */
{
OCTETSTRING tmp_1035;
tmp_1035 = (udata + int2oct(mod(i, 2), 1));
udata = tmp_1035;
}
current_location.update_lineno(8636);
/* BTS_Tests.ttcn, line 8636 */
{
INTEGER tmp_1036;
++i;
}
}
}
current_location.update_lineno(8641);
/* BTS_Tests.ttcn, line 8641 */
f__rtpem__activate(f__rtpem__activate_cfg_defval, RTP__Emulation::RtpemMode::RTPEM__MODE__LOOPBACK, 120);
current_location.update_lineno(8644);
/* BTS_Tests.ttcn, line 8644 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8645);
/* BTS_Tests.ttcn, line 8645 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, RSL__Types::c__RSL__IE__ActType__ASS);
current_location.update_lineno(8648);
/* BTS_Tests.ttcn, line 8648 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Sending Uplink TCH (len=");
{
INTEGER tmp_1037(udata.lengthof());
tmp_1037.log();
}
TTCN_Logger::log_event_str("): ");
udata.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8649);
/* BTS_Tests.ttcn, line 8649 */
ConnHdlr_component_L1CTL.send(L1CTL__Types::ts__L1CTL__TRAFFIC__REQ(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), GSM__Types::ts__RslLinkID__DCCH(0), udata), FALSE, NULL);
current_location.update_lineno(8652);
/* BTS_Tests.ttcn, line 8652 */
Td.start(4.0);
current_location.update_lineno(8653);
/* BTS_Tests.ttcn, line 8653 */
{
tmp_1038:
alt_status tmp_1038_alt_flag_0 = ALT_MAYBE;
alt_status tmp_1038_alt_flag_1 = ALT_MAYBE;
alt_status tmp_1038_alt_flag_2 = ALT_MAYBE;
alt_status tmp_1038_alt_flag_3 = ALT_MAYBE;
alt_status tmp_1038_alt_flag_4 = ALT_MAYBE;
alt_status tmp_1038_alt_flag_5 = ALT_MAYBE;
alt_status tmp_1038_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_1038_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8654);
/* BTS_Tests.ttcn, line 8654 */
tmp_1038_alt_flag_0 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_link__id_defval, OCTETSTRING_template(udata), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval), NULL, any_compref, NULL, NULL, NULL);
if (tmp_1038_alt_flag_0 == ALT_YES) {
current_location.update_lineno(8655);
/* BTS_Tests.ttcn, line 8655 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("TCH received (len=");
{
INTEGER tmp_1039(udata.lengthof());
tmp_1039.log();
}
TTCN_Logger::log_event_str("): ");
udata.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8656);
/* BTS_Tests.ttcn, line 8656 */
TTCN_Runtime::setverdict(PASS);
current_location.update_lineno(8657);
/* BTS_Tests.ttcn, line 8657 */
Td.stop();
break;
}
}
if (tmp_1038_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8659);
/* BTS_Tests.ttcn, line 8659 */
tmp_1038_alt_flag_1 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__TRAFFIC__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__TRAFFIC__IND_link__id_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_frame_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__TRAFFIC__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_1038_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8660);
/* BTS_Tests.ttcn, line 8660 */
OCTETSTRING ddata(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().traffic__ind().data());
current_location.update_lineno(8661);
/* BTS_Tests.ttcn, line 8661 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("TCH received (len=");
{
INTEGER tmp_1040(ddata.lengthof());
tmp_1040.log();
}
TTCN_Logger::log_event_str("): ");
ddata.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8662);
/* BTS_Tests.ttcn, line 8662 */
goto tmp_1038;
}
}
if (tmp_1038_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8664);
/* BTS_Tests.ttcn, line 8664 */
tmp_1038_alt_flag_2 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), L1CTL__Types::tr__L1CTL__DATA__IND_link__id_defval, L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(l1__dl), any_compref, NULL, NULL, NULL);
if (tmp_1038_alt_flag_2 == ALT_YES) {
current_location.update_lineno(8665);
/* BTS_Tests.ttcn, line 8665 */
OCTETSTRING ddata(const_cast< const L1CTL__Types::L1ctlMessage&>(l1__dl).payload()().data__ind().payload());
current_location.update_lineno(8666);
/* BTS_Tests.ttcn, line 8666 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("FACCH received: ");
ddata.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8667);
/* BTS_Tests.ttcn, line 8667 */
goto tmp_1038;
}
}
if (tmp_1038_alt_flag_3 == ALT_MAYBE) {
current_location.update_lineno(8669);
/* BTS_Tests.ttcn, line 8669 */
tmp_1038_alt_flag_3 = as__l1__sacch__loop_instance(first_run);
if (tmp_1038_alt_flag_3 == ALT_REPEAT) goto tmp_1038;
if (tmp_1038_alt_flag_3 == ALT_BREAK) break;
if (tmp_1038_alt_flag_3 == ALT_YES) break;
}
if (tmp_1038_alt_flag_4 == ALT_MAYBE) {
current_location.update_lineno(8670);
/* BTS_Tests.ttcn, line 8670 */
tmp_1038_alt_flag_4 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_1038_alt_flag_4 == ALT_YES) {
current_location.update_lineno(8670);
/* BTS_Tests.ttcn, line 8670 */
goto tmp_1038;
}
}
if (tmp_1038_alt_flag_5 == ALT_MAYBE) {
current_location.update_lineno(8671);
/* BTS_Tests.ttcn, line 8671 */
tmp_1038_alt_flag_5 = Td.timeout(NULL);
if (tmp_1038_alt_flag_5 == ALT_YES) {
current_location.update_lineno(8672);
/* BTS_Tests.ttcn, line 8672 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for matching Downlink data frame"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8673);
/* BTS_Tests.ttcn, line 8673 */
Misc__Helpers::f__shutdown(cs_4, 8673, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
break;
}
}
if (tmp_1038_default_flag == ALT_MAYBE) {
tmp_1038_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_1038_default_flag == ALT_YES || tmp_1038_default_flag == ALT_BREAK) break;
else if (tmp_1038_default_flag == ALT_REPEAT) goto tmp_1038;
}
current_location.update_lineno(8653);
/* BTS_Tests.ttcn, line 8653 */
if (tmp_1038_alt_flag_0 == ALT_NO && tmp_1038_alt_flag_1 == ALT_NO && tmp_1038_alt_flag_2 == ALT_NO && tmp_1038_alt_flag_3 == ALT_NO && tmp_1038_alt_flag_4 == ALT_NO && tmp_1038_alt_flag_5 == ALT_NO && tmp_1038_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8653 and 8675.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8677);
/* BTS_Tests.ttcn, line 8677 */
RTP__Emulation::f__rtpem__mode(ConnHdlr_component_RTPEM__CTRL, RTP__Emulation::RtpemMode::RTPEM__MODE__NONE);
current_location.update_lineno(8678);
/* BTS_Tests.ttcn, line 8678 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(8679);
/* BTS_Tests.ttcn, line 8679 */
f__rsl__chan__deact();
current_location.update_lineno(8680);
/* BTS_Tests.ttcn, line 8680 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__data__rtp__loopback(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_data_rtp_loopback(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_data_rtp_loopback", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__data__facch(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8683, TTCN_Location::LOCATION_FUNCTION, "f_TC_data_facch");
current_location.update_lineno(8684);
/* BTS_Tests.ttcn, line 8684 */
GSM__Types::RslLinkId link__id(GSM__Types::ts__RslLinkID__DCCH(0).valueof());
current_location.update_lineno(8685);
/* BTS_Tests.ttcn, line 8685 */
L1CTL__Types::L1ctlMessage l1__dl;
current_location.update_lineno(8686);
/* BTS_Tests.ttcn, line 8686 */
TIMER Td("Td");
current_location.update_lineno(8688);
/* BTS_Tests.ttcn, line 8688 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("f_TC_data_facch(): Testing channel mode ");
const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(8691);
/* BTS_Tests.ttcn, line 8691 */
f__rtpem__activate(f__rtpem__activate_cfg_defval, RTP__Emulation::RtpemMode::RTPEM__MODE__LOOPBACK, 120);
current_location.update_lineno(8694);
/* BTS_Tests.ttcn, line 8694 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8695);
/* BTS_Tests.ttcn, line 8695 */
f__est__dchan(f__est__dchan_encr__enable_defval, f__est__dchan_more__ies_defval, RSL__Types::c__RSL__IE__ActType__ASS);
current_location.update_lineno(8698);
/* BTS_Tests.ttcn, line 8698 */
Osmocom__Types::f__sleep(5.0e-1);
current_location.update_lineno(8701);
/* BTS_Tests.ttcn, line 8701 */
f__est__rll__mo(0, link__id, os_2);
current_location.update_lineno(8703);
/* BTS_Tests.ttcn, line 8703 */
f__unitdata__mo(link__id, Osmocom__Types::f__rnd__octstring(15), f__unitdata__mo_exp__sacch_defval, f__unitdata__mo_exp__any_defval);
current_location.update_lineno(8704);
/* BTS_Tests.ttcn, line 8704 */
f__unitdata__mt(link__id, Osmocom__Types::f__rnd__octstring(15));
current_location.update_lineno(8706);
/* BTS_Tests.ttcn, line 8706 */
RTP__Emulation::f__rtpem__mode(ConnHdlr_component_RTPEM__CTRL, RTP__Emulation::RtpemMode::RTPEM__MODE__NONE);
current_location.update_lineno(8707);
/* BTS_Tests.ttcn, line 8707 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(8708);
/* BTS_Tests.ttcn, line 8708 */
f__rsl__chan__deact();
current_location.update_lineno(8709);
/* BTS_Tests.ttcn, line 8709 */
RSL__Emulation::f__rslem__unregister(0, GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__data__facch(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_data_facch(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_data_facch", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__data__rtp__tchf144(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8712, TTCN_Location::LOCATION_TESTCASE, "TC_data_rtp_tchf144");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_rtp_tchf144", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8713);
/* BTS_Tests.ttcn, line 8713 */
COMPONENT vc__conn;
current_location.update_lineno(8714);
/* BTS_Tests.ttcn, line 8714 */
ConnHdlrPars pars;
current_location.update_lineno(8716);
/* BTS_Tests.ttcn, line 8716 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8719);
/* BTS_Tests.ttcn, line 8719 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__14k4), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8721);
/* BTS_Tests.ttcn, line 8721 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8722);
/* BTS_Tests.ttcn, line 8722 */
{
tmp_1043:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1043;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1043;
}
current_location.update_lineno(8722);
/* BTS_Tests.ttcn, line 8722 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8722.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8725);
/* BTS_Tests.ttcn, line 8725 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__14k5), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8727);
/* BTS_Tests.ttcn, line 8727 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8728);
/* BTS_Tests.ttcn, line 8728 */
{
tmp_1046:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1046;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1046;
}
current_location.update_lineno(8728);
/* BTS_Tests.ttcn, line 8728 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8728.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8730);
/* BTS_Tests.ttcn, line 8730 */
Misc__Helpers::f__shutdown(cs_4, 8730, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_rtp_tchf144 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__facch__tchf144(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8732, TTCN_Location::LOCATION_TESTCASE, "TC_data_facch_tchf144");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_facch_tchf144", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8733);
/* BTS_Tests.ttcn, line 8733 */
COMPONENT vc__conn;
current_location.update_lineno(8734);
/* BTS_Tests.ttcn, line 8734 */
ConnHdlrPars pars;
current_location.update_lineno(8736);
/* BTS_Tests.ttcn, line 8736 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8739);
/* BTS_Tests.ttcn, line 8739 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__14k4), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8741);
/* BTS_Tests.ttcn, line 8741 */
vc__conn = f__start__handler(&f__TC__data__facch, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8742);
/* BTS_Tests.ttcn, line 8742 */
{
tmp_1049:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1049;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1049;
}
current_location.update_lineno(8742);
/* BTS_Tests.ttcn, line 8742 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8742.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8744);
/* BTS_Tests.ttcn, line 8744 */
Misc__Helpers::f__shutdown(cs_4, 8744, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_facch_tchf144 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__rtp__tchf96(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8747, TTCN_Location::LOCATION_TESTCASE, "TC_data_rtp_tchf96");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_rtp_tchf96", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8748);
/* BTS_Tests.ttcn, line 8748 */
COMPONENT vc__conn;
current_location.update_lineno(8749);
/* BTS_Tests.ttcn, line 8749 */
ConnHdlrPars pars;
current_location.update_lineno(8751);
/* BTS_Tests.ttcn, line 8751 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8754);
/* BTS_Tests.ttcn, line 8754 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__9k6), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8756);
/* BTS_Tests.ttcn, line 8756 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8757);
/* BTS_Tests.ttcn, line 8757 */
{
tmp_1052:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1052;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1052;
}
current_location.update_lineno(8757);
/* BTS_Tests.ttcn, line 8757 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8757.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8760);
/* BTS_Tests.ttcn, line 8760 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__12k0), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8762);
/* BTS_Tests.ttcn, line 8762 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8763);
/* BTS_Tests.ttcn, line 8763 */
{
tmp_1055:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1055;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1055;
}
current_location.update_lineno(8763);
/* BTS_Tests.ttcn, line 8763 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8763.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8765);
/* BTS_Tests.ttcn, line 8765 */
Misc__Helpers::f__shutdown(cs_4, 8765, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_rtp_tchf96 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__facch__tchf96(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8767, TTCN_Location::LOCATION_TESTCASE, "TC_data_facch_tchf96");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_facch_tchf96", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8768);
/* BTS_Tests.ttcn, line 8768 */
COMPONENT vc__conn;
current_location.update_lineno(8769);
/* BTS_Tests.ttcn, line 8769 */
ConnHdlrPars pars;
current_location.update_lineno(8771);
/* BTS_Tests.ttcn, line 8771 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8774);
/* BTS_Tests.ttcn, line 8774 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__9k6), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8776);
/* BTS_Tests.ttcn, line 8776 */
vc__conn = f__start__handler(&f__TC__data__facch, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8777);
/* BTS_Tests.ttcn, line 8777 */
{
tmp_1058:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1058;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1058;
}
current_location.update_lineno(8777);
/* BTS_Tests.ttcn, line 8777 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8777.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8779);
/* BTS_Tests.ttcn, line 8779 */
Misc__Helpers::f__shutdown(cs_4, 8779, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_facch_tchf96 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__rtp__tchf48(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8782, TTCN_Location::LOCATION_TESTCASE, "TC_data_rtp_tchf48");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_rtp_tchf48", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8783);
/* BTS_Tests.ttcn, line 8783 */
COMPONENT vc__conn;
current_location.update_lineno(8784);
/* BTS_Tests.ttcn, line 8784 */
ConnHdlrPars pars;
current_location.update_lineno(8786);
/* BTS_Tests.ttcn, line 8786 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8789);
/* BTS_Tests.ttcn, line 8789 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__4k8), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8791);
/* BTS_Tests.ttcn, line 8791 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8792);
/* BTS_Tests.ttcn, line 8792 */
{
tmp_1061:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1061;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1061;
}
current_location.update_lineno(8792);
/* BTS_Tests.ttcn, line 8792 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8792.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8795);
/* BTS_Tests.ttcn, line 8795 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__6k0), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8797);
/* BTS_Tests.ttcn, line 8797 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8798);
/* BTS_Tests.ttcn, line 8798 */
{
tmp_1064:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1064;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1064;
}
current_location.update_lineno(8798);
/* BTS_Tests.ttcn, line 8798 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8798.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8800);
/* BTS_Tests.ttcn, line 8800 */
Misc__Helpers::f__shutdown(cs_4, 8800, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_rtp_tchf48 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__facch__tchf48(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8802, TTCN_Location::LOCATION_TESTCASE, "TC_data_facch_tchf48");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_facch_tchf48", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8803);
/* BTS_Tests.ttcn, line 8803 */
COMPONENT vc__conn;
current_location.update_lineno(8804);
/* BTS_Tests.ttcn, line 8804 */
ConnHdlrPars pars;
current_location.update_lineno(8806);
/* BTS_Tests.ttcn, line 8806 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8809);
/* BTS_Tests.ttcn, line 8809 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__4k8), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8811);
/* BTS_Tests.ttcn, line 8811 */
vc__conn = f__start__handler(&f__TC__data__facch, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8812);
/* BTS_Tests.ttcn, line 8812 */
{
tmp_1067:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1067;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1067;
}
current_location.update_lineno(8812);
/* BTS_Tests.ttcn, line 8812 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8812.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8814);
/* BTS_Tests.ttcn, line 8814 */
Misc__Helpers::f__shutdown(cs_4, 8814, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_facch_tchf48 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__rtp__tchh48(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8817, TTCN_Location::LOCATION_TESTCASE, "TC_data_rtp_tchh48");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_rtp_tchh48", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8818);
/* BTS_Tests.ttcn, line 8818 */
COMPONENT vc__conn;
current_location.update_lineno(8819);
/* BTS_Tests.ttcn, line 8819 */
ConnHdlrPars pars;
current_location.update_lineno(8821);
/* BTS_Tests.ttcn, line 8821 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8824);
/* BTS_Tests.ttcn, line 8824 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__4k8), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8826);
/* BTS_Tests.ttcn, line 8826 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8827);
/* BTS_Tests.ttcn, line 8827 */
{
tmp_1070:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1070;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1070;
}
current_location.update_lineno(8827);
/* BTS_Tests.ttcn, line 8827 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8827.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8830);
/* BTS_Tests.ttcn, line 8830 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__NT__6k0), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8832);
/* BTS_Tests.ttcn, line 8832 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8833);
/* BTS_Tests.ttcn, line 8833 */
{
tmp_1073:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1073;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1073;
}
current_location.update_lineno(8833);
/* BTS_Tests.ttcn, line 8833 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8833.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8835);
/* BTS_Tests.ttcn, line 8835 */
Misc__Helpers::f__shutdown(cs_4, 8835, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_rtp_tchh48 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__facch__tchh48(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8837, TTCN_Location::LOCATION_TESTCASE, "TC_data_facch_tchh48");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_facch_tchh48", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8838);
/* BTS_Tests.ttcn, line 8838 */
COMPONENT vc__conn;
current_location.update_lineno(8839);
/* BTS_Tests.ttcn, line 8839 */
ConnHdlrPars pars;
current_location.update_lineno(8841);
/* BTS_Tests.ttcn, line 8841 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8844);
/* BTS_Tests.ttcn, line 8844 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__4k8), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8846);
/* BTS_Tests.ttcn, line 8846 */
vc__conn = f__start__handler(&f__TC__data__facch, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8847);
/* BTS_Tests.ttcn, line 8847 */
{
tmp_1076:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1076;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1076;
}
current_location.update_lineno(8847);
/* BTS_Tests.ttcn, line 8847 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8847.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8849);
/* BTS_Tests.ttcn, line 8849 */
Misc__Helpers::f__shutdown(cs_4, 8849, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_facch_tchh48 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__rtp__tchf24(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8852, TTCN_Location::LOCATION_TESTCASE, "TC_data_rtp_tchf24");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_rtp_tchf24", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8853);
/* BTS_Tests.ttcn, line 8853 */
COMPONENT vc__conn;
current_location.update_lineno(8854);
/* BTS_Tests.ttcn, line 8854 */
ConnHdlrPars pars;
current_location.update_lineno(8856);
/* BTS_Tests.ttcn, line 8856 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8859);
/* BTS_Tests.ttcn, line 8859 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__2k4), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8861);
/* BTS_Tests.ttcn, line 8861 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8862);
/* BTS_Tests.ttcn, line 8862 */
{
tmp_1079:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1079;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1079;
}
current_location.update_lineno(8862);
/* BTS_Tests.ttcn, line 8862 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8862.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8864);
/* BTS_Tests.ttcn, line 8864 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__1k2), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8866);
/* BTS_Tests.ttcn, line 8866 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8867);
/* BTS_Tests.ttcn, line 8867 */
{
tmp_1082:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1082;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1082;
}
current_location.update_lineno(8867);
/* BTS_Tests.ttcn, line 8867 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8867.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8869);
/* BTS_Tests.ttcn, line 8869 */
Misc__Helpers::f__shutdown(cs_4, 8869, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_rtp_tchf24 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__facch__tchf24(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8871, TTCN_Location::LOCATION_TESTCASE, "TC_data_facch_tchf24");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_facch_tchf24", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8872);
/* BTS_Tests.ttcn, line 8872 */
COMPONENT vc__conn;
current_location.update_lineno(8873);
/* BTS_Tests.ttcn, line 8873 */
ConnHdlrPars pars;
current_location.update_lineno(8875);
/* BTS_Tests.ttcn, line 8875 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8878);
/* BTS_Tests.ttcn, line 8878 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Bm(1), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__2k4), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8880);
/* BTS_Tests.ttcn, line 8880 */
vc__conn = f__start__handler(&f__TC__data__facch, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8881);
/* BTS_Tests.ttcn, line 8881 */
{
tmp_1085:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1085;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1085;
}
current_location.update_lineno(8881);
/* BTS_Tests.ttcn, line 8881 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8881.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8883);
/* BTS_Tests.ttcn, line 8883 */
Misc__Helpers::f__shutdown(cs_4, 8883, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_facch_tchf24 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__rtp__tchh24(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8886, TTCN_Location::LOCATION_TESTCASE, "TC_data_rtp_tchh24");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_rtp_tchh24", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8887);
/* BTS_Tests.ttcn, line 8887 */
COMPONENT vc__conn;
current_location.update_lineno(8888);
/* BTS_Tests.ttcn, line 8888 */
ConnHdlrPars pars;
current_location.update_lineno(8890);
/* BTS_Tests.ttcn, line 8890 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8893);
/* BTS_Tests.ttcn, line 8893 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__2k4), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8895);
/* BTS_Tests.ttcn, line 8895 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8896);
/* BTS_Tests.ttcn, line 8896 */
{
tmp_1088:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1088;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1088;
}
current_location.update_lineno(8896);
/* BTS_Tests.ttcn, line 8896 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8896.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8898);
/* BTS_Tests.ttcn, line 8898 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__1k2), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8900);
/* BTS_Tests.ttcn, line 8900 */
vc__conn = f__start__handler(&f__TC__data__rtp__loopback, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8901);
/* BTS_Tests.ttcn, line 8901 */
{
tmp_1091:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1091;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1091;
}
current_location.update_lineno(8901);
/* BTS_Tests.ttcn, line 8901 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8901.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8903);
/* BTS_Tests.ttcn, line 8903 */
Misc__Helpers::f__shutdown(cs_4, 8903, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_rtp_tchh24 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__data__facch__tchh24(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8905, TTCN_Location::LOCATION_TESTCASE, "TC_data_facch_tchh24");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_data_facch_tchh24", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8906);
/* BTS_Tests.ttcn, line 8906 */
COMPONENT vc__conn;
current_location.update_lineno(8907);
/* BTS_Tests.ttcn, line 8907 */
ConnHdlrPars pars;
current_location.update_lineno(8909);
/* BTS_Tests.ttcn, line 8909 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8912);
/* BTS_Tests.ttcn, line 8912 */
pars = t__Pars(GSM__Types::ts__RslChanNr__Lm(5, 0), RSL__Types::ts__RSL__ChanMode__DATA(RSL__Types::RSL__ChanRateType_template(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__H), RSL__Types::RSL__ChanModeOct6DataRate_template(RSL__Types::RSL__ChanModeOct6DataRate::RSL__CMOD__CSD__T__2k4), RSL__Types::ts__RSL__ChanMode__DATA_dtxd_defval, RSL__Types::ts__RSL__ChanMode__DATA_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8914);
/* BTS_Tests.ttcn, line 8914 */
vc__conn = f__start__handler(&f__TC__data__facch, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8915);
/* BTS_Tests.ttcn, line 8915 */
{
tmp_1094:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1094;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1094;
}
current_location.update_lineno(8915);
/* BTS_Tests.ttcn, line 8915 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8915.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8917);
/* BTS_Tests.ttcn, line 8917 */
Misc__Helpers::f__shutdown(cs_4, 8917, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_data_facch_tchh24 was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__early__immediate__assignment(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 8921, TTCN_Location::LOCATION_FUNCTION, "f_TC_early_immediate_assignment");
current_location.update_lineno(8922);
/* BTS_Tests.ttcn, line 8922 */
INTEGER fn;
current_location.update_lineno(8923);
/* BTS_Tests.ttcn, line 8923 */
GSM__RR__Types::ChannelDescription ch__desc;
current_location.update_lineno(8924);
/* BTS_Tests.ttcn, line 8924 */
INTEGER ra(23);
current_location.update_lineno(8926);
/* BTS_Tests.ttcn, line 8926 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(8927);
/* BTS_Tests.ttcn, line 8927 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(8930);
/* BTS_Tests.ttcn, line 8930 */
fn = f__rach__req__wait__chan__rqd(ra);
current_location.update_lineno(8936);
/* BTS_Tests.ttcn, line 8936 */
if (const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).fhp().enabled()) {
current_location.update_lineno(8937);
/* BTS_Tests.ttcn, line 8937 */
ch__desc = GSM__RR__Types::ts__ChanDescH1(GSM__Types::RslChannelNr_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__nr()), GSM__RR__Types::MaioHsn_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).fhp().maio__hsn()), INTEGER_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).tsc())).valueof();
}
else {
current_location.update_lineno(8939);
/* BTS_Tests.ttcn, line 8939 */
INTEGER arfcn(const_cast< const TrxPars&>(mp__trx__pars)[const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).trx__nr()].arfcn());
current_location.update_lineno(8940);
/* BTS_Tests.ttcn, line 8940 */
ch__desc = GSM__RR__Types::ts__ChanDescH0(GSM__Types::RslChannelNr_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__nr()), INTEGER_template(arfcn), INTEGER_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).tsc())).valueof();
}
current_location.update_lineno(8942);
/* BTS_Tests.ttcn, line 8942 */
GSM__RR__Types::GsmRrMessage rr__msg(GSM__RR__Types::ts__IMM__ASS(ra, fn, 0, ch__desc, const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).fhp().ma__map()).valueof());
current_location.update_lineno(8943);
/* BTS_Tests.ttcn, line 8943 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::ts__RSL__IMM__ASSIGN(GSM__RR__Types::enc__GsmRrMessage(rr__msg), RSL__Types::ts__RSL__IMM__ASSIGN_tn_defval), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL);
current_location.update_lineno(8947);
/* BTS_Tests.ttcn, line 8947 */
L1CTL__Types::L1ctlMessage dl;
current_location.update_lineno(8948);
/* BTS_Tests.ttcn, line 8948 */
GSM__RR__Types::GsmRrMessage rr;
current_location.update_lineno(8950);
/* BTS_Tests.ttcn, line 8950 */
GSM__RR__Types::GsmRrMessage_template rr__imm__ass(GSM__RR__Types::tr__IMM__ASS(INTEGER_template(ra), INTEGER_template(fn), GSM__RR__Types::tr__IMM__ASS_ta_defval, GSM__RR__Types::tr__IMM__ASS_ch__desc_defval, GSM__RR__Types::tr__IMM__ASS_ma_defval, GSM__RR__Types::tr__IMM__ASS_page__mode_defval));
current_location.update_lineno(8951);
/* BTS_Tests.ttcn, line 8951 */
rr__imm__ass.payload().imm__ass().ded__or__tbf() = ANY_VALUE;
current_location.update_lineno(8952);
/* BTS_Tests.ttcn, line 8952 */
rr__imm__ass.payload().imm__ass().pkt__chan__desc() = ANY_OR_OMIT;
current_location.update_lineno(8953);
/* BTS_Tests.ttcn, line 8953 */
rr__imm__ass.payload().imm__ass().chan__desc() = ANY_OR_OMIT;
current_location.update_lineno(8955);
/* BTS_Tests.ttcn, line 8955 */
TIMER T("T", 1.0);
current_location.update_lineno(8956);
/* BTS_Tests.ttcn, line 8956 */
T.start();
current_location.update_lineno(8957);
/* BTS_Tests.ttcn, line 8957 */
{
tmp_1101:
alt_status tmp_1101_alt_flag_0 = ALT_MAYBE;
alt_status tmp_1101_alt_flag_1 = ALT_MAYBE;
alt_status tmp_1101_alt_flag_2 = ALT_MAYBE;
alt_status tmp_1101_default_flag = ALT_MAYBE;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (tmp_1101_alt_flag_0 == ALT_MAYBE) {
current_location.update_lineno(8958);
/* BTS_Tests.ttcn, line 8958 */
tmp_1101_alt_flag_0 = ConnHdlr_component_L1CTL.receive(L1CTL__Types::tr__L1CTL__DATA__IND(GSM__Types::t__RslChanNr__PCH__AGCH(INTEGER_template(0)), L1CTL__Types::tr__L1CTL__DATA__IND_link__id_defval, L1CTL__Types::tr__L1CTL__DATA__IND_l2__data_defval, L1CTL__Types::tr__L1CTL__DATA__IND_num__biterr_defval, L1CTL__Types::tr__L1CTL__DATA__IND_fire__crc_defval), &(dl), any_compref, NULL, NULL, NULL);
if (tmp_1101_alt_flag_0 == ALT_YES) {
current_location.update_lineno(8959);
/* BTS_Tests.ttcn, line 8959 */
rr = GSM__RR__Types::dec__GsmRrMessage(const_cast< const L1CTL__Types::L1ctlMessage&>(dl).payload()().data__ind().payload());
current_location.update_lineno(8960);
/* BTS_Tests.ttcn, line 8960 */
if (rr__imm__ass.match(rr)) {
current_location.update_lineno(8961);
/* BTS_Tests.ttcn, line 8961 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Expected IMM ASS to be delayed until Chan Act ACK, but it was passed to the MS immediately"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(8962);
/* BTS_Tests.ttcn, line 8962 */
TTCN_Runtime::stop_component(MTC_COMPREF);
}
else {
current_location.update_lineno(8964);
/* BTS_Tests.ttcn, line 8964 */
goto tmp_1101;
}
}
}
if (tmp_1101_alt_flag_1 == ALT_MAYBE) {
current_location.update_lineno(8967);
/* BTS_Tests.ttcn, line 8967 */
tmp_1101_alt_flag_1 = ConnHdlr_component_L1CTL.receive(any_compref, NULL, NULL, NULL);
if (tmp_1101_alt_flag_1 == ALT_YES) {
current_location.update_lineno(8967);
/* BTS_Tests.ttcn, line 8967 */
goto tmp_1101;
}
}
if (tmp_1101_alt_flag_2 == ALT_MAYBE) {
current_location.update_lineno(8968);
/* BTS_Tests.ttcn, line 8968 */
tmp_1101_alt_flag_2 = T.timeout(NULL);
if (tmp_1101_alt_flag_2 == ALT_YES) break;
}
if (tmp_1101_default_flag == ALT_MAYBE) {
tmp_1101_default_flag = TTCN_Default::try_altsteps(first_run);
if (tmp_1101_default_flag == ALT_YES || tmp_1101_default_flag == ALT_BREAK) break;
else if (tmp_1101_default_flag == ALT_REPEAT) goto tmp_1101;
}
current_location.update_lineno(8957);
/* BTS_Tests.ttcn, line 8957 */
if (tmp_1101_alt_flag_0 == ALT_NO && tmp_1101_alt_flag_1 == ALT_NO && tmp_1101_alt_flag_2 == ALT_NO && tmp_1101_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests.ttcn between lines 8957 and 8969.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8970);
/* BTS_Tests.ttcn, line 8970 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__CHAN__ACT(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Types::RSL__IE__ChannelMode_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), RSL__Types::RSL__IE__ActivationType_template(RSL__Types::c__RSL__IE__ActType__IA)), FALSE, NULL);
current_location.update_lineno(8971);
/* BTS_Tests.ttcn, line 8971 */
{
tmp_1103:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__CHAN__ACT__ACK(GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr)), NULL, any_compref, NULL, NULL, NULL);
if (alt_flag == ALT_YES) break;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1103;
}
current_location.update_lineno(8971);
/* BTS_Tests.ttcn, line 8971 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone receive statement failed in file BTS_Tests.ttcn, line 8971.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8974);
/* BTS_Tests.ttcn, line 8974 */
L1CTL__PortType::f__L1CTL__WAIT__IMM__ASS(ConnHdlr_component_L1CTL, ra, fn);
current_location.update_lineno(8975);
/* BTS_Tests.ttcn, line 8975 */
TTCN_Runtime::setverdict(PASS);
current_location.update_lineno(8978);
/* BTS_Tests.ttcn, line 8978 */
f__rsl__chan__deact();
current_location.update_lineno(8979);
/* BTS_Tests.ttcn, line 8979 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
}

void start_f__TC__early__immediate__assignment(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_early_immediate_assignment(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_early_immediate_assignment", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__early__immediate__assignment(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 8982, TTCN_Location::LOCATION_TESTCASE, "TC_early_immediate_assignment");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_early_immediate_assignment", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(8983);
/* BTS_Tests.ttcn, line 8983 */
COMPONENT vc__conn;
current_location.update_lineno(8984);
/* BTS_Tests.ttcn, line 8984 */
ConnHdlrPars pars;
current_location.update_lineno(8986);
/* BTS_Tests.ttcn, line 8986 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(8989);
/* BTS_Tests.ttcn, line 8989 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, 0, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8990);
/* BTS_Tests.ttcn, line 8990 */
vc__conn = f__start__handler(&f__TC__early__immediate__assignment, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8991);
/* BTS_Tests.ttcn, line 8991 */
{
tmp_1106:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1106;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1106;
}
current_location.update_lineno(8991);
/* BTS_Tests.ttcn, line 8991 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8991.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8994);
/* BTS_Tests.ttcn, line 8994 */
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(0)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, 1, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(8995);
/* BTS_Tests.ttcn, line 8995 */
vc__conn = f__start__handler(&f__TC__early__immediate__assignment, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(8996);
/* BTS_Tests.ttcn, line 8996 */
{
tmp_1109:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1109;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1109;
}
current_location.update_lineno(8996);
/* BTS_Tests.ttcn, line 8996 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 8996.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(8998);
/* BTS_Tests.ttcn, line 8998 */
Misc__Helpers::f__shutdown(cs_4, 8998, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_early_immediate_assignment was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__TC__est__dchan(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 9001, TTCN_Location::LOCATION_FUNCTION, "f_TC_est_dchan");
current_location.update_lineno(9002);
/* BTS_Tests.ttcn, line 9002 */
INTEGER ra(oct2int(Osmocom__Types::f__rnd__ra__cs()));
current_location.update_lineno(9003);
/* BTS_Tests.ttcn, line 9003 */
GSM__RR__Types::ChannelDescription ch__desc;
current_location.update_lineno(9006);
/* BTS_Tests.ttcn, line 9006 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(9009);
/* BTS_Tests.ttcn, line 9009 */
INTEGER fn(f__rach__req__wait__chan__rqd(ra));
current_location.update_lineno(9012);
/* BTS_Tests.ttcn, line 9012 */
f__rsl__chan__act(RSL__Types::RSL__IE__ChannelMode(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__mode()), f__rsl__chan__act_encr__enable_defval, f__rsl__chan__act_more__ies_defval, f__rsl__chan__act_act__type_defval);
current_location.update_lineno(9015);
/* BTS_Tests.ttcn, line 9015 */
if (const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).fhp().enabled()) {
current_location.update_lineno(9016);
/* BTS_Tests.ttcn, line 9016 */
ch__desc = GSM__RR__Types::ts__ChanDescH1(GSM__Types::RslChannelNr_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__nr()), GSM__RR__Types::MaioHsn_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).fhp().maio__hsn()), INTEGER_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).tsc())).valueof();
}
else {
current_location.update_lineno(9018);
/* BTS_Tests.ttcn, line 9018 */
ch__desc = GSM__RR__Types::ts__ChanDescH0(GSM__Types::RslChannelNr_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).chan__nr()), INTEGER_template(const_cast< const TrxPars&>(mp__trx__pars)[0].arfcn()), INTEGER_template(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).tsc())).valueof();
}
current_location.update_lineno(9022);
/* BTS_Tests.ttcn, line 9022 */
GSM__RR__Types::GsmRrMessage rr__msg(GSM__RR__Types::ts__IMM__ASS(ra, fn, 0, ch__desc, const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).fhp().ma__map()).valueof());
current_location.update_lineno(9023);
/* BTS_Tests.ttcn, line 9023 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.send(RSL__Types::ts__RSL__IMM__ASSIGN(GSM__RR__Types::enc__GsmRrMessage(rr__msg), RSL__Types::ts__RSL__IMM__ASSIGN_tn_defval), FALSE, NULL);
current_location.update_lineno(9026);
/* BTS_Tests.ttcn, line 9026 */
GSM__RR__Types::ImmediateAssignment imm__ass(L1CTL__PortType::f__L1CTL__WAIT__IMM__ASS(ConnHdlr_component_L1CTL, ra, fn));
current_location.update_lineno(9029);
/* BTS_Tests.ttcn, line 9029 */
if ((!(GSM__RR__Types::ChannelDescription_template(ch__desc).match(const_cast< const GSM__RR__Types::ImmediateAssignment&>(imm__ass).chan__desc())))) {
current_location.update_lineno(9030);
/* BTS_Tests.ttcn, line 9030 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Channel Description IE does not match"),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(9031);
/* BTS_Tests.ttcn, line 9031 */
Misc__Helpers::f__shutdown(cs_4, 9031, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}
current_location.update_lineno(9035);
/* BTS_Tests.ttcn, line 9035 */
L1CTL__PortType::f__L1CTL__DM__EST__REQ__IA(ConnHdlr_component_L1CTL, imm__ass, const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).fhp().ma());
current_location.update_lineno(9038);
/* BTS_Tests.ttcn, line 9038 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(9039);
/* BTS_Tests.ttcn, line 9039 */
f__exp__sacch(TRUE);
current_location.update_lineno(9042);
/* BTS_Tests.ttcn, line 9042 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(9043);
/* BTS_Tests.ttcn, line 9043 */
f__rsl__chan__deact();
}

void start_f__TC__est__dchan(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_est_dchan(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_est_dchan", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__est__dchan(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 9045, TTCN_Location::LOCATION_TESTCASE, "TC_est_dchan");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_est_dchan", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(9046);
/* BTS_Tests.ttcn, line 9046 */
COMPONENT vc__conn;
current_location.update_lineno(9047);
/* BTS_Tests.ttcn, line 9047 */
ConnHdlrPars pars;
current_location.update_lineno(9049);
/* BTS_Tests.ttcn, line 9049 */
f__init(f__init_trx__nr_defval);
{
current_location.update_lineno(9051);
/* BTS_Tests.ttcn, line 9051 */
INTEGER i(0);
current_location.update_lineno(9051);
/* BTS_Tests.ttcn, line 9051 */
for ( ; ; ) {
current_location.update_lineno(9051);
/* BTS_Tests.ttcn, line 9051 */
if (!(i < test__CT_component_g__AllChannels.size_of())) break;
current_location.update_lineno(9052);
/* BTS_Tests.ttcn, line 9052 */
pars = t__Pars(GSM__Types::RslChannelNr_template(const_cast< const ChannelNrs&>(test__CT_component_g__AllChannels)[i]), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), t__Pars_spec_defval, t__Pars_trx__nr_defval, t__Pars_t__guard_defval).valueof();
current_location.update_lineno(9053);
/* BTS_Tests.ttcn, line 9053 */
vc__conn = f__start__handler(&f__TC__est__dchan, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(9054);
/* BTS_Tests.ttcn, line 9054 */
{
tmp_1114:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1114;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1114;
}
current_location.update_lineno(9054);
/* BTS_Tests.ttcn, line 9054 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 9054.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(9051);
/* BTS_Tests.ttcn, line 9051 */
{
INTEGER tmp_1115;
++i;
}
}
}
current_location.update_lineno(9057);
/* BTS_Tests.ttcn, line 9057 */
Misc__Helpers::f__shutdown(cs_4, 9057, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_est_dchan was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void f__rxlev__match(const GSM__Types::RslLinkId_template& link__id, const INTEGER_template& rxlev)
{
TTCN_Location current_location("BTS_Tests.ttcn", 9071, TTCN_Location::LOCATION_FUNCTION, "f_rxlev_match");
current_location.update_lineno(9074);
/* BTS_Tests.ttcn, line 9074 */
L1CTL__Types::L1ctlMessage dl(L1CTL__PortType::f__L1CTL__rx__data(ConnHdlr_component_L1CTL, GSM__Types::RslChannelNr_template(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), link__id));
current_location.update_lineno(9075);
/* BTS_Tests.ttcn, line 9075 */
if ((!(rxlev.match(const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().rx__level())))) {
current_location.update_lineno(9076);
/* BTS_Tests.ttcn, line 9076 */
TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("RxLev("),link__id.log(),TTCN_Logger::log_event_str(") := "),const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().rx__level().log(),TTCN_Logger::log_event_str(" does not match expected RxLev := "),rxlev.log(),TTCN_Logger::end_event_log2str()));
current_location.update_lineno(9078);
/* BTS_Tests.ttcn, line 9078 */
Misc__Helpers::f__shutdown(cs_4, 9078, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
}
}

void start_f__rxlev__match(const COMPONENT& component_reference, const GSM__Types::RslLinkId_template& link__id, const INTEGER_template& rxlev)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rxlev_match(");
link__id.log();
TTCN_Logger::log_event_str(", ");
rxlev.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_rxlev_match", text_buf);
link__id.encode_text(text_buf);
rxlev.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

void f__TC__acch__overpower(const CHARSTRING& )
{
TTCN_Location current_location("BTS_Tests.ttcn", 9082, TTCN_Location::LOCATION_FUNCTION, "f_TC_acch_overpower");
current_location.update_lineno(9083);
/* BTS_Tests.ttcn, line 9083 */
TopTestCase tc(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).spec()().top());
current_location.update_lineno(9084);
/* BTS_Tests.ttcn, line 9084 */
INTEGER rxlev__dcch;
current_location.update_lineno(9085);
/* BTS_Tests.ttcn, line 9085 */
L1CTL__Types::L1ctlMessage dl;
current_location.update_lineno(9088);
/* BTS_Tests.ttcn, line 9088 */
Osmocom__Types::f__sleep(6.0);
current_location.update_lineno(9090);
/* BTS_Tests.ttcn, line 9090 */
f__l1__tune(ConnHdlr_component_L1CTL, f__l1__tune_ccch__mode_defval);
current_location.update_lineno(9091);
/* BTS_Tests.ttcn, line 9091 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(9092);
/* BTS_Tests.ttcn, line 9092 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
current_location.update_lineno(9095);
/* BTS_Tests.ttcn, line 9095 */
dl = L1CTL__PortType::f__L1CTL__rx__data(ConnHdlr_component_L1CTL, GSM__Types::t__RslChanNr__BCCH(INTEGER_template(0)), L1CTL__PortType::f__L1CTL__rx__data_link__id_defval);
current_location.update_lineno(9096);
/* BTS_Tests.ttcn, line 9096 */
rxlev__dcch = (const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().rx__level() - (const_cast< const TopTestCase&>(tc).bs__power().power__level() * 2));
current_location.update_lineno(9098);
/* BTS_Tests.ttcn, line 9098 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("RxLev(BCCH) := ");
const_cast< const L1CTL__Types::L1ctlMessage&>(dl).dl__info()().rx__level().log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(9099);
/* BTS_Tests.ttcn, line 9099 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Expected RxLev(DCCH) := ");
rxlev__dcch.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(9102);
/* BTS_Tests.ttcn, line 9102 */
RSL__Types::RSL__IE__List_template ies;
ies.set_size(2);
{
RSL__Types::RSL__IE__Body_template tmp_1118;
tmp_1118.bs__power() = const_cast< const TopTestCase&>(tc).bs__power();
ies[0] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__MS__POWER, tmp_1118);
}
{
RSL__Types::RSL__IE__Body_template tmp_1119;
tmp_1119.top__acch__cap() = const_cast< const TopTestCase&>(tc).top__cap();
ies[1] = RSL__Types::t__RSL__IE(RSL__Types::RSL__IE__Type::RSL__IE__OSMO__TOP__ACCH__CAP, tmp_1119);
}
current_location.update_lineno(9114);
/* BTS_Tests.ttcn, line 9114 */
f__est__dchan(f__est__dchan_encr__enable_defval, ies.valueof(), f__est__dchan_act__type_defval);
current_location.update_lineno(9117);
/* BTS_Tests.ttcn, line 9117 */
Osmocom__Types::f__sleep(9.6e-1);
current_location.update_lineno(9118);
/* BTS_Tests.ttcn, line 9118 */
ConnHdlr_component_L1CTL.clear();
current_location.update_lineno(9119);
/* BTS_Tests.ttcn, line 9119 */
RSL__Emulation::RSL__DchanHdlr_component_RSL.clear();
{
current_location.update_lineno(9121);
/* BTS_Tests.ttcn, line 9121 */
INTEGER i(0);
current_location.update_lineno(9121);
/* BTS_Tests.ttcn, line 9121 */
for ( ; ; ) {
current_location.update_lineno(9121);
/* BTS_Tests.ttcn, line 9121 */
if (!(i < const_cast< const TopTestCase&>(tc).steps().lengthof())) break;
current_location.update_lineno(9122);
/* BTS_Tests.ttcn, line 9122 */
TopTestStep step(const_cast< const TopTestCase&>(tc).steps()[i]);
current_location.update_lineno(9123);
/* BTS_Tests.ttcn, line 9123 */
INTEGER rxlev__facch((rxlev__dcch + const_cast< const TopTestStep&>(step).overpower__facch()));
current_location.update_lineno(9124);
/* BTS_Tests.ttcn, line 9124 */
INTEGER rxlev__sacch((rxlev__dcch + const_cast< const TopTestStep&>(step).overpower__sacch()));
current_location.update_lineno(9126);
/* BTS_Tests.ttcn, line 9126 */
try {
TTCN_Logger::begin_event(TTCN_USER);
TTCN_Logger::log_event_str("Executing step[");
i.log();
TTCN_Logger::log_event_str("] := ");
step.log();
TTCN_Logger::end_event();
} catch (...) {
TTCN_Logger::finish_event();
throw;
}
current_location.update_lineno(9129);
/* BTS_Tests.ttcn, line 9129 */
{
boolean tmp_1123;
{
boolean tmp_1120 = step.is_bound();
if(tmp_1120) {
const OPTIONAL< GSM__RR__Types::MeasurementResults >& tmp_1121 = step.meas__res();
switch (tmp_1121.get_selection()) {
case OPTIONAL_UNBOUND:
tmp_1120 = FALSE;
break;
case OPTIONAL_OMIT:
tmp_1120 = FALSE;
break;
default:
{
const GSM__RR__Types::MeasurementResults& tmp_1122 = (const GSM__RR__Types::MeasurementResults&) tmp_1121;
tmp_1120 = tmp_1122.is_present();
break;}
}
}
tmp_1123 = tmp_1120;
}
if (tmp_1123) {
current_location.update_lineno(9130);
/* BTS_Tests.ttcn, line 9130 */
f__transceive__meas__rep(GSM__RR__Types::MeasurementResults_template(const_cast< const TopTestStep&>(step).meas__res()));
current_location.update_lineno(9131);
/* BTS_Tests.ttcn, line 9131 */
Osmocom__Types::f__sleep(9.6e-1);
current_location.update_lineno(9132);
/* BTS_Tests.ttcn, line 9132 */
ConnHdlr_component_L1CTL.clear();
}
}
current_location.update_lineno(9136);
/* BTS_Tests.ttcn, line 9136 */
f__rxlev__match(GSM__Types::tr__RslLinkID__DCCH(INTEGER_template(ANY_VALUE)), INTEGER_template(rxlev__facch));
current_location.update_lineno(9137);
/* BTS_Tests.ttcn, line 9137 */
f__rxlev__match(GSM__Types::tr__RslLinkID__SACCH(INTEGER_template(ANY_VALUE)), INTEGER_template(rxlev__sacch));
current_location.update_lineno(9139);
/* BTS_Tests.ttcn, line 9139 */
TTCN_Runtime::setverdict(PASS);
current_location.update_lineno(9121);
/* BTS_Tests.ttcn, line 9121 */
{
INTEGER tmp_1124;
++i;
}
}
}
current_location.update_lineno(9142);
/* BTS_Tests.ttcn, line 9142 */
f__rsl__chan__deact();
current_location.update_lineno(9143);
/* BTS_Tests.ttcn, line 9143 */
L1CTL__PortType::f__L1CTL__DM__REL__REQ(ConnHdlr_component_L1CTL, RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr);
current_location.update_lineno(9144);
/* BTS_Tests.ttcn, line 9144 */
RSL__Emulation::f__rslem__unregister(INTEGER(const_cast< const ConnHdlrPars&>(ConnHdlr_component_g__pars).trx__nr()), GSM__Types::RslChannelNr(RSL__Emulation::RSL__DchanHdlr_component_g__chan__nr), RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC);
}

void start_f__TC__acch__overpower(const COMPONENT& component_reference, const CHARSTRING& id)
{
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_acch_overpower(");
id.log();
TTCN_Logger::log_event_str(") on component ");
component_reference.log();
TTCN_Logger::log_char('.');
TTCN_Logger::end_event();
Text_Buf text_buf;
TTCN_Runtime::prepare_start_component(component_reference, "BTS_Tests", "f_TC_acch_overpower", text_buf);
id.encode_text(text_buf);
TTCN_Runtime::send_start_component(text_buf);
}

verdicttype testcase_TC__acch__overpower__rxqual__thresh(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 9146, TTCN_Location::LOCATION_TESTCASE, "TC_acch_overpower_rxqual_thresh");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_acch_overpower_rxqual_thresh", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(9147);
/* BTS_Tests.ttcn, line 9147 */
ConnHdlrPars pars;
current_location.update_lineno(9148);
/* BTS_Tests.ttcn, line 9148 */
COMPONENT vc__conn;
current_location.update_lineno(9150);
/* BTS_Tests.ttcn, line 9150 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(9153);
/* BTS_Tests.ttcn, line 9153 */
TopTestCase_template top;
top.bs__power() = RSL__Types::ts__RSL__IE__BS__Power(4, RSL__Types::ts__RSL__IE__BS__Power_epc_defval, RSL__Types::ts__RSL__IE__BS__Power_fpc_defval);
top.top__cap() = RSL__Types::ts__RSL__IE__OSMO__TopAcchCap(INTEGER_template(4), RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_rxqual_defval, RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_facch__enable_defval, RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_sacch__enable_defval);
{
TopTestCase_steps_template& tmp_1125 = top.steps();
tmp_1125.set_size(8);
{
TopTestStep_template& tmp_1126 = tmp_1125[0];
tmp_1126.meas__res() = OMIT_VALUE;
tmp_1126.overpower__sacch() = 0;
tmp_1126.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1127 = tmp_1125[1];
tmp_1127.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(7), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1127.overpower__sacch() = 4;
tmp_1127.overpower__facch() = 4;
}
{
TopTestStep_template& tmp_1128 = tmp_1125[2];
tmp_1128.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(0), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1128.overpower__sacch() = 0;
tmp_1128.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1129 = tmp_1125[3];
tmp_1129.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(1), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1129.overpower__sacch() = 0;
tmp_1129.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1130 = tmp_1125[4];
tmp_1130.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(2), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1130.overpower__sacch() = 0;
tmp_1130.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1131 = tmp_1125[5];
tmp_1131.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(4), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1131.overpower__sacch() = 4;
tmp_1131.overpower__facch() = 4;
}
{
TopTestStep_template& tmp_1132 = tmp_1125[6];
tmp_1132.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(3), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1132.overpower__sacch() = 4;
tmp_1132.overpower__facch() = 4;
}
{
TopTestStep_template& tmp_1133 = tmp_1125[7];
tmp_1133.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(2), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1133.overpower__sacch() = 0;
tmp_1133.overpower__facch() = 0;
}
}
current_location.update_lineno(9186);
/* BTS_Tests.ttcn, line 9186 */
{
TestSpecUnion_template tmp_1135;
tmp_1135.top() = top;
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(0)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), tmp_1135, 1, 3.0e1).valueof();
}
current_location.update_lineno(9189);
/* BTS_Tests.ttcn, line 9189 */
vc__conn = f__start__handler(&f__TC__acch__overpower, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(9190);
/* BTS_Tests.ttcn, line 9190 */
{
tmp_1137:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1137;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1137;
}
current_location.update_lineno(9190);
/* BTS_Tests.ttcn, line 9190 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 9190.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(9192);
/* BTS_Tests.ttcn, line 9192 */
Misc__Helpers::f__shutdown(cs_4, 9192, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_acch_overpower_rxqual_thresh was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__acch__overpower__rxqual__thresh__dtx(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 9194, TTCN_Location::LOCATION_TESTCASE, "TC_acch_overpower_rxqual_thresh_dtx");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_acch_overpower_rxqual_thresh_dtx", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(9195);
/* BTS_Tests.ttcn, line 9195 */
ConnHdlrPars pars;
current_location.update_lineno(9196);
/* BTS_Tests.ttcn, line 9196 */
COMPONENT vc__conn;
current_location.update_lineno(9198);
/* BTS_Tests.ttcn, line 9198 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(9201);
/* BTS_Tests.ttcn, line 9201 */
TopTestCase_template top;
top.bs__power() = RSL__Types::ts__RSL__IE__BS__Power(4, RSL__Types::ts__RSL__IE__BS__Power_epc_defval, RSL__Types::ts__RSL__IE__BS__Power_fpc_defval);
top.top__cap() = RSL__Types::ts__RSL__IE__OSMO__TopAcchCap(INTEGER_template(4), RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_rxqual_defval, RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_facch__enable_defval, RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_sacch__enable_defval);
{
TopTestCase_steps_template& tmp_1138 = top.steps();
tmp_1138.set_size(4);
{
TopTestStep_template& tmp_1139 = tmp_1138[0];
tmp_1139.meas__res() = OMIT_VALUE;
tmp_1139.overpower__sacch() = 0;
tmp_1139.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1140 = tmp_1138[1];
tmp_1140.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(7), INTEGER_template(7), GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, FALSE, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1140.overpower__sacch() = 0;
tmp_1140.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1141 = tmp_1138[2];
tmp_1141.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(7), INTEGER_template(0), TRUE, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1141.overpower__sacch() = 0;
tmp_1141.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1142 = tmp_1138[3];
tmp_1142.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(0), INTEGER_template(7), TRUE, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1142.overpower__sacch() = 4;
tmp_1142.overpower__facch() = 4;
}
}
current_location.update_lineno(9228);
/* BTS_Tests.ttcn, line 9228 */
{
TestSpecUnion_template tmp_1144;
tmp_1144.top() = top;
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(0)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), tmp_1144, 1, t__Pars_t__guard_defval).valueof();
}
current_location.update_lineno(9230);
/* BTS_Tests.ttcn, line 9230 */
vc__conn = f__start__handler(&f__TC__acch__overpower, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(9231);
/* BTS_Tests.ttcn, line 9231 */
{
tmp_1146:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1146;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1146;
}
current_location.update_lineno(9231);
/* BTS_Tests.ttcn, line 9231 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 9231.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(9233);
/* BTS_Tests.ttcn, line 9233 */
Misc__Helpers::f__shutdown(cs_4, 9233, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_acch_overpower_rxqual_thresh_dtx was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__acch__overpower__always__on__facch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 9235, TTCN_Location::LOCATION_TESTCASE, "TC_acch_overpower_always_on_facch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_acch_overpower_always_on_facch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(9236);
/* BTS_Tests.ttcn, line 9236 */
ConnHdlrPars pars;
current_location.update_lineno(9237);
/* BTS_Tests.ttcn, line 9237 */
COMPONENT vc__conn;
current_location.update_lineno(9239);
/* BTS_Tests.ttcn, line 9239 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(9242);
/* BTS_Tests.ttcn, line 9242 */
TopTestCase_template top;
top.bs__power() = RSL__Types::ts__RSL__IE__BS__Power(4, RSL__Types::ts__RSL__IE__BS__Power_epc_defval, RSL__Types::ts__RSL__IE__BS__Power_fpc_defval);
top.top__cap() = RSL__Types::ts__RSL__IE__OSMO__TopAcchCap(INTEGER_template(4), INTEGER_template(0), RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_facch__enable_defval, FALSE);
{
TopTestCase_steps_template& tmp_1147 = top.steps();
tmp_1147.set_size(3);
{
TopTestStep_template& tmp_1148 = tmp_1147[0];
tmp_1148.meas__res() = OMIT_VALUE;
tmp_1148.overpower__sacch() = 0;
tmp_1148.overpower__facch() = 4;
}
{
TopTestStep_template& tmp_1149 = tmp_1147[1];
tmp_1149.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(0), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1149.overpower__sacch() = 0;
tmp_1149.overpower__facch() = 4;
}
{
TopTestStep_template& tmp_1150 = tmp_1147[2];
tmp_1150.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(7), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1150.overpower__sacch() = 0;
tmp_1150.overpower__facch() = 4;
}
}
current_location.update_lineno(9260);
/* BTS_Tests.ttcn, line 9260 */
{
TestSpecUnion_template tmp_1152;
tmp_1152.top() = top;
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(0)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), tmp_1152, 1, t__Pars_t__guard_defval).valueof();
}
current_location.update_lineno(9262);
/* BTS_Tests.ttcn, line 9262 */
vc__conn = f__start__handler(&f__TC__acch__overpower, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(9263);
/* BTS_Tests.ttcn, line 9263 */
{
tmp_1154:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1154;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1154;
}
current_location.update_lineno(9263);
/* BTS_Tests.ttcn, line 9263 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 9263.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(9265);
/* BTS_Tests.ttcn, line 9265 */
Misc__Helpers::f__shutdown(cs_4, 9265, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_acch_overpower_always_on_facch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__acch__overpower__always__on__sacch(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 9267, TTCN_Location::LOCATION_TESTCASE, "TC_acch_overpower_always_on_sacch");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_acch_overpower_always_on_sacch", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(9268);
/* BTS_Tests.ttcn, line 9268 */
ConnHdlrPars pars;
current_location.update_lineno(9269);
/* BTS_Tests.ttcn, line 9269 */
COMPONENT vc__conn;
current_location.update_lineno(9271);
/* BTS_Tests.ttcn, line 9271 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(9274);
/* BTS_Tests.ttcn, line 9274 */
TopTestCase_template top;
top.bs__power() = RSL__Types::ts__RSL__IE__BS__Power(4, RSL__Types::ts__RSL__IE__BS__Power_epc_defval, RSL__Types::ts__RSL__IE__BS__Power_fpc_defval);
top.top__cap() = RSL__Types::ts__RSL__IE__OSMO__TopAcchCap(INTEGER_template(4), INTEGER_template(0), FALSE, RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_sacch__enable_defval);
{
TopTestCase_steps_template& tmp_1155 = top.steps();
tmp_1155.set_size(3);
{
TopTestStep_template& tmp_1156 = tmp_1155[0];
tmp_1156.meas__res() = OMIT_VALUE;
tmp_1156.overpower__sacch() = 4;
tmp_1156.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1157 = tmp_1155[1];
tmp_1157.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(0), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1157.overpower__sacch() = 4;
tmp_1157.overpower__facch() = 0;
}
{
TopTestStep_template& tmp_1158 = tmp_1155[2];
tmp_1158.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(7), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1158.overpower__sacch() = 4;
tmp_1158.overpower__facch() = 0;
}
}
current_location.update_lineno(9292);
/* BTS_Tests.ttcn, line 9292 */
{
TestSpecUnion_template tmp_1160;
tmp_1160.top() = top;
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(0)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), tmp_1160, 1, t__Pars_t__guard_defval).valueof();
}
current_location.update_lineno(9294);
/* BTS_Tests.ttcn, line 9294 */
vc__conn = f__start__handler(&f__TC__acch__overpower, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(9295);
/* BTS_Tests.ttcn, line 9295 */
{
tmp_1162:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1162;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1162;
}
current_location.update_lineno(9295);
/* BTS_Tests.ttcn, line 9295 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 9295.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(9297);
/* BTS_Tests.ttcn, line 9297 */
Misc__Helpers::f__shutdown(cs_4, 9297, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_acch_overpower_always_on_sacch was stopped.");
}
return TTCN_Runtime::end_testcase();
}

verdicttype testcase_TC__acch__overpower__limit(boolean has_timer, double timer_value)
{
TTCN_Runtime::check_begin_testcase(has_timer, timer_value);
TTCN_Location current_location("BTS_Tests.ttcn", 9299, TTCN_Location::LOCATION_TESTCASE, "TC_acch_overpower_limit");
try {
TTCN_Runtime::begin_testcase("BTS_Tests", "TC_acch_overpower_limit", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value);
current_location.update_lineno(9300);
/* BTS_Tests.ttcn, line 9300 */
ConnHdlrPars pars;
current_location.update_lineno(9301);
/* BTS_Tests.ttcn, line 9301 */
COMPONENT vc__conn;
current_location.update_lineno(9303);
/* BTS_Tests.ttcn, line 9303 */
f__init(f__init_trx__nr_defval);
current_location.update_lineno(9306);
/* BTS_Tests.ttcn, line 9306 */
TopTestCase_template top;
top.bs__power() = RSL__Types::ts__RSL__IE__BS__Power(1, RSL__Types::ts__RSL__IE__BS__Power_epc_defval, RSL__Types::ts__RSL__IE__BS__Power_fpc_defval);
top.top__cap() = RSL__Types::ts__RSL__IE__OSMO__TopAcchCap(INTEGER_template(4), INTEGER_template(0), RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_facch__enable_defval, RSL__Types::ts__RSL__IE__OSMO__TopAcchCap_sacch__enable_defval);
{
TopTestCase_steps_template& tmp_1163 = top.steps();
tmp_1163.set_size(3);
{
TopTestStep_template& tmp_1164 = tmp_1163[0];
tmp_1164.meas__res() = OMIT_VALUE;
tmp_1164.overpower__sacch() = 2;
tmp_1164.overpower__facch() = 2;
}
{
TopTestStep_template& tmp_1165 = tmp_1163[1];
tmp_1165.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(0), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1165.overpower__sacch() = 2;
tmp_1165.overpower__facch() = 2;
}
{
TopTestStep_template& tmp_1166 = tmp_1163[2];
tmp_1166.meas__res() = GSM__RR__Types::ts__MeasurementResults(GSM__RR__Types::ts__MeasurementResults_rxl__f_defval, GSM__RR__Types::ts__MeasurementResults_rxl__s_defval, INTEGER_template(7), GSM__RR__Types::ts__MeasurementResults_rxq__s_defval, GSM__RR__Types::ts__MeasurementResults_dtx__used_defval, GSM__RR__Types::ts__MeasurementResults_valid_defval, GSM__RR__Types::ts__MeasurementResults_reps_defval);
tmp_1166.overpower__sacch() = 2;
tmp_1166.overpower__facch() = 2;
}
}
current_location.update_lineno(9323);
/* BTS_Tests.ttcn, line 9323 */
{
TestSpecUnion_template tmp_1168;
tmp_1168.top() = top;
pars = t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(0)), RSL__Types::ts__RSL__ChanMode__SIGN(RSL__Types::ts__RSL__ChanMode__SIGN_t_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxd_defval, RSL__Types::ts__RSL__ChanMode__SIGN_dtxu_defval), tmp_1168, 1, t__Pars_t__guard_defval).valueof();
}
current_location.update_lineno(9325);
/* BTS_Tests.ttcn, line 9325 */
vc__conn = f__start__handler(&f__TC__acch__overpower, pars, f__start__handler_pcu__comp_defval, f__start__handler_trxc__comp_defval, f__start__handler_l1ctl_defval);
current_location.update_lineno(9326);
/* BTS_Tests.ttcn, line 9326 */
{
tmp_1170:
alt_status alt_flag = ALT_UNCHECKED, default_flag = ALT_UNCHECKED;
boolean first_run = TRUE;
TTCN_Snapshot::take_new(FALSE);
for ( ; ; ) {
if (alt_flag != ALT_NO) {
alt_flag = vc__conn.done(NULL, NULL);
if (alt_flag == ALT_YES) break;
else if (alt_flag == ALT_REPEAT) goto tmp_1170;
}
if (default_flag != ALT_NO) {
default_flag = TTCN_Default::try_altsteps(first_run);
if (default_flag == ALT_YES || default_flag == ALT_BREAK) break;
else if (default_flag == ALT_REPEAT) goto tmp_1170;
}
current_location.update_lineno(9326);
/* BTS_Tests.ttcn, line 9326 */
if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests.ttcn, line 9326.");
TTCN_Snapshot::take_new(TRUE);
first_run = FALSE;
}
}
current_location.update_lineno(9328);
/* BTS_Tests.ttcn, line 9328 */
Misc__Helpers::f__shutdown(cs_4, 9328, Misc__Helpers::f__shutdown_verdict_defval, Misc__Helpers::f__shutdown_text_defval);
} catch (const TC_Error& tc_error) {
} catch (const TC_End& tc_end) {
TTCN_Logger::log_str(TTCN_FUNCTION, "Test case TC_acch_overpower_limit was stopped.");
}
return TTCN_Runtime::end_testcase();
}

void module_control_part()
{
TTCN_Location current_location("BTS_Tests.ttcn", 9359, TTCN_Location::LOCATION_CONTROLPART, "BTS_Tests");
TTCN_Runtime::begin_controlpart("BTS_Tests");
TTCN_ControlPartEnder ender_("BTS_Tests");
current_location.update_lineno(9360);
/* BTS_Tests.ttcn, line 9360 */
testcase_TC__est__dchan(FALSE, 0.0);
current_location.update_lineno(9361);
/* BTS_Tests.ttcn, line 9361 */
testcase_TC__chan__act__stress(FALSE, 0.0);
current_location.update_lineno(9362);
/* BTS_Tests.ttcn, line 9362 */
testcase_TC__chan__act__react(FALSE, 0.0);
current_location.update_lineno(9363);
/* BTS_Tests.ttcn, line 9363 */
testcase_TC__chan__deact__not__active(FALSE, 0.0);
current_location.update_lineno(9364);
/* BTS_Tests.ttcn, line 9364 */
testcase_TC__chan__act__wrong__nr(FALSE, 0.0);
current_location.update_lineno(9365);
/* BTS_Tests.ttcn, line 9365 */
testcase_TC__deact__sacch(FALSE, 0.0);
current_location.update_lineno(9366);
/* BTS_Tests.ttcn, line 9366 */
testcase_TC__sacch__filling(FALSE, 0.0);
current_location.update_lineno(9367);
/* BTS_Tests.ttcn, line 9367 */
testcase_TC__sacch__info__mod(FALSE, 0.0);
current_location.update_lineno(9368);
/* BTS_Tests.ttcn, line 9368 */
testcase_TC__sacch__multi(FALSE, 0.0);
current_location.update_lineno(9369);
/* BTS_Tests.ttcn, line 9369 */
testcase_TC__sacch__multi__chg(FALSE, 0.0);
current_location.update_lineno(9370);
/* BTS_Tests.ttcn, line 9370 */
testcase_TC__sacch__chan__act(FALSE, 0.0);
current_location.update_lineno(9371);
/* BTS_Tests.ttcn, line 9371 */
testcase_TC__sacch__chan__act__ho__async(FALSE, 0.0);
current_location.update_lineno(9372);
/* BTS_Tests.ttcn, line 9372 */
testcase_TC__sacch__chan__act__ho__sync(FALSE, 0.0);
current_location.update_lineno(9373);
/* BTS_Tests.ttcn, line 9373 */
testcase_TC__rach__content(FALSE, 0.0);
current_location.update_lineno(9374);
/* BTS_Tests.ttcn, line 9374 */
testcase_TC__rach__content__emerg(FALSE, 0.0);
current_location.update_lineno(9375);
/* BTS_Tests.ttcn, line 9375 */
testcase_TC__rach__count(FALSE, 0.0);
current_location.update_lineno(9376);
/* BTS_Tests.ttcn, line 9376 */
testcase_TC__rach__max__ta(FALSE, 0.0);
current_location.update_lineno(9377);
/* BTS_Tests.ttcn, line 9377 */
testcase_TC__ho__rach(FALSE, 0.0);
current_location.update_lineno(9378);
/* BTS_Tests.ttcn, line 9378 */
testcase_TC__ho__physical__info(FALSE, 0.0);
current_location.update_lineno(9379);
/* BTS_Tests.ttcn, line 9379 */
testcase_TC__rach__load__idle__thresh0(FALSE, 0.0);
current_location.update_lineno(9380);
/* BTS_Tests.ttcn, line 9380 */
testcase_TC__rach__load__idle__below__thresh(FALSE, 0.0);
current_location.update_lineno(9381);
/* BTS_Tests.ttcn, line 9381 */
testcase_TC__rach__load__count(FALSE, 0.0);
current_location.update_lineno(9382);
/* BTS_Tests.ttcn, line 9382 */
testcase_TC__meas__res__speech__tchf(FALSE, 0.0);
current_location.update_lineno(9383);
/* BTS_Tests.ttcn, line 9383 */
testcase_TC__meas__res__speech__tchf__facch(FALSE, 0.0);
current_location.update_lineno(9384);
/* BTS_Tests.ttcn, line 9384 */
testcase_TC__meas__res__speech__tchh(FALSE, 0.0);
current_location.update_lineno(9385);
/* BTS_Tests.ttcn, line 9385 */
testcase_TC__meas__res__speech__tchh__facch(FALSE, 0.0);
current_location.update_lineno(9386);
/* BTS_Tests.ttcn, line 9386 */
testcase_TC__meas__res__speech__tchh__toa256(FALSE, 0.0);
current_location.update_lineno(9387);
/* BTS_Tests.ttcn, line 9387 */
testcase_TC__meas__res__sign__tchf(FALSE, 0.0);
current_location.update_lineno(9388);
/* BTS_Tests.ttcn, line 9388 */
testcase_TC__meas__res__sign__tchh(FALSE, 0.0);
current_location.update_lineno(9389);
/* BTS_Tests.ttcn, line 9389 */
testcase_TC__meas__res__sign__sdcch4(FALSE, 0.0);
current_location.update_lineno(9390);
/* BTS_Tests.ttcn, line 9390 */
testcase_TC__meas__res__sign__sdcch8(FALSE, 0.0);
current_location.update_lineno(9391);
/* BTS_Tests.ttcn, line 9391 */
testcase_TC__meas__res__sign__tchh__toa256(FALSE, 0.0);
current_location.update_lineno(9392);
/* BTS_Tests.ttcn, line 9392 */
testcase_TC__meas__res__speech__tchf__sapi3(FALSE, 0.0);
current_location.update_lineno(9393);
/* BTS_Tests.ttcn, line 9393 */
testcase_TC__meas__res__speech__tchh__sapi3(FALSE, 0.0);
current_location.update_lineno(9394);
/* BTS_Tests.ttcn, line 9394 */
testcase_TC__tx__power__start__ramp__up__bcch(FALSE, 0.0);
current_location.update_lineno(9395);
/* BTS_Tests.ttcn, line 9395 */
testcase_TC__tx__power__down__bcch(FALSE, 0.0);
current_location.update_lineno(9396);
/* BTS_Tests.ttcn, line 9396 */
testcase_TC__tx__power__ramp__adm__state__change(FALSE, 0.0);
current_location.update_lineno(9397);
/* BTS_Tests.ttcn, line 9397 */
testcase_TC__rsl__bs__pwr__static__ass(FALSE, 0.0);
current_location.update_lineno(9398);
/* BTS_Tests.ttcn, line 9398 */
testcase_TC__rsl__bs__pwr__static__power__control(FALSE, 0.0);
current_location.update_lineno(9399);
/* BTS_Tests.ttcn, line 9399 */
testcase_TC__rsl__ms__pwr__ctrl(FALSE, 0.0);
current_location.update_lineno(9400);
/* BTS_Tests.ttcn, line 9400 */
testcase_TC__rsl__ms__pwr__dyn__active(FALSE, 0.0);
current_location.update_lineno(9401);
/* BTS_Tests.ttcn, line 9401 */
testcase_TC__rsl__ms__pwr__dyn__active2(FALSE, 0.0);
current_location.update_lineno(9402);
/* BTS_Tests.ttcn, line 9402 */
testcase_TC__rsl__ms__pwr__dyn__up(FALSE, 0.0);
current_location.update_lineno(9403);
/* BTS_Tests.ttcn, line 9403 */
testcase_TC__rsl__ms__pwr__dyn__down(FALSE, 0.0);
current_location.update_lineno(9404);
/* BTS_Tests.ttcn, line 9404 */
testcase_TC__rsl__ms__pwr__dyn__ass__updown(FALSE, 0.0);
current_location.update_lineno(9405);
/* BTS_Tests.ttcn, line 9405 */
testcase_TC__rsl__ms__pwr__dyn__max(FALSE, 0.0);
current_location.update_lineno(9406);
/* BTS_Tests.ttcn, line 9406 */
testcase_TC__rsl__chan__initial__ms__pwr(FALSE, 0.0);
current_location.update_lineno(9407);
/* BTS_Tests.ttcn, line 9407 */
testcase_TC__rsl__chan__initial__ta(FALSE, 0.0);
current_location.update_lineno(9408);
/* BTS_Tests.ttcn, line 9408 */
testcase_TC__rsl__modify__encr(FALSE, 0.0);
current_location.update_lineno(9409);
/* BTS_Tests.ttcn, line 9409 */
testcase_TC__rsl__rf__resource__ind(FALSE, 0.0);
current_location.update_lineno(9410);
/* BTS_Tests.ttcn, line 9410 */
testcase_TC__conn__fail__crit(FALSE, 0.0);
current_location.update_lineno(9411);
/* BTS_Tests.ttcn, line 9411 */
testcase_TC__paging__imsi__80percent(FALSE, 0.0);
current_location.update_lineno(9412);
/* BTS_Tests.ttcn, line 9412 */
testcase_TC__paging__tmsi__80percent(FALSE, 0.0);
current_location.update_lineno(9413);
/* BTS_Tests.ttcn, line 9413 */
testcase_TC__paging__imsi__200percent(FALSE, 0.0);
current_location.update_lineno(9414);
/* BTS_Tests.ttcn, line 9414 */
testcase_TC__paging__tmsi__200percent(FALSE, 0.0);
current_location.update_lineno(9415);
/* BTS_Tests.ttcn, line 9415 */
testcase_TC__rsl__protocol__error(FALSE, 0.0);
current_location.update_lineno(9416);
/* BTS_Tests.ttcn, line 9416 */
testcase_TC__rsl__mand__ie__error(FALSE, 0.0);
current_location.update_lineno(9417);
/* BTS_Tests.ttcn, line 9417 */
testcase_TC__rsl__ie__content__error(FALSE, 0.0);
current_location.update_lineno(9418);
/* BTS_Tests.ttcn, line 9418 */
testcase_TC__si__sched__default(FALSE, 0.0);
current_location.update_lineno(9419);
/* BTS_Tests.ttcn, line 9419 */
testcase_TC__si__sched__1(FALSE, 0.0);
current_location.update_lineno(9420);
/* BTS_Tests.ttcn, line 9420 */
testcase_TC__si__sched__2bis(FALSE, 0.0);
current_location.update_lineno(9421);
/* BTS_Tests.ttcn, line 9421 */
testcase_TC__si__sched__2ter(FALSE, 0.0);
current_location.update_lineno(9422);
/* BTS_Tests.ttcn, line 9422 */
testcase_TC__si__sched__2ter__2bis(FALSE, 0.0);
current_location.update_lineno(9423);
/* BTS_Tests.ttcn, line 9423 */
testcase_TC__si__sched__2quater(FALSE, 0.0);
current_location.update_lineno(9424);
/* BTS_Tests.ttcn, line 9424 */
testcase_TC__si__sched__13(FALSE, 0.0);
current_location.update_lineno(9425);
/* BTS_Tests.ttcn, line 9425 */
testcase_TC__si__sched__13__2bis__2ter__2quater(FALSE, 0.0);
current_location.update_lineno(9426);
/* BTS_Tests.ttcn, line 9426 */
testcase_TC__ipa__dlcx__not__active(FALSE, 0.0);
current_location.update_lineno(9427);
/* BTS_Tests.ttcn, line 9427 */
testcase_TC__ipa__crcx__twice__not__active(FALSE, 0.0);
current_location.update_lineno(9428);
/* BTS_Tests.ttcn, line 9428 */
testcase_TC__ipa__crcx__mdcx__dlcx__not__active(FALSE, 0.0);
current_location.update_lineno(9429);
/* BTS_Tests.ttcn, line 9429 */
testcase_TC__ipa__crcx__mdcx__mdcx__dlcx__not__active(FALSE, 0.0);
current_location.update_lineno(9430);
/* BTS_Tests.ttcn, line 9430 */
testcase_TC__ipa__crcx__sdcch__not__active(FALSE, 0.0);
current_location.update_lineno(9431);
/* BTS_Tests.ttcn, line 9431 */
testcase_TC__ipa__crcx__ack__addr(FALSE, 0.0);
current_location.update_lineno(9433);
/* BTS_Tests.ttcn, line 9433 */
if ((mp__pcu__socket != cs_9)) {
current_location.update_lineno(9434);
/* BTS_Tests.ttcn, line 9434 */
testcase_TC__paging__imsi__200percent__with__ps(FALSE, 0.0);
current_location.update_lineno(9435);
/* BTS_Tests.ttcn, line 9435 */
testcase_TC__pcu__act__req(FALSE, 0.0);
current_location.update_lineno(9436);
/* BTS_Tests.ttcn, line 9436 */
testcase_TC__pcu__act__req__wrong__ts(FALSE, 0.0);
current_location.update_lineno(9437);
/* BTS_Tests.ttcn, line 9437 */
testcase_TC__pcu__act__req__wrong__bts(FALSE, 0.0);
current_location.update_lineno(9438);
/* BTS_Tests.ttcn, line 9438 */
testcase_TC__pcu__act__req__wrong__trx(FALSE, 0.0);
current_location.update_lineno(9439);
/* BTS_Tests.ttcn, line 9439 */
testcase_TC__pcu__deact__req(FALSE, 0.0);
current_location.update_lineno(9440);
/* BTS_Tests.ttcn, line 9440 */
testcase_TC__pcu__deact__req__wrong__ts(FALSE, 0.0);
current_location.update_lineno(9441);
/* BTS_Tests.ttcn, line 9441 */
testcase_TC__pcu__ver__si1(FALSE, 0.0);
current_location.update_lineno(9442);
/* BTS_Tests.ttcn, line 9442 */
testcase_TC__pcu__ver__si3(FALSE, 0.0);
current_location.update_lineno(9443);
/* BTS_Tests.ttcn, line 9443 */
testcase_TC__pcu__ver__si13(FALSE, 0.0);
current_location.update_lineno(9444);
/* BTS_Tests.ttcn, line 9444 */
if (mp__l1__supports__gprs) {
current_location.update_lineno(9445);
/* BTS_Tests.ttcn, line 9445 */
testcase_TC__pcu__data__req__pdtch(FALSE, 0.0);
current_location.update_lineno(9446);
/* BTS_Tests.ttcn, line 9446 */
testcase_TC__pcu__data__req__ptcch(FALSE, 0.0);
current_location.update_lineno(9447);
/* BTS_Tests.ttcn, line 9447 */
testcase_TC__pcu__data__req__wrong__bts(FALSE, 0.0);
current_location.update_lineno(9448);
/* BTS_Tests.ttcn, line 9448 */
testcase_TC__pcu__data__req__wrong__trx(FALSE, 0.0);
current_location.update_lineno(9449);
/* BTS_Tests.ttcn, line 9449 */
testcase_TC__pcu__data__req__wrong__ts(FALSE, 0.0);
current_location.update_lineno(9450);
/* BTS_Tests.ttcn, line 9450 */
testcase_TC__pcu__data__req__ts__inactive(FALSE, 0.0);
}
current_location.update_lineno(9452);
/* BTS_Tests.ttcn, line 9452 */
testcase_TC__pcu__ptcch(FALSE, 0.0);
current_location.update_lineno(9453);
/* BTS_Tests.ttcn, line 9453 */
testcase_TC__pcu__data__req__agch(FALSE, 0.0);
current_location.update_lineno(9454);
/* BTS_Tests.ttcn, line 9454 */
testcase_TC__pcu__data__req__pch(FALSE, 0.0);
current_location.update_lineno(9455);
/* BTS_Tests.ttcn, line 9455 */
testcase_TC__pcu__data__req__imm__ass__pch(FALSE, 0.0);
current_location.update_lineno(9456);
/* BTS_Tests.ttcn, line 9456 */
testcase_TC__pcu__data__req__imm__ass__agch(FALSE, 0.0);
current_location.update_lineno(9457);
/* BTS_Tests.ttcn, line 9457 */
testcase_TC__pcu__rach__content(FALSE, 0.0);
current_location.update_lineno(9458);
/* BTS_Tests.ttcn, line 9458 */
testcase_TC__pcu__ext__rach__content(FALSE, 0.0);
current_location.update_lineno(9459);
/* BTS_Tests.ttcn, line 9459 */
testcase_TC__pcu__data__ind__lqual__cb(FALSE, 0.0);
current_location.update_lineno(9460);
/* BTS_Tests.ttcn, line 9460 */
testcase_TC__pcu__paging__from__rsl(FALSE, 0.0);
current_location.update_lineno(9461);
/* BTS_Tests.ttcn, line 9461 */
testcase_TC__pcu__time__ind(FALSE, 0.0);
current_location.update_lineno(9462);
/* BTS_Tests.ttcn, line 9462 */
testcase_TC__pcu__rts__req(FALSE, 0.0);
current_location.update_lineno(9463);
/* BTS_Tests.ttcn, line 9463 */
testcase_TC__pcu__oml__alert(FALSE, 0.0);
current_location.update_lineno(9464);
/* BTS_Tests.ttcn, line 9464 */
testcase_TC__pcu__rr__suspend(FALSE, 0.0);
current_location.update_lineno(9465);
/* BTS_Tests.ttcn, line 9465 */
testcase_TC__pcu__socket__connect__multi(FALSE, 0.0);
current_location.update_lineno(9466);
/* BTS_Tests.ttcn, line 9466 */
testcase_TC__pcu__socket__reconnect(FALSE, 0.0);
current_location.update_lineno(9467);
/* BTS_Tests.ttcn, line 9467 */
testcase_TC__pcu__socket__noconnect__nosi3gprs(FALSE, 0.0);
current_location.update_lineno(9468);
/* BTS_Tests.ttcn, line 9468 */
testcase_TC__pcu__socket__noconnect__nosi4gprs(FALSE, 0.0);
current_location.update_lineno(9469);
/* BTS_Tests.ttcn, line 9469 */
testcase_TC__pcu__socket__connect__si3gprs(FALSE, 0.0);
current_location.update_lineno(9470);
/* BTS_Tests.ttcn, line 9470 */
testcase_TC__pcu__socket__connect__si4gprs(FALSE, 0.0);
current_location.update_lineno(9471);
/* BTS_Tests.ttcn, line 9471 */
testcase_TC__pcu__socket__disconnect__nosi3gprs(FALSE, 0.0);
current_location.update_lineno(9472);
/* BTS_Tests.ttcn, line 9472 */
testcase_TC__pcu__socket__disconnect__nosi4gprs(FALSE, 0.0);
current_location.update_lineno(9473);
/* BTS_Tests.ttcn, line 9473 */
testcase_TC__pcu__socket__verify__info__ind(FALSE, 0.0);
current_location.update_lineno(9474);
/* BTS_Tests.ttcn, line 9474 */
testcase_TC__dyn__osmo__pdch__act__deact(FALSE, 0.0);
current_location.update_lineno(9475);
/* BTS_Tests.ttcn, line 9475 */
testcase_TC__dyn__osmo__pdch__double__act(FALSE, 0.0);
current_location.update_lineno(9476);
/* BTS_Tests.ttcn, line 9476 */
testcase_TC__dyn__ipa__pdch__act__deact(FALSE, 0.0);
current_location.update_lineno(9477);
/* BTS_Tests.ttcn, line 9477 */
testcase_TC__dyn__ipa__pdch__act__tchf__act__nack(FALSE, 0.0);
current_location.update_lineno(9478);
/* BTS_Tests.ttcn, line 9478 */
testcase_TC__pcu__info__ind__fh__params(FALSE, 0.0);
current_location.update_lineno(9479);
/* BTS_Tests.ttcn, line 9479 */
testcase_TC__pcu__socket__nsvc__ipv4(FALSE, 0.0);
current_location.update_lineno(9480);
/* BTS_Tests.ttcn, line 9480 */
testcase_TC__pcu__socket__nsvc__ipv6(FALSE, 0.0);
current_location.update_lineno(9481);
/* BTS_Tests.ttcn, line 9481 */
testcase_TC__pcu__socket__two__nsvc(FALSE, 0.0);
current_location.update_lineno(9482);
/* BTS_Tests.ttcn, line 9482 */
testcase_TC__pcu__interf__ind(FALSE, 0.0);
}
else {
current_location.update_lineno(9484);
/* BTS_Tests.ttcn, line 9484 */
TTCN_Logger::log_str(TTCN_USER, "PCU socket path not available, skipping PCU tests");
}
current_location.update_lineno(9487);
/* BTS_Tests.ttcn, line 9487 */
testcase_TC__dyn__osmo__pdch__unsol__deact(FALSE, 0.0);
current_location.update_lineno(9488);
/* BTS_Tests.ttcn, line 9488 */
testcase_TC__dyn__osmo__pdch__tchf__act(FALSE, 0.0);
current_location.update_lineno(9489);
/* BTS_Tests.ttcn, line 9489 */
testcase_TC__dyn__osmo__pdch__tchh__act(FALSE, 0.0);
current_location.update_lineno(9490);
/* BTS_Tests.ttcn, line 9490 */
testcase_TC__dyn__osmo__pdch__sdcch8__act(FALSE, 0.0);
current_location.update_lineno(9491);
/* BTS_Tests.ttcn, line 9491 */
testcase_TC__dyn__osmo__pdch__tchh__race__act(FALSE, 0.0);
current_location.update_lineno(9492);
/* BTS_Tests.ttcn, line 9492 */
testcase_TC__dyn__osmo__pdch__sdcch8__race__act(FALSE, 0.0);
current_location.update_lineno(9493);
/* BTS_Tests.ttcn, line 9493 */
testcase_TC__dyn__ipa__pdch__tchf__act(FALSE, 0.0);
current_location.update_lineno(9494);
/* BTS_Tests.ttcn, line 9494 */
testcase_TC__dyn__ipa__pdch__tchf__act__pdch__act__nack(FALSE, 0.0);
current_location.update_lineno(9496);
/* BTS_Tests.ttcn, line 9496 */
testcase_TC__rll__est__ind(FALSE, 0.0);
current_location.update_lineno(9497);
/* BTS_Tests.ttcn, line 9497 */
testcase_TC__rll__est__req__DCCH__3(FALSE, 0.0);
current_location.update_lineno(9498);
/* BTS_Tests.ttcn, line 9498 */
testcase_TC__rll__est__req__ACCH__3(FALSE, 0.0);
current_location.update_lineno(9499);
/* BTS_Tests.ttcn, line 9499 */
testcase_TC__rll__rel__ind__DCCH__0(FALSE, 0.0);
current_location.update_lineno(9500);
/* BTS_Tests.ttcn, line 9500 */
testcase_TC__rll__rel__ind__DCCH__3(FALSE, 0.0);
current_location.update_lineno(9501);
/* BTS_Tests.ttcn, line 9501 */
testcase_TC__rll__rel__ind__ACCH__0(FALSE, 0.0);
current_location.update_lineno(9502);
/* BTS_Tests.ttcn, line 9502 */
testcase_TC__rll__rel__ind__ACCH__3(FALSE, 0.0);
current_location.update_lineno(9503);
/* BTS_Tests.ttcn, line 9503 */
testcase_TC__rll__rel__req(FALSE, 0.0);
current_location.update_lineno(9504);
/* BTS_Tests.ttcn, line 9504 */
testcase_TC__rll__unit__data__req__DCCH(FALSE, 0.0);
current_location.update_lineno(9505);
/* BTS_Tests.ttcn, line 9505 */
testcase_TC__rll__unit__data__req__ACCH(FALSE, 0.0);
current_location.update_lineno(9506);
/* BTS_Tests.ttcn, line 9506 */
testcase_TC__rll__unit__data__ind__DCCH(FALSE, 0.0);
current_location.update_lineno(9507);
/* BTS_Tests.ttcn, line 9507 */
testcase_TC__rll__unit__data__ind__ACCH(FALSE, 0.0);
current_location.update_lineno(9509);
/* BTS_Tests.ttcn, line 9509 */
testcase_TC__chan__act__a51(FALSE, 0.0);
current_location.update_lineno(9510);
/* BTS_Tests.ttcn, line 9510 */
testcase_TC__chan__act__a52(FALSE, 0.0);
current_location.update_lineno(9511);
/* BTS_Tests.ttcn, line 9511 */
testcase_TC__chan__act__a53(FALSE, 0.0);
current_location.update_lineno(9512);
/* BTS_Tests.ttcn, line 9512 */
testcase_TC__chan__act__a54(FALSE, 0.0);
current_location.update_lineno(9513);
/* BTS_Tests.ttcn, line 9513 */
testcase_TC__encr__cmd__a51(FALSE, 0.0);
current_location.update_lineno(9514);
/* BTS_Tests.ttcn, line 9514 */
testcase_TC__encr__cmd__a52(FALSE, 0.0);
current_location.update_lineno(9515);
/* BTS_Tests.ttcn, line 9515 */
testcase_TC__encr__cmd__a53(FALSE, 0.0);
current_location.update_lineno(9516);
/* BTS_Tests.ttcn, line 9516 */
testcase_TC__encr__cmd__a54(FALSE, 0.0);
current_location.update_lineno(9518);
/* BTS_Tests.ttcn, line 9518 */
testcase_TC__err__rep__wrong__mdisc(FALSE, 0.0);
current_location.update_lineno(9519);
/* BTS_Tests.ttcn, line 9519 */
testcase_TC__err__rep__wrong__msg__type(FALSE, 0.0);
current_location.update_lineno(9520);
/* BTS_Tests.ttcn, line 9520 */
testcase_TC__err__rep__wrong__sequence(FALSE, 0.0);
current_location.update_lineno(9522);
/* BTS_Tests.ttcn, line 9522 */
testcase_TC__lapdm__selftest(FALSE, 0.0);
current_location.update_lineno(9524);
/* BTS_Tests.ttcn, line 9524 */
testcase_TC__tch__sign__l2__fill__frame(FALSE, 0.0);
current_location.update_lineno(9525);
/* BTS_Tests.ttcn, line 9525 */
testcase_TC__tch__sign__l2__fill__frame__dtxd(FALSE, 0.0);
current_location.update_lineno(9527);
/* BTS_Tests.ttcn, line 9527 */
testcase_TC__chopped__ipa__ping(FALSE, 0.0);
current_location.update_lineno(9528);
/* BTS_Tests.ttcn, line 9528 */
testcase_TC__chopped__ipa__payload(FALSE, 0.0);
current_location.update_lineno(9530);
/* BTS_Tests.ttcn, line 9530 */
testcase_TC__ms__pwr__ctrl__constant(FALSE, 0.0);
current_location.update_lineno(9531);
/* BTS_Tests.ttcn, line 9531 */
testcase_TC__ms__pwr__ctrl__pf__ewma(FALSE, 0.0);
current_location.update_lineno(9533);
/* BTS_Tests.ttcn, line 9533 */
testcase_TC__speech__no__rtp__tchf(FALSE, 0.0);
current_location.update_lineno(9534);
/* BTS_Tests.ttcn, line 9534 */
testcase_TC__speech__no__rtp__tchh(FALSE, 0.0);
current_location.update_lineno(9535);
/* BTS_Tests.ttcn, line 9535 */
testcase_TC__speech__rtp__tchf(FALSE, 0.0);
current_location.update_lineno(9536);
/* BTS_Tests.ttcn, line 9536 */
testcase_TC__speech__rtp__tchh(FALSE, 0.0);
current_location.update_lineno(9537);
/* BTS_Tests.ttcn, line 9537 */
testcase_TC__speech__osmux__tchf(FALSE, 0.0);
current_location.update_lineno(9538);
/* BTS_Tests.ttcn, line 9538 */
testcase_TC__speech__osmux__tchh(FALSE, 0.0);
current_location.update_lineno(9540);
/* BTS_Tests.ttcn, line 9540 */
testcase_TC__data__rtp__tchf144(FALSE, 0.0);
current_location.update_lineno(9541);
/* BTS_Tests.ttcn, line 9541 */
testcase_TC__data__rtp__tchf96(FALSE, 0.0);
current_location.update_lineno(9542);
/* BTS_Tests.ttcn, line 9542 */
testcase_TC__data__rtp__tchf48(FALSE, 0.0);
current_location.update_lineno(9543);
/* BTS_Tests.ttcn, line 9543 */
testcase_TC__data__rtp__tchh48(FALSE, 0.0);
current_location.update_lineno(9544);
/* BTS_Tests.ttcn, line 9544 */
testcase_TC__data__rtp__tchf24(FALSE, 0.0);
current_location.update_lineno(9545);
/* BTS_Tests.ttcn, line 9545 */
testcase_TC__data__rtp__tchh24(FALSE, 0.0);
current_location.update_lineno(9547);
/* BTS_Tests.ttcn, line 9547 */
testcase_TC__data__facch__tchf144(FALSE, 0.0);
current_location.update_lineno(9548);
/* BTS_Tests.ttcn, line 9548 */
testcase_TC__data__facch__tchf96(FALSE, 0.0);
current_location.update_lineno(9549);
/* BTS_Tests.ttcn, line 9549 */
testcase_TC__data__facch__tchf48(FALSE, 0.0);
current_location.update_lineno(9550);
/* BTS_Tests.ttcn, line 9550 */
testcase_TC__data__facch__tchh48(FALSE, 0.0);
current_location.update_lineno(9551);
/* BTS_Tests.ttcn, line 9551 */
testcase_TC__data__facch__tchf24(FALSE, 0.0);
current_location.update_lineno(9552);
/* BTS_Tests.ttcn, line 9552 */
testcase_TC__data__facch__tchh24(FALSE, 0.0);
current_location.update_lineno(9554);
/* BTS_Tests.ttcn, line 9554 */
testcase_TC__early__immediate__assignment(FALSE, 0.0);
current_location.update_lineno(9556);
/* BTS_Tests.ttcn, line 9556 */
testcase_TC__acch__overpower__rxqual__thresh(FALSE, 0.0);
current_location.update_lineno(9557);
/* BTS_Tests.ttcn, line 9557 */
testcase_TC__acch__overpower__rxqual__thresh__dtx(FALSE, 0.0);
current_location.update_lineno(9558);
/* BTS_Tests.ttcn, line 9558 */
testcase_TC__acch__overpower__always__on__facch(FALSE, 0.0);
current_location.update_lineno(9559);
/* BTS_Tests.ttcn, line 9559 */
testcase_TC__acch__overpower__always__on__sacch(FALSE, 0.0);
current_location.update_lineno(9560);
/* BTS_Tests.ttcn, line 9560 */
testcase_TC__acch__overpower__limit(FALSE, 0.0);
}


/* Bodies of static functions */

void pre_init_module()
{
TTCN_Location current_location("BTS_Tests.ttcn", 0, TTCN_Location::LOCATION_UNKNOWN, "BTS_Tests");
GSM__SystemInformation::module_object.pre_init_module();
LAPDm__RAW__PT::module_object.pre_init_module();
Osmocom__CTRL__Adapter::module_object.pre_init_module();
IPA__Testing::module_object.pre_init_module();
RSL__Emulation::module_object.pre_init_module();
RTP__Emulation::module_object.pre_init_module();
OSMUX__Emulation::module_object.pre_init_module();
TRXC__CodecPort__CtrlFunct::module_object.pre_init_module();
PCUIF__CodecPort::module_object.pre_init_module();
L3__Common::module_object.pre_init_module();
Osmocom__VTY__Functions::module_object.pre_init_module();
BTS__Tests__LAPDm::module_object.pre_init_module();
current_location.update_lineno(97);
/* BTS_Tests.ttcn, line 97 */
modulepar_mp__rsl__ip = cs_0;
module_object.add_modulepar("mp_rsl_ip");
current_location.update_lineno(98);
/* BTS_Tests.ttcn, line 98 */
modulepar_mp__rsl__port = 3003;
module_object.add_modulepar("mp_rsl_port");
current_location.update_lineno(99);
/* BTS_Tests.ttcn, line 99 */
modulepar_mp__bts__trxc__ip = cs_1;
module_object.add_modulepar("mp_bts_trxc_ip");
current_location.update_lineno(100);
/* BTS_Tests.ttcn, line 100 */
modulepar_mp__bts__trxc__port = 5701;
module_object.add_modulepar("mp_bts_trxc_port");
current_location.update_lineno(101);
/* BTS_Tests.ttcn, line 101 */
modulepar_mp__pcu__socket = PCUIF__Types::PCU__SOCK__DEFAULT;
module_object.add_modulepar("mp_pcu_socket");
current_location.update_lineno(102);
/* BTS_Tests.ttcn, line 102 */
modulepar_mp__ctrl__ip = cs_1;
module_object.add_modulepar("mp_ctrl_ip");
current_location.update_lineno(103);
/* BTS_Tests.ttcn, line 103 */
modulepar_mp__ctrl__port = 4238;
module_object.add_modulepar("mp_ctrl_port");
current_location.update_lineno(104);
/* BTS_Tests.ttcn, line 104 */
modulepar_mp__bsc__ctrl__ip = cs_1;
module_object.add_modulepar("mp_bsc_ctrl_ip");
current_location.update_lineno(105);
/* BTS_Tests.ttcn, line 105 */
modulepar_mp__bsc__ctrl__port = 4249;
module_object.add_modulepar("mp_bsc_ctrl_port");
current_location.update_lineno(106);
/* BTS_Tests.ttcn, line 106 */
modulepar_mp__rtpem__bind__ip = cs_1;
module_object.add_modulepar("mp_rtpem_bind_ip");
current_location.update_lineno(107);
/* BTS_Tests.ttcn, line 107 */
modulepar_mp__rtpem__bind__port = 6766;
module_object.add_modulepar("mp_rtpem_bind_port");
current_location.update_lineno(108);
/* BTS_Tests.ttcn, line 108 */
modulepar_mp__osmuxem__bind__ip = cs_1;
module_object.add_modulepar("mp_osmuxem_bind_ip");
current_location.update_lineno(109);
/* BTS_Tests.ttcn, line 109 */
modulepar_mp__osmuxem__bind__port = 1984;
module_object.add_modulepar("mp_osmuxem_bind_port");
current_location.update_lineno(110);
/* BTS_Tests.ttcn, line 110 */
modulepar_mp__tolerance__rxqual = 1;
module_object.add_modulepar("mp_tolerance_rxqual");
current_location.update_lineno(111);
/* BTS_Tests.ttcn, line 111 */
modulepar_mp__tolerance__rxlev = 3;
module_object.add_modulepar("mp_tolerance_rxlev");
current_location.update_lineno(112);
/* BTS_Tests.ttcn, line 112 */
modulepar_mp__tolerance__timing__offset__256syms = 0;
module_object.add_modulepar("mp_tolerance_timing_offset_256syms");
current_location.update_lineno(113);
/* BTS_Tests.ttcn, line 113 */
modulepar_mp__rxlev__exp = 57;
module_object.add_modulepar("mp_rxlev_exp");
current_location.update_lineno(114);
/* BTS_Tests.ttcn, line 114 */
modulepar_mp__ul__rxlev__exp = 10;
module_object.add_modulepar("mp_ul_rxlev_exp");
current_location.update_lineno(115);
/* BTS_Tests.ttcn, line 115 */
modulepar_mp__ms__power__level__exp = 7;
module_object.add_modulepar("mp_ms_power_level_exp");
current_location.update_lineno(116);
/* BTS_Tests.ttcn, line 116 */
modulepar_mp__bts__tx__nom__pwr__exp = 50;
module_object.add_modulepar("mp_bts_tx_nom_pwr_exp");
current_location.update_lineno(117);
/* BTS_Tests.ttcn, line 117 */
modulepar_mp__bts__tx__pwr__att__exp = 20;
module_object.add_modulepar("mp_bts_tx_pwr_att_exp");
current_location.update_lineno(118);
/* BTS_Tests.ttcn, line 118 */
modulepar_mp__ms__actual__ta__exp = 0;
module_object.add_modulepar("mp_ms_actual_ta_exp");
current_location.update_lineno(119);
/* BTS_Tests.ttcn, line 119 */
modulepar_mp__timing__offset__256syms__exp = 512;
module_object.add_modulepar("mp_timing_offset_256syms_exp");
current_location.update_lineno(120);
/* BTS_Tests.ttcn, line 120 */
modulepar_mp__uplink__power__target = -75;
module_object.add_modulepar("mp_uplink_power_target");
current_location.update_lineno(121);
/* BTS_Tests.ttcn, line 121 */
modulepar_mp__uplink__power__hysteresis = 8;
module_object.add_modulepar("mp_uplink_power_hysteresis");
current_location.update_lineno(123);
/* BTS_Tests.ttcn, line 123 */
modulepar_mp__ipa__up__timeout = 1.5e1;
module_object.add_modulepar("mp_ipa_up_timeout");
current_location.update_lineno(124);
/* BTS_Tests.ttcn, line 124 */
modulepar_mp__ipa__up__delay = 0.0;
module_object.add_modulepar("mp_ipa_up_delay");
current_location.update_lineno(126);
/* BTS_Tests.ttcn, line 126 */
modulepar_mp__l1__supports__gprs = FALSE;
module_object.add_modulepar("mp_l1_supports_gprs");
current_location.update_lineno(128);
/* BTS_Tests.ttcn, line 128 */
modulepar_mp__transceiver__num = 1;
module_object.add_modulepar("mp_transceiver_num");
current_location.update_lineno(130);
/* BTS_Tests.ttcn, line 130 */
modulepar_mp__freq__hop__enabled = FALSE;
module_object.add_modulepar("mp_freq_hop_enabled");
module_object.add_modulepar("mp_fh_config");
module_object.add_modulepar("mp_trx_pars");
current_location.update_lineno(136);
/* BTS_Tests.ttcn, line 136 */
modulepar_mp__tsc__def = 7;
module_object.add_modulepar("mp_tsc_def");
current_location.update_lineno(147);
/* BTS_Tests.ttcn, line 147 */
modulepar_mp__interf__band = 2;
module_object.add_modulepar("mp_interf_band");
current_location.update_lineno(149);
/* BTS_Tests.ttcn, line 149 */
modulepar_mp__ho__t3105__ms = 100;
module_object.add_modulepar("mp_ho_t3105_ms");
current_location.update_lineno(151);
/* BTS_Tests.ttcn, line 151 */
modulepar_mp__ho__ny1 = 10;
module_object.add_modulepar("mp_ho_ny1");
module_object.add_function("f_init_rsl", (genericfunc_t)&f__init__rsl, (genericfunc_t)&start_f__init__rsl);
module_object.add_function("f_rsl_bcch_fill_raw", (genericfunc_t)&f__rsl__bcch__fill__raw, (genericfunc_t)&start_f__rsl__bcch__fill__raw);
module_object.add_function("f_rsl_bcch_fill", (genericfunc_t)&f__rsl__bcch__fill, (genericfunc_t)&start_f__rsl__bcch__fill);
module_object.add_function("f_init_vty", (genericfunc_t)&f__init__vty, (genericfunc_t)&start_f__init__vty);
module_object.add_function("f_init_vty_bsc", (genericfunc_t)&f__init__vty__bsc, (genericfunc_t)&start_f__init__vty__bsc);
module_object.add_function("f_connhdlr_init_vty_bsc", (genericfunc_t)&f__connhdlr__init__vty__bsc, (genericfunc_t)&start_f__connhdlr__init__vty__bsc);
module_object.add_altstep("as_pcu_info_ind", (genericfunc_t)&as__pcu__info__ind_instance, (genericfunc_t )&activate_as__pcu__info__ind, (genericfunc_t )&as__pcu__info__ind);
module_object.add_function("f_init_pcu", (genericfunc_t)&f__init__pcu, NULL);
module_object.add_function("f_init_trxc", (genericfunc_t)&f__init__trxc, NULL);
module_object.add_function("f_gen_chans_for_ts", (genericfunc_t)&f__gen__chans__for__ts, NULL);
module_object.add_function("f_init", (genericfunc_t)&f__init, (genericfunc_t)&start_f__init);
module_object.add_function("f_init_l1ctl", (genericfunc_t)&f__init__l1ctl, (genericfunc_t)&start_f__init__l1ctl);
module_object.add_function("f_resolve_fh_params", (genericfunc_t)&f__resolve__fh__params, NULL);
module_object.add_function("f_start_handler", (genericfunc_t)&f__start__handler, (genericfunc_t)&start_f__start__handler);
module_object.add_altstep("as_Tguard", (genericfunc_t)&as__Tguard_instance, (genericfunc_t )&activate_as__Tguard, (genericfunc_t )&as__Tguard);
module_object.add_function("f_l1_tune", (genericfunc_t)&f__l1__tune, NULL);
module_object.add_function("f_trxc_fake_rssi", (genericfunc_t)&f__trxc__fake__rssi, (genericfunc_t)&start_f__trxc__fake__rssi);
module_object.add_function("f_trxc_fake_toffs256", (genericfunc_t)&f__trxc__fake__toffs256, (genericfunc_t)&start_f__trxc__fake__toffs256);
module_object.add_function("f_handler_init", (genericfunc_t)&f__handler__init, (genericfunc_t)&start_f__handler__init);
module_object.add_function("f_rsl_transceive_ret", (genericfunc_t)&f__rsl__transceive__ret, (genericfunc_t)&start_f__rsl__transceive__ret);
module_object.add_function("f_rsl_transceive", (genericfunc_t)&f__rsl__transceive, (genericfunc_t)&start_f__rsl__transceive);
module_object.add_function("f_send_meas_rep", (genericfunc_t)&f__send__meas__rep, (genericfunc_t)&start_f__send__meas__rep);
module_object.add_function("f_send_meas_rep_l1h", (genericfunc_t)&f__send__meas__rep__l1h, (genericfunc_t)&start_f__send__meas__rep__l1h);
module_object.add_function("f_transceive_meas_rep", (genericfunc_t)&f__transceive__meas__rep, (genericfunc_t)&start_f__transceive__meas__rep);
module_object.add_function("f_rsl_chan_act", (genericfunc_t)&f__rsl__chan__act, (genericfunc_t)&start_f__rsl__chan__act);
module_object.add_function("f_rsl_chan_deact", (genericfunc_t)&f__rsl__chan__deact, (genericfunc_t)&start_f__rsl__chan__deact);
module_object.add_altstep("as_l1ctl_dl_msg", (genericfunc_t)&as__l1ctl__dl__msg_instance, (genericfunc_t )&activate_as__l1ctl__dl__msg, (genericfunc_t )&as__l1ctl__dl__msg);
module_object.add_altstep("as_dl_lapdm_dummy", (genericfunc_t)&as__dl__lapdm__dummy_instance, (genericfunc_t )&activate_as__dl__lapdm__dummy, (genericfunc_t )&as__dl__lapdm__dummy);
module_object.add_altstep("as_dl_dcch_lapdm_ab", (genericfunc_t)&as__dl__dcch__lapdm__ab_instance, (genericfunc_t )&activate_as__dl__dcch__lapdm__ab, (genericfunc_t )&as__dl__dcch__lapdm__ab);
module_object.add_altstep("as_dl_sacch_lapdm_ab", (genericfunc_t)&as__dl__sacch__lapdm__ab_instance, (genericfunc_t )&activate_as__dl__sacch__lapdm__ab, (genericfunc_t )&as__dl__sacch__lapdm__ab);
module_object.add_altstep("as_dl_dcch_pdu", (genericfunc_t)&as__dl__dcch__pdu_instance, (genericfunc_t )&activate_as__dl__dcch__pdu, (genericfunc_t )&as__dl__dcch__pdu);
module_object.add_function("f_TC_chan_act_stress", (genericfunc_t)&f__TC__chan__act__stress, (genericfunc_t)&start_f__TC__chan__act__stress);
module_object.add_testcase_nonpard("TC_chan_act_stress", testcase_TC__chan__act__stress);
module_object.add_function("f_TC_chan_act_react", (genericfunc_t)&f__TC__chan__act__react, (genericfunc_t)&start_f__TC__chan__act__react);
module_object.add_testcase_nonpard("TC_chan_act_react", testcase_TC__chan__act__react);
module_object.add_function("f_TC_chan_deact_not_active", (genericfunc_t)&f__TC__chan__deact__not__active, (genericfunc_t)&start_f__TC__chan__deact__not__active);
module_object.add_testcase_nonpard("TC_chan_deact_not_active", testcase_TC__chan__deact__not__active);
module_object.add_function("f_TC_chan_act_wrong_nr", (genericfunc_t)&f__TC__chan__act__wrong__nr, (genericfunc_t)&start_f__TC__chan__act__wrong__nr);
module_object.add_testcase_nonpard("TC_chan_act_wrong_nr", testcase_TC__chan__act__wrong__nr);
module_object.add_function("f_testmatrix_each_chan", (genericfunc_t)&f__testmatrix__each__chan, (genericfunc_t)&start_f__testmatrix__each__chan);
module_object.add_function("f_exp_sacch", (genericfunc_t)&f__exp__sacch, (genericfunc_t)&start_f__exp__sacch);
module_object.add_function("f_TC_deact_sacch", (genericfunc_t)&f__TC__deact__sacch, (genericfunc_t)&start_f__TC__deact__sacch);
module_object.add_testcase_nonpard("TC_deact_sacch", testcase_TC__deact__sacch);
module_object.add_function("f_sacch_present", (genericfunc_t)&f__sacch__present, (genericfunc_t)&start_f__sacch__present);
module_object.add_function("f_sacch_missing", (genericfunc_t)&f__sacch__missing, (genericfunc_t)&start_f__sacch__missing);
module_object.add_function("f_TC_sacch_filling", (genericfunc_t)&f__TC__sacch__filling, (genericfunc_t)&start_f__TC__sacch__filling);
module_object.add_testcase_nonpard("TC_sacch_filling", testcase_TC__sacch__filling);
module_object.add_function("f_TC_sacch_info_mod", (genericfunc_t)&f__TC__sacch__info__mod, (genericfunc_t)&start_f__TC__sacch__info__mod);
module_object.add_testcase_nonpard("TC_sacch_info_mod", testcase_TC__sacch__info__mod);
module_object.add_function("f_TC_sacch_multi", (genericfunc_t)&f__TC__sacch__multi, (genericfunc_t)&start_f__TC__sacch__multi);
module_object.add_testcase_nonpard("TC_sacch_multi", testcase_TC__sacch__multi);
module_object.add_function("f_TC_sacch_multi_chg", (genericfunc_t)&f__TC__sacch__multi__chg, (genericfunc_t)&start_f__TC__sacch__multi__chg);
module_object.add_testcase_nonpard("TC_sacch_multi_chg", testcase_TC__sacch__multi__chg);
module_object.add_function("f_TC_sacch_chan_act", (genericfunc_t)&f__TC__sacch__chan__act, (genericfunc_t)&start_f__TC__sacch__chan__act);
module_object.add_testcase_nonpard("TC_sacch_chan_act", testcase_TC__sacch__chan__act);
module_object.add_function("f_TC_sacch_chan_act_ho_async", (genericfunc_t)&f__TC__sacch__chan__act__ho__async, (genericfunc_t)&start_f__TC__sacch__chan__act__ho__async);
module_object.add_testcase_nonpard("TC_sacch_chan_act_ho_async", testcase_TC__sacch__chan__act__ho__async);
module_object.add_function("f_TC_sacch_chan_act_ho_sync", (genericfunc_t)&f__TC__sacch__chan__act__ho__sync, (genericfunc_t)&start_f__TC__sacch__chan__act__ho__sync);
module_object.add_testcase_nonpard("TC_sacch_chan_act_ho_sync", testcase_TC__sacch__chan__act__ho__sync);
module_object.add_function("f_TC_rach_content", (genericfunc_t)&f__TC__rach__content, (genericfunc_t)&start_f__TC__rach__content);
module_object.add_testcase_nonpard("TC_rach_content", testcase_TC__rach__content);
module_object.add_testcase_nonpard("TC_rach_content_emerg", testcase_TC__rach__content__emerg);
module_object.add_testcase_nonpard("TC_rach_count", testcase_TC__rach__count);
module_object.add_function("f_vty_load_ind_thresh", (genericfunc_t)&f__vty__load__ind__thresh, (genericfunc_t)&start_f__vty__load__ind__thresh);
module_object.add_testcase_nonpard("TC_rach_load_idle_thresh0", testcase_TC__rach__load__idle__thresh0);
module_object.add_testcase_nonpard("TC_rach_load_idle_below_thresh", testcase_TC__rach__load__idle__below__thresh);
module_object.add_testcase_nonpard("TC_rach_load_count", testcase_TC__rach__load__count);
module_object.add_function("f_rach_toffs", (genericfunc_t)&f__rach__toffs, (genericfunc_t)&start_f__rach__toffs);
module_object.add_testcase_nonpard("TC_rach_max_ta", testcase_TC__rach__max__ta);
module_object.add_function("f_TC_ho_rach", (genericfunc_t)&f__TC__ho__rach, (genericfunc_t)&start_f__TC__ho__rach);
module_object.add_testcase_nonpard("TC_ho_rach", testcase_TC__ho__rach);
module_object.add_function("f_TC_ho_physical_info", (genericfunc_t)&f__TC__ho__physical__info, (genericfunc_t)&start_f__TC__ho__physical__info);
module_object.add_testcase_nonpard("TC_ho_physical_info", testcase_TC__ho__physical__info);
module_object.add_altstep("as_l1_sacch_loop", (genericfunc_t)&as__l1__sacch__loop_instance, (genericfunc_t )&activate_as__l1__sacch__loop, (genericfunc_t )&as__l1__sacch__loop);
module_object.add_altstep("as_l1_sacch_l1h", (genericfunc_t)&as__l1__sacch__l1h_instance, (genericfunc_t )&activate_as__l1__sacch__l1h, (genericfunc_t )&as__l1__sacch__l1h);
module_object.add_altstep("as_l1_dcch_loop", (genericfunc_t)&as__l1__dcch__loop_instance, (genericfunc_t )&activate_as__l1__dcch__loop, (genericfunc_t )&as__l1__dcch__loop);
module_object.add_altstep("as_l1_tch_loop", (genericfunc_t)&as__l1__tch__loop_instance, (genericfunc_t )&activate_as__l1__tch__loop, (genericfunc_t )&as__l1__tch__loop);
module_object.add_function("toffs256s_to_rsl", (genericfunc_t)&toffs256s__to__rsl, NULL);
module_object.add_function("f_max", (genericfunc_t)&f__max, NULL);
module_object.add_function("f_min", (genericfunc_t)&f__min, NULL);
module_object.add_function("f_tolerance_neg", (genericfunc_t)&f__tolerance__neg, NULL);
module_object.add_function("f_tolerance_pos", (genericfunc_t)&f__tolerance__pos, NULL);
module_object.add_function("f_tolerance", (genericfunc_t)&f__tolerance, NULL);
module_object.add_function("f_build_meas_res_tmpl", (genericfunc_t)&f__build__meas__res__tmpl, (genericfunc_t)&start_f__build__meas__res__tmpl);
module_object.add_function("f_build_meas_res_tmpl_empty", (genericfunc_t)&f__build__meas__res__tmpl__empty, (genericfunc_t)&start_f__build__meas__res__tmpl__empty);
module_object.add_altstep("as_meas_res", (genericfunc_t)&as__meas__res_instance, (genericfunc_t )&activate_as__meas__res, (genericfunc_t )&as__meas__res);
module_object.add_function("f_alg_id_to_l1ctl", (genericfunc_t)&f__alg__id__to__l1ctl, NULL);
module_object.add_function("f_alg_id_to_l3", (genericfunc_t)&f__alg__id__to__l3, NULL);
module_object.add_function("f_rach_req_wait_chan_rqd", (genericfunc_t)&f__rach__req__wait__chan__rqd, (genericfunc_t)&start_f__rach__req__wait__chan__rqd);
module_object.add_function("f_l1ctl_est_dchan", (genericfunc_t)&f__l1ctl__est__dchan, NULL);
module_object.add_function("f_est_dchan", (genericfunc_t)&f__est__dchan, (genericfunc_t)&start_f__est__dchan);
module_object.add_function("get_start_amr_ft", (genericfunc_t)&get__start__amr__ft, (genericfunc_t)&start_get__start__amr__ft);
module_object.add_function("f_rtpem_activate", (genericfunc_t)&f__rtpem__activate, (genericfunc_t)&start_f__rtpem__activate);
module_object.add_function("f_osmuxem_activate", (genericfunc_t)&f__osmuxem__activate, (genericfunc_t)&start_f__osmuxem__activate);
module_object.add_function("f_TC_meas_res_periodic", (genericfunc_t)&f__TC__meas__res__periodic, (genericfunc_t)&start_f__TC__meas__res__periodic);
module_object.add_function("f_wait_ramp_up", (genericfunc_t)&f__wait__ramp__up, (genericfunc_t)&start_f__wait__ramp__up);
module_object.add_function("f_verify_ramp_up", (genericfunc_t)&f__verify__ramp__up, (genericfunc_t)&start_f__verify__ramp__up);
module_object.add_function("f_verify_ramp_down", (genericfunc_t)&f__verify__ramp__down, (genericfunc_t)&start_f__verify__ramp__down);
module_object.add_function("f_verify_power_down", (genericfunc_t)&f__verify__power__down, (genericfunc_t)&start_f__verify__power__down);
module_object.add_function("f_TC_tx_power_start_ramp_up_bcch", (genericfunc_t)&f__TC__tx__power__start__ramp__up__bcch, (genericfunc_t)&start_f__TC__tx__power__start__ramp__up__bcch);
module_object.add_testcase_nonpard("TC_tx_power_start_ramp_up_bcch", testcase_TC__tx__power__start__ramp__up__bcch);
module_object.add_function("f_TC_tx_power_down_bcch", (genericfunc_t)&f__TC__tx__power__down__bcch, (genericfunc_t)&start_f__TC__tx__power__down__bcch);
module_object.add_testcase_nonpard("TC_tx_power_down_bcch", testcase_TC__tx__power__down__bcch);
module_object.add_function("f_TC_tx_power_ramp_adm_state_change", (genericfunc_t)&f__TC__tx__power__ramp__adm__state__change, (genericfunc_t)&start_f__TC__tx__power__ramp__adm__state__change);
module_object.add_testcase_nonpard("TC_tx_power_ramp_adm_state_change", testcase_TC__tx__power__ramp__adm__state__change);
module_object.add_function("f_check_meas_bs_power_level", (genericfunc_t)&f__check__meas__bs__power__level, (genericfunc_t)&start_f__check__meas__bs__power__level);
module_object.add_function("f_TC_rsl_bs_pwr_static_ass", (genericfunc_t)&f__TC__rsl__bs__pwr__static__ass, (genericfunc_t)&start_f__TC__rsl__bs__pwr__static__ass);
module_object.add_function("f_TC_rsl_bs_pwr_static_power_control", (genericfunc_t)&f__TC__rsl__bs__pwr__static__power__control, (genericfunc_t)&start_f__TC__rsl__bs__pwr__static__power__control);
module_object.add_testcase_nonpard("TC_rsl_bs_pwr_static_ass", testcase_TC__rsl__bs__pwr__static__ass);
module_object.add_testcase_nonpard("TC_rsl_bs_pwr_static_power_control", testcase_TC__rsl__bs__pwr__static__power__control);
module_object.add_function("f_TC_rsl_ms_pwr_dyn_ass_updown", (genericfunc_t)&f__TC__rsl__ms__pwr__dyn__ass__updown, (genericfunc_t)&start_f__TC__rsl__ms__pwr__dyn__ass__updown);
module_object.add_function("f_TC_rsl_ms_pwr_dyn_max", (genericfunc_t)&f__TC__rsl__ms__pwr__dyn__max, (genericfunc_t)&start_f__TC__rsl__ms__pwr__dyn__max);
module_object.add_function("f_TC_rsl_ms_pwr_dyn_up", (genericfunc_t)&f__TC__rsl__ms__pwr__dyn__up, (genericfunc_t)&start_f__TC__rsl__ms__pwr__dyn__up);
module_object.add_function("f_TC_rsl_ms_pwr_dyn_down", (genericfunc_t)&f__TC__rsl__ms__pwr__dyn__down, (genericfunc_t)&start_f__TC__rsl__ms__pwr__dyn__down);
module_object.add_function("f_TC_rsl_ms_pwr_dyn_active", (genericfunc_t)&f__TC__rsl__ms__pwr__dyn__active, (genericfunc_t)&start_f__TC__rsl__ms__pwr__dyn__active);
module_object.add_function("f_TC_rsl_ms_pwr_dyn_active2", (genericfunc_t)&f__TC__rsl__ms__pwr__dyn__active2, (genericfunc_t)&start_f__TC__rsl__ms__pwr__dyn__active2);
module_object.add_function("f_wait_for_l1_power_level", (genericfunc_t)&f__wait__for__l1__power__level, (genericfunc_t)&start_f__wait__for__l1__power__level);
module_object.add_function("f_power_level_is_lowest_dbm", (genericfunc_t)&f__power__level__is__lowest__dbm, (genericfunc_t)&start_f__power__level__is__lowest__dbm);
module_object.add_function("f_power_level_is_highest_dbm", (genericfunc_t)&f__power__level__is__highest__dbm, (genericfunc_t)&start_f__power__level__is__highest__dbm);
module_object.add_function("f_get_max_power_from_band", (genericfunc_t)&f__get__max__power__from__band, (genericfunc_t)&start_f__get__max__power__from__band);
module_object.add_function("f_power_from_band", (genericfunc_t)&f__power__from__band, NULL);
module_object.add_function("f_vty_get_bts0_band", (genericfunc_t)&f__vty__get__bts0__band, (genericfunc_t)&start_f__vty__get__bts0__band);
module_object.add_testcase_nonpard("TC_rsl_ms_pwr_dyn_ass_updown", testcase_TC__rsl__ms__pwr__dyn__ass__updown);
module_object.add_testcase_nonpard("TC_rsl_ms_pwr_dyn_up", testcase_TC__rsl__ms__pwr__dyn__up);
module_object.add_testcase_nonpard("TC_rsl_ms_pwr_dyn_max", testcase_TC__rsl__ms__pwr__dyn__max);
module_object.add_testcase_nonpard("TC_rsl_ms_pwr_dyn_down", testcase_TC__rsl__ms__pwr__dyn__down);
module_object.add_testcase_nonpard("TC_rsl_ms_pwr_dyn_active", testcase_TC__rsl__ms__pwr__dyn__active);
module_object.add_testcase_nonpard("TC_rsl_ms_pwr_dyn_active2", testcase_TC__rsl__ms__pwr__dyn__active2);
module_object.add_function("f_TC_meas_res_speech_tchf", (genericfunc_t)&f__TC__meas__res__speech__tchf, (genericfunc_t)&start_f__TC__meas__res__speech__tchf);
module_object.add_testcase_nonpard("TC_meas_res_speech_tchf", testcase_TC__meas__res__speech__tchf);
module_object.add_testcase_nonpard("TC_meas_res_speech_tchf_facch", testcase_TC__meas__res__speech__tchf__facch);
module_object.add_function("f_TC_meas_res_speech_tchh", (genericfunc_t)&f__TC__meas__res__speech__tchh, (genericfunc_t)&start_f__TC__meas__res__speech__tchh);
module_object.add_testcase_nonpard("TC_meas_res_speech_tchh", testcase_TC__meas__res__speech__tchh);
module_object.add_testcase_nonpard("TC_meas_res_speech_tchh_facch", testcase_TC__meas__res__speech__tchh__facch);
module_object.add_testcase_nonpard("TC_meas_res_speech_tchh_toa256", testcase_TC__meas__res__speech__tchh__toa256);
module_object.add_testcase_nonpard("TC_meas_res_sign_tchf", testcase_TC__meas__res__sign__tchf);
module_object.add_testcase_nonpard("TC_meas_res_sign_tchh", testcase_TC__meas__res__sign__tchh);
module_object.add_testcase_nonpard("TC_meas_res_sign_sdcch4", testcase_TC__meas__res__sign__sdcch4);
module_object.add_testcase_nonpard("TC_meas_res_sign_sdcch8", testcase_TC__meas__res__sign__sdcch8);
module_object.add_testcase_nonpard("TC_meas_res_sign_tchh_toa256", testcase_TC__meas__res__sign__tchh__toa256);
module_object.add_function("f_TC_meas_res_sapi3", (genericfunc_t)&f__TC__meas__res__sapi3, (genericfunc_t)&start_f__TC__meas__res__sapi3);
module_object.add_testcase_nonpard("TC_meas_res_speech_tchf_sapi3", testcase_TC__meas__res__speech__tchf__sapi3);
module_object.add_testcase_nonpard("TC_meas_res_speech_tchh_sapi3", testcase_TC__meas__res__speech__tchh__sapi3);
module_object.add_function("f_tc_rsl_ms_pwr_ctrl", (genericfunc_t)&f__tc__rsl__ms__pwr__ctrl, (genericfunc_t)&start_f__tc__rsl__ms__pwr__ctrl);
module_object.add_testcase_nonpard("TC_rsl_ms_pwr_ctrl", testcase_TC__rsl__ms__pwr__ctrl);
module_object.add_function("f_tc_rsl_chan_initial_ta", (genericfunc_t)&f__tc__rsl__chan__initial__ta, (genericfunc_t)&start_f__tc__rsl__chan__initial__ta);
module_object.add_testcase_nonpard("TC_rsl_chan_initial_ta", testcase_TC__rsl__chan__initial__ta);
module_object.add_function("f_tc_rsl_chan_initial_ms_pwr", (genericfunc_t)&f__tc__rsl__chan__initial__ms__pwr, (genericfunc_t)&start_f__tc__rsl__chan__initial__ms__pwr);
module_object.add_testcase_nonpard("TC_rsl_chan_initial_ms_pwr", testcase_TC__rsl__chan__initial__ms__pwr);
module_object.add_function("f_TC_conn_fail_crit", (genericfunc_t)&f__TC__conn__fail__crit, (genericfunc_t)&start_f__TC__conn__fail__crit);
module_object.add_testcase_nonpard("TC_conn_fail_crit", testcase_TC__conn__fail__crit);
module_object.add_function("tmsi_is_dummy", (genericfunc_t)&tmsi__is__dummy, NULL);
module_object.add_function("check_pch_fn", (genericfunc_t)&check__pch__fn, (genericfunc_t)&start_check__pch__fn);
module_object.add_altstep("as_l1_count_paging", (genericfunc_t)&as__l1__count__paging_instance, (genericfunc_t )&activate_as__l1__count__paging, (genericfunc_t )&as__l1__count__paging);
module_object.add_function("f_TC_paging", (genericfunc_t)&f__TC__paging, (genericfunc_t)&start_f__TC__paging);
module_object.add_testcase_nonpard("TC_paging_imsi_80percent", testcase_TC__paging__imsi__80percent);
module_object.add_testcase_nonpard("TC_paging_tmsi_80percent", testcase_TC__paging__tmsi__80percent);
module_object.add_testcase_nonpard("TC_paging_imsi_200percent", testcase_TC__paging__imsi__200percent);
module_object.add_testcase_nonpard("TC_paging_tmsi_200percent", testcase_TC__paging__tmsi__200percent);
module_object.add_testcase_nonpard("TC_paging_imsi_200percent_with_ps", testcase_TC__paging__imsi__200percent__with__ps);
current_location.update_lineno(4446);
/* BTS_Tests.ttcn, line 4446 */
const_c__MA__null.len() = 0;
const_c__MA__null.ma() = bs_14;
module_object.add_function("f_fmt_ia_stats", (genericfunc_t)&f__fmt__ia__stats, NULL);
module_object.add_function("f_TC_imm_ass", (genericfunc_t)&f__TC__imm__ass, (genericfunc_t)&start_f__TC__imm__ass);
module_object.add_testcase_nonpard("TC_imm_ass_1000_20ms", testcase_TC__imm__ass__1000__20ms);
module_object.add_testcase_nonpard("TC_imm_ass_200_0ms", testcase_TC__imm__ass__200__0ms);
module_object.add_testcase_nonpard("TC_imm_ass_200_76ms", testcase_TC__imm__ass__200__76ms);
module_object.add_function("f_si_vecslot_contains", (genericfunc_t)&f__si__vecslot__contains, NULL);
module_object.add_function("f_ensure_si_vec_contains", (genericfunc_t)&f__ensure__si__vec__contains, NULL);
module_object.add_function("f_si_vec_contains", (genericfunc_t)&f__si__vec__contains, NULL);
module_object.add_function("f_si_vecslot_contains_n_of_m", (genericfunc_t)&f__si__vecslot__contains__n__of__m, NULL);
module_object.add_function("f_ensure_si_vec_contains_n_of_m", (genericfunc_t)&f__ensure__si__vec__contains__n__of__m, NULL);
module_object.add_function("f_si_vecslot_contains_only", (genericfunc_t)&f__si__vecslot__contains__only, NULL);
module_object.add_function("f_ensure_si_vec_contains_only", (genericfunc_t)&f__ensure__si__vec__contains__only, NULL);
module_object.add_function("f_validate_si_scheduling", (genericfunc_t)&f__validate__si__scheduling, NULL);
module_object.add_function("f_l1_sample_si", (genericfunc_t)&f__l1__sample__si, NULL);
module_object.add_function("f_TC_si_sched", (genericfunc_t)&f__TC__si__sched, (genericfunc_t)&start_f__TC__si__sched);
module_object.add_testcase_nonpard("TC_si_sched_default", testcase_TC__si__sched__default);
module_object.add_testcase_nonpard("TC_si_sched_1", testcase_TC__si__sched__1);
module_object.add_testcase_nonpard("TC_si_sched_2bis", testcase_TC__si__sched__2bis);
module_object.add_testcase_nonpard("TC_si_sched_2ter", testcase_TC__si__sched__2ter);
module_object.add_testcase_nonpard("TC_si_sched_2ter_2bis", testcase_TC__si__sched__2ter__2bis);
module_object.add_testcase_nonpard("TC_si_sched_2quater", testcase_TC__si__sched__2quater);
module_object.add_testcase_nonpard("TC_si_sched_13", testcase_TC__si__sched__13);
module_object.add_testcase_nonpard("TC_si_sched_13_2bis_2ter_2quater", testcase_TC__si__sched__13__2bis__2ter__2quater);
module_object.add_testcase_nonpard("TC_bcch_info", testcase_TC__bcch__info);
module_object.add_function("f_exp_err_rep", (genericfunc_t)&f__exp__err__rep, (genericfunc_t)&start_f__exp__err__rep);
module_object.add_testcase_nonpard("TC_rsl_protocol_error", testcase_TC__rsl__protocol__error);
module_object.add_testcase_nonpard("TC_rsl_mand_ie_error", testcase_TC__rsl__mand__ie__error);
module_object.add_testcase_nonpard("TC_rsl_ie_content_error", testcase_TC__rsl__ie__content__error);
module_object.add_function("f_TC_chan_act_wrong_mdisc", (genericfunc_t)&f__TC__chan__act__wrong__mdisc, (genericfunc_t)&start_f__TC__chan__act__wrong__mdisc);
module_object.add_testcase_nonpard("TC_err_rep_wrong_mdisc", testcase_TC__err__rep__wrong__mdisc);
module_object.add_function("f_TC_wrong_msg_type_dchan", (genericfunc_t)&f__TC__wrong__msg__type__dchan, (genericfunc_t)&start_f__TC__wrong__msg__type__dchan);
module_object.add_function("f_TC_wrong_msg_type_rll", (genericfunc_t)&f__TC__wrong__msg__type__rll, (genericfunc_t)&start_f__TC__wrong__msg__type__rll);
module_object.add_testcase_nonpard("TC_err_rep_wrong_msg_type", testcase_TC__err__rep__wrong__msg__type);
module_object.add_function("f_TC_err_rep_wrong_sequence", (genericfunc_t)&f__TC__err__rep__wrong__sequence, (genericfunc_t)&start_f__TC__err__rep__wrong__sequence);
module_object.add_testcase_nonpard("TC_err_rep_wrong_sequence", testcase_TC__err__rep__wrong__sequence);
module_object.add_function("f_TC_ipa_dlcx_not_active", (genericfunc_t)&f__TC__ipa__dlcx__not__active, (genericfunc_t)&start_f__TC__ipa__dlcx__not__active);
module_object.add_testcase_nonpard("TC_ipa_dlcx_not_active", testcase_TC__ipa__dlcx__not__active);
module_object.add_function("f_TC_ipa_crcx_twice_not_active", (genericfunc_t)&f__TC__ipa__crcx__twice__not__active, (genericfunc_t)&start_f__TC__ipa__crcx__twice__not__active);
module_object.add_testcase_nonpard("TC_ipa_crcx_twice_not_active", testcase_TC__ipa__crcx__twice__not__active);
module_object.add_function("f_TC_ipa_crcx_mdcx_dlcx_not_active", (genericfunc_t)&f__TC__ipa__crcx__mdcx__dlcx__not__active, (genericfunc_t)&start_f__TC__ipa__crcx__mdcx__dlcx__not__active);
module_object.add_testcase_nonpard("TC_ipa_crcx_mdcx_dlcx_not_active", testcase_TC__ipa__crcx__mdcx__dlcx__not__active);
module_object.add_function("f_TC_ipa_crcx_mdcx_mdcx_dlcx_not_active", (genericfunc_t)&f__TC__ipa__crcx__mdcx__mdcx__dlcx__not__active, (genericfunc_t)&start_f__TC__ipa__crcx__mdcx__mdcx__dlcx__not__active);
module_object.add_testcase_nonpard("TC_ipa_crcx_mdcx_mdcx_dlcx_not_active", testcase_TC__ipa__crcx__mdcx__mdcx__dlcx__not__active);
module_object.add_function("f_TC_ipa_crcx_sdcch_not_active", (genericfunc_t)&f__TC__ipa__crcx__sdcch__not__active, (genericfunc_t)&start_f__TC__ipa__crcx__sdcch__not__active);
module_object.add_testcase_nonpard("TC_ipa_crcx_sdcch_not_active", testcase_TC__ipa__crcx__sdcch__not__active);
module_object.add_function("f_TC_ipa_crcx_ack_addr", (genericfunc_t)&f__TC__ipa__crcx__ack__addr, (genericfunc_t)&start_f__TC__ipa__crcx__ack__addr);
module_object.add_testcase_nonpard("TC_ipa_crcx_ack_addr", testcase_TC__ipa__crcx__ack__addr);
module_object.add_altstep("as_pcuif_msg", (genericfunc_t)&as__pcuif__msg_instance, (genericfunc_t )&activate_as__pcuif__msg, (genericfunc_t )&as__pcuif__msg);
module_object.add_altstep("as_l1ctl_dl_block_ind", (genericfunc_t)&as__l1ctl__dl__block__ind_instance, (genericfunc_t )&activate_as__l1ctl__dl__block__ind, (genericfunc_t )&as__l1ctl__dl__block__ind);
module_object.add_function("f_TC_pcu_tx_ul_block_req", (genericfunc_t)&f__TC__pcu__tx__ul__block__req, (genericfunc_t)&start_f__TC__pcu__tx__ul__block__req);
module_object.add_function("f_TC_pcu_l1ctl_est_pdch", (genericfunc_t)&f__TC__pcu__l1ctl__est__pdch, (genericfunc_t)&start_f__TC__pcu__l1ctl__est__pdch);
module_object.add_function("f_TC_pcu_act_req", (genericfunc_t)&f__TC__pcu__act__req, (genericfunc_t)&start_f__TC__pcu__act__req);
module_object.add_function("f_TC_pcu_deact_req", (genericfunc_t)&f__TC__pcu__deact__req, (genericfunc_t)&start_f__TC__pcu__deact__req);
module_object.add_function("f_init_with_pcuif", (genericfunc_t)&f__init__with__pcuif, (genericfunc_t)&start_f__init__with__pcuif);
module_object.add_testcase_nonpard("TC_pcu_act_req", testcase_TC__pcu__act__req);
module_object.add_testcase_nonpard("TC_pcu_act_req_wrong_ts", testcase_TC__pcu__act__req__wrong__ts);
module_object.add_testcase_nonpard("TC_pcu_act_req_wrong_bts", testcase_TC__pcu__act__req__wrong__bts);
module_object.add_testcase_nonpard("TC_pcu_act_req_wrong_trx", testcase_TC__pcu__act__req__wrong__trx);
module_object.add_testcase_nonpard("TC_pcu_deact_req", testcase_TC__pcu__deact__req);
module_object.add_testcase_nonpard("TC_pcu_deact_req_wrong_ts", testcase_TC__pcu__deact__req__wrong__ts);
module_object.add_function("f_TC_pcu_ver_siXX", (genericfunc_t)&f__TC__pcu__ver__siXX, (genericfunc_t)&start_f__TC__pcu__ver__siXX);
module_object.add_testcase_nonpard("TC_pcu_ver_si1", testcase_TC__pcu__ver__si1);
module_object.add_testcase_nonpard("TC_pcu_ver_si3", testcase_TC__pcu__ver__si3);
module_object.add_testcase_nonpard("TC_pcu_ver_si13", testcase_TC__pcu__ver__si13);
current_location.update_lineno(5537);
/* BTS_Tests.ttcn, line 5537 */
const_c__PCU__DATA = os_15;
module_object.add_function("f_pcu_data_req", (genericfunc_t)&f__pcu__data__req, (genericfunc_t)&start_f__pcu__data__req);
module_object.add_function("f_pcu_wait_rts_and_data_req", (genericfunc_t)&f__pcu__wait__rts__and__data__req, (genericfunc_t)&start_f__pcu__wait__rts__and__data__req);
module_object.add_testcase_nonpard("TC_pcu_data_req_wrong_bts", testcase_TC__pcu__data__req__wrong__bts);
module_object.add_testcase_nonpard("TC_pcu_data_req_wrong_trx", testcase_TC__pcu__data__req__wrong__trx);
module_object.add_testcase_nonpard("TC_pcu_data_req_wrong_ts", testcase_TC__pcu__data__req__wrong__ts);
module_object.add_testcase_nonpard("TC_pcu_data_req_ts_inactive", testcase_TC__pcu__data__req__ts__inactive);
module_object.add_function("f_pcu_to_l1", (genericfunc_t)&f__pcu__to__l1, (genericfunc_t)&start_f__pcu__to__l1);
module_object.add_function("f_TC_pcu_init", (genericfunc_t)&f__TC__pcu__init, (genericfunc_t)&start_f__TC__pcu__init);
module_object.add_testcase_nonpard("TC_pcu_data_req_pdtch", testcase_TC__pcu__data__req__pdtch);
module_object.add_testcase_nonpard("TC_pcu_data_req_ptcch", testcase_TC__pcu__data__req__ptcch);
module_object.add_function("f_TC_pcu_ptcch_ul", (genericfunc_t)&f__TC__pcu__ptcch__ul, (genericfunc_t)&start_f__TC__pcu__ptcch__ul);
module_object.add_testcase_nonpard("TC_pcu_ptcch", testcase_TC__pcu__ptcch);
module_object.add_testcase_nonpard("TC_pcu_data_req_agch", testcase_TC__pcu__data__req__agch);
module_object.add_testcase_nonpard("TC_pcu_data_req_pch", testcase_TC__pcu__data__req__pch);
module_object.add_testcase_nonpard("TC_pcu_data_req_imm_ass_pch", testcase_TC__pcu__data__req__imm__ass__pch);
module_object.add_testcase_nonpard("TC_pcu_data_req_imm_ass_agch", testcase_TC__pcu__data__req__imm__ass__agch);
module_object.add_testcase_nonpard("TC_pcu_rach_content", testcase_TC__pcu__rach__content);
module_object.add_testcase_nonpard("TC_pcu_ext_rach_content", testcase_TC__pcu__ext__rach__content);
module_object.add_function("f_TC_pcu_data_ind_lqual_cb", (genericfunc_t)&f__TC__pcu__data__ind__lqual__cb, (genericfunc_t)&start_f__TC__pcu__data__ind__lqual__cb);
module_object.add_testcase_nonpard("TC_pcu_data_ind_lqual_cb", testcase_TC__pcu__data__ind__lqual__cb);
module_object.add_testcase_nonpard("TC_pcu_paging_from_rsl", testcase_TC__pcu__paging__from__rsl);
module_object.add_testcase_nonpard("TC_pcu_time_ind", testcase_TC__pcu__time__ind);
module_object.add_testcase_nonpard("TC_pcu_rts_req", testcase_TC__pcu__rts__req);
module_object.add_testcase_nonpard("TC_pcu_oml_alert", testcase_TC__pcu__oml__alert);
module_object.add_function("f_TC_rr_suspend_req", (genericfunc_t)&f__TC__rr__suspend__req, (genericfunc_t)&start_f__TC__rr__suspend__req);
module_object.add_testcase_nonpard("TC_pcu_rr_suspend", testcase_TC__pcu__rr__suspend);
module_object.add_testcase_nonpard("TC_pcu_socket_connect_multi", testcase_TC__pcu__socket__connect__multi);
module_object.add_testcase_nonpard("TC_pcu_socket_reconnect", testcase_TC__pcu__socket__reconnect);
module_object.add_function("f_get_si", (genericfunc_t)&f__get__si, NULL);
module_object.add_function("f_si_has_gprs_indicator", (genericfunc_t)&f__si__has__gprs__indicator, (genericfunc_t)&start_f__si__has__gprs__indicator);
module_object.add_function("f_TC_pcu_socket_noconnect", (genericfunc_t)&f__TC__pcu__socket__noconnect, (genericfunc_t)&start_f__TC__pcu__socket__noconnect);
module_object.add_testcase_nonpard("TC_pcu_socket_noconnect_nosi3gprs", testcase_TC__pcu__socket__noconnect__nosi3gprs);
module_object.add_testcase_nonpard("TC_pcu_socket_noconnect_nosi4gprs", testcase_TC__pcu__socket__noconnect__nosi4gprs);
module_object.add_function("f_TC_pcu_socket_connect", (genericfunc_t)&f__TC__pcu__socket__connect, (genericfunc_t)&start_f__TC__pcu__socket__connect);
module_object.add_testcase_nonpard("TC_pcu_socket_connect_si3gprs", testcase_TC__pcu__socket__connect__si3gprs);
module_object.add_testcase_nonpard("TC_pcu_socket_connect_si4gprs", testcase_TC__pcu__socket__connect__si4gprs);
module_object.add_function("f_TC_pcu_socket_disconnect", (genericfunc_t)&f__TC__pcu__socket__disconnect, (genericfunc_t)&start_f__TC__pcu__socket__disconnect);
module_object.add_testcase_nonpard("TC_pcu_socket_disconnect_nosi3gprs", testcase_TC__pcu__socket__disconnect__nosi3gprs);
module_object.add_testcase_nonpard("TC_pcu_socket_disconnect_nosi4gprs", testcase_TC__pcu__socket__disconnect__nosi4gprs);
module_object.add_testcase_nonpard("TC_pcu_socket_verify_info_ind", testcase_TC__pcu__socket__verify__info__ind);
module_object.add_testcase_nonpard("TC_pcu_info_ind_fh_params", testcase_TC__pcu__info__ind__fh__params);
module_object.add_testcase_nonpard("TC_pcu_socket_nsvc_ipv4", testcase_TC__pcu__socket__nsvc__ipv4);
module_object.add_testcase_nonpard("TC_pcu_socket_nsvc_ipv6", testcase_TC__pcu__socket__nsvc__ipv6);
module_object.add_testcase_nonpard("TC_pcu_socket_two_nsvc", testcase_TC__pcu__socket__two__nsvc);
module_object.add_testcase_nonpard("TC_pcu_interf_ind", testcase_TC__pcu__interf__ind);
module_object.add_altstep("as_pcuif_check_pdch_mask", (genericfunc_t)&as__pcuif__check__pdch__mask_instance, (genericfunc_t )&activate_as__pcuif__check__pdch__mask, (genericfunc_t )&as__pcuif__check__pdch__mask);
module_object.add_function("f_dyn_osmo_pdch_act", (genericfunc_t)&f__dyn__osmo__pdch__act, (genericfunc_t)&start_f__dyn__osmo__pdch__act);
module_object.add_function("f_dyn_osmo_pdch_deact", (genericfunc_t)&f__dyn__osmo__pdch__deact, (genericfunc_t)&start_f__dyn__osmo__pdch__deact);
module_object.add_function("f_TC_dyn_osmo_pdch_act_deact", (genericfunc_t)&f__TC__dyn__osmo__pdch__act__deact, (genericfunc_t)&start_f__TC__dyn__osmo__pdch__act__deact);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_act_deact", testcase_TC__dyn__osmo__pdch__act__deact);
module_object.add_function("f_TC_dyn_osmo_pdch_unsol_deact", (genericfunc_t)&f__TC__dyn__osmo__pdch__unsol__deact, (genericfunc_t)&start_f__TC__dyn__osmo__pdch__unsol__deact);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_unsol_deact", testcase_TC__dyn__osmo__pdch__unsol__deact);
module_object.add_function("f_TC_dyn_osmo_pdch_double_act", (genericfunc_t)&f__TC__dyn__osmo__pdch__double__act, (genericfunc_t)&start_f__TC__dyn__osmo__pdch__double__act);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_double_act", testcase_TC__dyn__osmo__pdch__double__act);
module_object.add_function("f_TC_dyn_osmo_pdch_tchf_act", (genericfunc_t)&f__TC__dyn__osmo__pdch__tchf__act, (genericfunc_t)&start_f__TC__dyn__osmo__pdch__tchf__act);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_tchf_act", testcase_TC__dyn__osmo__pdch__tchf__act);
module_object.add_function("f_TC_dyn_osmo_pdch_tchh_act", (genericfunc_t)&f__TC__dyn__osmo__pdch__tchh__act, (genericfunc_t)&start_f__TC__dyn__osmo__pdch__tchh__act);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_tchh_act", testcase_TC__dyn__osmo__pdch__tchh__act);
module_object.add_function("f_TC_dyn_osmo_pdch_sdcch8_act", (genericfunc_t)&f__TC__dyn__osmo__pdch__sdcch8__act, (genericfunc_t)&start_f__TC__dyn__osmo__pdch__sdcch8__act);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_sdcch8_act", testcase_TC__dyn__osmo__pdch__sdcch8__act);
module_object.add_function("f_rsl_chan_act_deact", (genericfunc_t)&f__rsl__chan__act__deact, (genericfunc_t)&start_f__rsl__chan__act__deact);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_tchh_race_act", testcase_TC__dyn__osmo__pdch__tchh__race__act);
module_object.add_testcase_nonpard("TC_dyn_osmo_pdch_sdcch8_race_act", testcase_TC__dyn__osmo__pdch__sdcch8__race__act);
module_object.add_function("f_dyn_ipa_pdch_act", (genericfunc_t)&f__dyn__ipa__pdch__act, (genericfunc_t)&start_f__dyn__ipa__pdch__act);
module_object.add_function("f_dyn_ipa_pdch_deact", (genericfunc_t)&f__dyn__ipa__pdch__deact, (genericfunc_t)&start_f__dyn__ipa__pdch__deact);
module_object.add_function("f_TC_dyn_ipa_pdch_act_deact", (genericfunc_t)&f__TC__dyn__ipa__pdch__act__deact, (genericfunc_t)&start_f__TC__dyn__ipa__pdch__act__deact);
module_object.add_testcase_nonpard("TC_dyn_ipa_pdch_act_deact", testcase_TC__dyn__ipa__pdch__act__deact);
module_object.add_function("f_TC_dyn_ipa_pdch_tchf_act", (genericfunc_t)&f__TC__dyn__ipa__pdch__tchf__act, (genericfunc_t)&start_f__TC__dyn__ipa__pdch__tchf__act);
module_object.add_testcase_nonpard("TC_dyn_ipa_pdch_tchf_act", testcase_TC__dyn__ipa__pdch__tchf__act);
module_object.add_function("f_TC_dyn_ipa_pdch_tchf_act_pdch_act_nack", (genericfunc_t)&f__TC__dyn__ipa__pdch__tchf__act__pdch__act__nack, (genericfunc_t)&start_f__TC__dyn__ipa__pdch__tchf__act__pdch__act__nack);
module_object.add_testcase_nonpard("TC_dyn_ipa_pdch_tchf_act_pdch_act_nack", testcase_TC__dyn__ipa__pdch__tchf__act__pdch__act__nack);
module_object.add_function("f_TC_dyn_ipa_pdch_act_tchf_act_nack", (genericfunc_t)&f__TC__dyn__ipa__pdch__act__tchf__act__nack, (genericfunc_t)&start_f__TC__dyn__ipa__pdch__act__tchf__act__nack);
module_object.add_testcase_nonpard("TC_dyn_ipa_pdch_act_tchf_act_nack", testcase_TC__dyn__ipa__pdch__act__tchf__act__nack);
module_object.add_function("f_tx_lapdm", (genericfunc_t)&f__tx__lapdm, (genericfunc_t)&start_f__tx__lapdm);
module_object.add_function("f_rll_testmatrix", (genericfunc_t)&f__rll__testmatrix, (genericfunc_t)&start_f__rll__testmatrix);
module_object.add_function("f_TC_rll_est_ind", (genericfunc_t)&f__TC__rll__est__ind, (genericfunc_t)&start_f__TC__rll__est__ind);
module_object.add_testcase_nonpard("TC_rll_est_ind", testcase_TC__rll__est__ind);
module_object.add_function("f_TC_rll_est_req", (genericfunc_t)&f__TC__rll__est__req, (genericfunc_t)&start_f__TC__rll__est__req);
module_object.add_testcase_nonpard("TC_rll_est_req_DCCH_3", testcase_TC__rll__est__req__DCCH__3);
module_object.add_testcase_nonpard("TC_rll_est_req_ACCH_3", testcase_TC__rll__est__req__ACCH__3);
module_object.add_altstep("as_l1_exp_lapdm", (genericfunc_t)&as__l1__exp__lapdm_instance, (genericfunc_t )&activate_as__l1__exp__lapdm, (genericfunc_t )&as__l1__exp__lapdm);
module_object.add_function("f_l1_exp_lapdm", (genericfunc_t)&f__l1__exp__lapdm, (genericfunc_t)&start_f__l1__exp__lapdm);
module_object.add_function("f_est_rll_mo", (genericfunc_t)&f__est__rll__mo, (genericfunc_t)&start_f__est__rll__mo);
module_object.add_function("f_TC_rll_rel_ind", (genericfunc_t)&f__TC__rll__rel__ind, (genericfunc_t)&start_f__TC__rll__rel__ind);
module_object.add_testcase_nonpard("TC_rll_rel_ind_DCCH_0", testcase_TC__rll__rel__ind__DCCH__0);
module_object.add_testcase_nonpard("TC_rll_rel_ind_ACCH_0", testcase_TC__rll__rel__ind__ACCH__0);
module_object.add_testcase_nonpard("TC_rll_rel_ind_DCCH_3", testcase_TC__rll__rel__ind__DCCH__3);
module_object.add_testcase_nonpard("TC_rll_rel_ind_ACCH_3", testcase_TC__rll__rel__ind__ACCH__3);
module_object.add_function("f_TC_rll_rel_req", (genericfunc_t)&f__TC__rll__rel__req, (genericfunc_t)&start_f__TC__rll__rel__req);
module_object.add_testcase_nonpard("TC_rll_rel_req", testcase_TC__rll__rel__req);
module_object.add_testcase_nonpard("TC_rll_data_req", testcase_TC__rll__data__req);
module_object.add_testcase_nonpard("TC_rll_data_ind", testcase_TC__rll__data__ind);
module_object.add_function("f_TC_rll_ud_req", (genericfunc_t)&f__TC__rll__ud__req, (genericfunc_t)&start_f__TC__rll__ud__req);
module_object.add_testcase_nonpard("TC_rll_unit_data_req_DCCH", testcase_TC__rll__unit__data__req__DCCH);
module_object.add_testcase_nonpard("TC_rll_unit_data_req_ACCH", testcase_TC__rll__unit__data__req__ACCH);
module_object.add_function("f_TC_rll_ud_ind", (genericfunc_t)&f__TC__rll__ud__ind, (genericfunc_t)&start_f__TC__rll__ud__ind);
module_object.add_testcase_nonpard("TC_rll_unit_data_ind_DCCH", testcase_TC__rll__unit__data__ind__DCCH);
module_object.add_testcase_nonpard("TC_rll_unit_data_ind_ACCH", testcase_TC__rll__unit__data__ind__ACCH);
module_object.add_function("f_unitdata_mt", (genericfunc_t)&f__unitdata__mt, (genericfunc_t)&start_f__unitdata__mt);
module_object.add_altstep("as_rsl_any_ind", (genericfunc_t)&as__rsl__any__ind_instance, (genericfunc_t )&activate_as__rsl__any__ind, (genericfunc_t )&as__rsl__any__ind);
module_object.add_function("f_unitdata_mo", (genericfunc_t)&f__unitdata__mo, (genericfunc_t)&start_f__unitdata__mo);
module_object.add_function("f_data_mo", (genericfunc_t)&f__data__mo, (genericfunc_t)&start_f__data__mo);
module_object.add_function("f_TC_chan_act_encr", (genericfunc_t)&f__TC__chan__act__encr, (genericfunc_t)&start_f__TC__chan__act__encr);
module_object.add_testcase_nonpard("TC_chan_act_a51", testcase_TC__chan__act__a51);
module_object.add_testcase_nonpard("TC_chan_act_a52", testcase_TC__chan__act__a52);
module_object.add_testcase_nonpard("TC_chan_act_a53", testcase_TC__chan__act__a53);
module_object.add_testcase_nonpard("TC_chan_act_a54", testcase_TC__chan__act__a54);
module_object.add_function("f_TC_rsl_modify_encr", (genericfunc_t)&f__TC__rsl__modify__encr, (genericfunc_t)&start_f__TC__rsl__modify__encr);
module_object.add_testcase_nonpard("TC_rsl_modify_encr", testcase_TC__rsl__modify__encr);
module_object.add_function("f_TC_rsl_rf_resource_ind", (genericfunc_t)&f__TC__rsl__rf__resource__ind, (genericfunc_t)&start_f__TC__rsl__rf__resource__ind);
module_object.add_testcase_nonpard("TC_rsl_rf_resource_ind", testcase_TC__rsl__rf__resource__ind);
module_object.add_function("f_TC_encr_cmd", (genericfunc_t)&f__TC__encr__cmd, (genericfunc_t)&start_f__TC__encr__cmd);
module_object.add_testcase_nonpard("TC_encr_cmd_a51", testcase_TC__encr__cmd__a51);
module_object.add_testcase_nonpard("TC_encr_cmd_a52", testcase_TC__encr__cmd__a52);
module_object.add_testcase_nonpard("TC_encr_cmd_a53", testcase_TC__encr__cmd__a53);
module_object.add_testcase_nonpard("TC_encr_cmd_a54", testcase_TC__encr__cmd__a54);
module_object.add_function("f_assert_lapdm", (genericfunc_t)&f__assert__lapdm, NULL);
module_object.add_testcase_nonpard("TC_lapdm_selftest", testcase_TC__lapdm__selftest);
module_object.add_function("f_TC_tch_sign_l2_fill_frame", (genericfunc_t)&f__TC__tch__sign__l2__fill__frame, (genericfunc_t)&start_f__TC__tch__sign__l2__fill__frame);
module_object.add_function("f_tch_sign_l2_fill_frame", (genericfunc_t)&f__tch__sign__l2__fill__frame, (genericfunc_t)&start_f__tch__sign__l2__fill__frame);
module_object.add_testcase_nonpard("TC_tch_sign_l2_fill_frame", testcase_TC__tch__sign__l2__fill__frame);
module_object.add_testcase_nonpard("TC_tch_sign_l2_fill_frame_dtxd", testcase_TC__tch__sign__l2__fill__frame__dtxd);
module_object.add_testcase_nonpard("TC_chopped_ipa_ping", testcase_TC__chopped__ipa__ping);
module_object.add_testcase_nonpard("TC_chopped_ipa_payload", testcase_TC__chopped__ipa__payload);
module_object.add_altstep("as_TC_ms_pwr_ctrl", (genericfunc_t)&as__TC__ms__pwr__ctrl_instance, (genericfunc_t )&activate_as__TC__ms__pwr__ctrl, (genericfunc_t )&as__TC__ms__pwr__ctrl);
module_object.add_function("f_TC_ms_pwr_ctrl_cb_def", (genericfunc_t)&f__TC__ms__pwr__ctrl__cb__def, (genericfunc_t)&start_f__TC__ms__pwr__ctrl__cb__def);
module_object.add_function("f_TC_ms_pwr_ctrl_cb_const", (genericfunc_t)&f__TC__ms__pwr__ctrl__cb__const, (genericfunc_t)&start_f__TC__ms__pwr__ctrl__cb__const);
module_object.add_function("f_TC_ms_pwr_ctrl_cb_rssi_pwm", (genericfunc_t)&f__TC__ms__pwr__ctrl__cb__rssi__pwm, (genericfunc_t)&start_f__TC__ms__pwr__ctrl__cb__rssi__pwm);
module_object.add_function("f_TC_ms_pwr_ctrl_constant", (genericfunc_t)&f__TC__ms__pwr__ctrl__constant, (genericfunc_t)&start_f__TC__ms__pwr__ctrl__constant);
module_object.add_testcase_nonpard("TC_ms_pwr_ctrl_constant", testcase_TC__ms__pwr__ctrl__constant);
module_object.add_function("f_TC_ms_pwr_ctrl_pf_ewma", (genericfunc_t)&f__TC__ms__pwr__ctrl__pf__ewma, (genericfunc_t)&start_f__TC__ms__pwr__ctrl__pf__ewma);
module_object.add_testcase_nonpard("TC_ms_pwr_ctrl_pf_ewma", testcase_TC__ms__pwr__ctrl__pf__ewma);
module_object.add_function("f_TC_speech_no_rtp", (genericfunc_t)&f__TC__speech__no__rtp, (genericfunc_t)&start_f__TC__speech__no__rtp);
module_object.add_testcase_nonpard("TC_speech_no_rtp_tchf", testcase_TC__speech__no__rtp__tchf);
module_object.add_testcase_nonpard("TC_speech_no_rtp_tchh", testcase_TC__speech__no__rtp__tchh);
module_object.add_function("f_TC_speech_rtp", (genericfunc_t)&f__TC__speech__rtp, (genericfunc_t)&start_f__TC__speech__rtp);
module_object.add_testcase_nonpard("TC_speech_rtp_tchf", testcase_TC__speech__rtp__tchf);
module_object.add_testcase_nonpard("TC_speech_rtp_tchh", testcase_TC__speech__rtp__tchh);
module_object.add_function("f_TC_speech_osmux", (genericfunc_t)&f__TC__speech__osmux, (genericfunc_t)&start_f__TC__speech__osmux);
module_object.add_testcase_nonpard("TC_speech_osmux_tchf", testcase_TC__speech__osmux__tchf);
module_object.add_testcase_nonpard("TC_speech_osmux_tchh", testcase_TC__speech__osmux__tchh);
module_object.add_function("f_TC_data_rtp_loopback", (genericfunc_t)&f__TC__data__rtp__loopback, (genericfunc_t)&start_f__TC__data__rtp__loopback);
module_object.add_function("f_TC_data_facch", (genericfunc_t)&f__TC__data__facch, (genericfunc_t)&start_f__TC__data__facch);
module_object.add_testcase_nonpard("TC_data_rtp_tchf144", testcase_TC__data__rtp__tchf144);
module_object.add_testcase_nonpard("TC_data_facch_tchf144", testcase_TC__data__facch__tchf144);
module_object.add_testcase_nonpard("TC_data_rtp_tchf96", testcase_TC__data__rtp__tchf96);
module_object.add_testcase_nonpard("TC_data_facch_tchf96", testcase_TC__data__facch__tchf96);
module_object.add_testcase_nonpard("TC_data_rtp_tchf48", testcase_TC__data__rtp__tchf48);
module_object.add_testcase_nonpard("TC_data_facch_tchf48", testcase_TC__data__facch__tchf48);
module_object.add_testcase_nonpard("TC_data_rtp_tchh48", testcase_TC__data__rtp__tchh48);
module_object.add_testcase_nonpard("TC_data_facch_tchh48", testcase_TC__data__facch__tchh48);
module_object.add_testcase_nonpard("TC_data_rtp_tchf24", testcase_TC__data__rtp__tchf24);
module_object.add_testcase_nonpard("TC_data_facch_tchf24", testcase_TC__data__facch__tchf24);
module_object.add_testcase_nonpard("TC_data_rtp_tchh24", testcase_TC__data__rtp__tchh24);
module_object.add_testcase_nonpard("TC_data_facch_tchh24", testcase_TC__data__facch__tchh24);
module_object.add_function("f_TC_early_immediate_assignment", (genericfunc_t)&f__TC__early__immediate__assignment, (genericfunc_t)&start_f__TC__early__immediate__assignment);
module_object.add_testcase_nonpard("TC_early_immediate_assignment", testcase_TC__early__immediate__assignment);
module_object.add_function("f_TC_est_dchan", (genericfunc_t)&f__TC__est__dchan, (genericfunc_t)&start_f__TC__est__dchan);
module_object.add_testcase_nonpard("TC_est_dchan", testcase_TC__est__dchan);
module_object.add_function("f_rxlev_match", (genericfunc_t)&f__rxlev__match, (genericfunc_t)&start_f__rxlev__match);
module_object.add_function("f_TC_acch_overpower", (genericfunc_t)&f__TC__acch__overpower, (genericfunc_t)&start_f__TC__acch__overpower);
module_object.add_testcase_nonpard("TC_acch_overpower_rxqual_thresh", testcase_TC__acch__overpower__rxqual__thresh);
module_object.add_testcase_nonpard("TC_acch_overpower_rxqual_thresh_dtx", testcase_TC__acch__overpower__rxqual__thresh__dtx);
module_object.add_testcase_nonpard("TC_acch_overpower_always_on_facch", testcase_TC__acch__overpower__always__on__facch);
module_object.add_testcase_nonpard("TC_acch_overpower_always_on_sacch", testcase_TC__acch__overpower__always__on__sacch);
module_object.add_testcase_nonpard("TC_acch_overpower_limit", testcase_TC__acch__overpower__limit);
}

void post_init_module()
{
TTCN_Location current_location("BTS_Tests.ttcn", 0, TTCN_Location::LOCATION_UNKNOWN, "BTS_Tests");
GSM__SystemInformation::module_object.post_init_module();
LAPDm__RAW__PT::module_object.post_init_module();
Osmocom__CTRL__Adapter::module_object.post_init_module();
IPA__Testing::module_object.post_init_module();
RSL__Emulation::module_object.post_init_module();
RTP__Emulation::module_object.post_init_module();
OSMUX__Emulation::module_object.post_init_module();
TRXC__CodecPort__CtrlFunct::module_object.post_init_module();
PCUIF__CodecPort::module_object.post_init_module();
L3__Common::module_object.post_init_module();
Osmocom__VTY__Functions::module_object.post_init_module();
BTS__Tests__LAPDm::module_object.post_init_module();
current_location.update_lineno(344);
/* BTS_Tests.ttcn, line 344 */
template_ts__RachCtrl__default.max__retrans() = GSM__SystemInformation::RachCtrlPar__MR::RACH__MAX__RETRANS__7;
template_ts__RachCtrl__default.tx__integer() = bs_3;
template_ts__RachCtrl__default.cell__barr__access() = FALSE;
template_ts__RachCtrl__default.re__not__allowed() = TRUE;
template_ts__RachCtrl__default.acc() = bs_4;
current_location.update_lineno(352);
/* BTS_Tests.ttcn, line 352 */
template_ts__CellSelPar__default.cell__resel__hyst__2dB() = 2;
template_ts__CellSelPar__default.ms__txpwr__max__cch() = mp__ms__power__level__exp;
template_ts__CellSelPar__default.acs() = bs_2;
template_ts__CellSelPar__default.neci() = TRUE;
template_ts__CellSelPar__default.rxlev__access__min() = 0;
current_location.update_lineno(360);
/* BTS_Tests.ttcn, line 360 */
template_ts__LAI__default.mcc__mnc() = hs_0;
template_ts__LAI__default.lac() = 42;
current_location.update_lineno(365);
/* BTS_Tests.ttcn, line 365 */
template_ts__GPRSIndicator__def.ra__colour() = 0;
template_ts__GPRSIndicator__def.si13__pos() = bs_2;
current_location.update_lineno(370);
/* BTS_Tests.ttcn, line 370 */
template_ts__SI3RestOctets__def = GSM__RestOctets::ts__SI3RestOctets;
{
GSM__RestOctets::GPRSIndicatorOpt_template& tmp_8 = template_ts__SI3RestOctets__def.gprs__ind();
tmp_8.presence() = Osmocom__Types::CSN1__H;
tmp_8.ind() = ts__GPRSIndicator__def;
}
current_location.update_lineno(378);
/* BTS_Tests.ttcn, line 378 */
template_ts__SI4RestOctets__def = GSM__RestOctets::ts__SI4RestOctets;
{
GSM__RestOctets::GPRSIndicatorOpt_template& tmp_9 = template_ts__SI4RestOctets__def.gprs__ind();
tmp_9.presence() = Osmocom__Types::CSN1__H;
tmp_9.ind() = ts__GPRSIndicator__def;
}
current_location.update_lineno(387);
/* BTS_Tests.ttcn, line 387 */
template_ts__SI3__default.header() = GSM__RR__Types::ts__RrHeader(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__3, 18);
{
GSM__SystemInformation::SystemInformationType3_template& tmp_10 = template_ts__SI3__default.payload().si3();
tmp_10.cell__id() = 23;
tmp_10.lai() = ts__LAI__default;
{
GSM__SystemInformation::ControlChannelDescription_template& tmp_11 = tmp_10.ctrl__chan__desc();
tmp_11.msc__r99() = TRUE;
tmp_11.att() = TRUE;
tmp_11.bs__ag__blks__res() = 1;
tmp_11.ccch__conf() = GSM__SystemInformation::CtrlChanDesc__CC::CCHAN__DESC__1CCCH__COMBINED;
tmp_11.si22ind() = FALSE;
tmp_11.cbq3() = GSM__SystemInformation::CBQ3::CBQ3__IU__MODE__NOT__SUPPORTED;
tmp_11.spare() = bs_5;
tmp_11.bs__pa__mfrms() = 0;
tmp_11.t3212() = 1;
}
{
GSM__SystemInformation::CellOptions_template& tmp_12 = tmp_10.cell__options();
tmp_12.dn__ind() = FALSE;
tmp_12.pwrc() = FALSE;
tmp_12.dtx() = GSM__SystemInformation::CellOptions__DTX::MS__MAY__USE__UL__DTX;
tmp_12.radio__link__tout__div4() = 7;
}
tmp_10.cell__sel__par() = ts__CellSelPar__default;
tmp_10.rach__control() = ts__RachCtrl__default;
tmp_10.rest__octets() = ts__SI3RestOctets__def.valueof();
}
current_location.update_lineno(417);
/* BTS_Tests.ttcn, line 417 */
template_ts__SI2__default.header() = GSM__RR__Types::ts__RrHeader(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__2, 22);
{
GSM__SystemInformation::SystemInformationType2_template& tmp_13 = template_ts__SI2__default.payload().si2();
tmp_13.bcch__freq__list() = os_0;
tmp_13.ncc__permitted() = bs_6;
tmp_13.rach__control() = ts__RachCtrl__default;
}
current_location.update_lineno(428);
/* BTS_Tests.ttcn, line 428 */
template_ts__SI4__default.header() = GSM__RR__Types::ts__RrHeader(GSM__RR__Types::RrMessageType::SYSTEM__INFORMATION__TYPE__4, 12);
{
GSM__SystemInformation::SystemInformationType4_template& tmp_14 = template_ts__SI4__default.payload().si4();
tmp_14.lai() = ts__LAI__default;
tmp_14.cell__sel__par() = ts__CellSelPar__default;
tmp_14.rach__control() = ts__RachCtrl__default;
tmp_14.cbch__chan__desc() = OMIT_VALUE;
tmp_14.cbch__mobile__alloc() = OMIT_VALUE;
tmp_14.rest__octets() = ts__SI4RestOctets__def.valueof();
}
current_location.update_lineno(557);
/* BTS_Tests.ttcn, line 557 */
const_f__init_trx__nr_defval = 0;
current_location.update_lineno(650);
/* BTS_Tests.ttcn, line 650 */
const_f__resolve__fh__params_trx__nr_defval = 0;
current_location.update_lineno(691);
/* BTS_Tests.ttcn, line 691 */
const_f__start__handler_pcu__comp_defval = FALSE;
current_location.update_lineno(692);
/* BTS_Tests.ttcn, line 692 */
const_f__start__handler_trxc__comp_defval = FALSE;
current_location.update_lineno(693);
/* BTS_Tests.ttcn, line 693 */
const_f__start__handler_l1ctl_defval = TRUE;
current_location.update_lineno(733);
/* BTS_Tests.ttcn, line 733 */
const_f__l1__tune_ccch__mode_defval = L1CTL__Types::L1ctlCcchMode::CCCH__MODE__COMBINED;
current_location.update_lineno(772);
/* BTS_Tests.ttcn, line 772 */
const_f__rsl__transceive__ret_ignore__other_defval = FALSE;
current_location.update_lineno(802);
/* BTS_Tests.ttcn, line 802 */
const_f__rsl__transceive_ignore__other_defval = FALSE;
current_location.update_lineno(870);
/* BTS_Tests.ttcn, line 870 */
const_f__rsl__chan__act_encr__enable_defval = FALSE;
current_location.update_lineno(871);
/* BTS_Tests.ttcn, line 871 */
const_f__rsl__chan__act_more__ies_defval = NULL_VALUE;
current_location.update_lineno(872);
/* BTS_Tests.ttcn, line 872 */
const_f__rsl__chan__act_act__type_defval = RSL__Types::c__RSL__IE__ActType__IA;
current_location.update_lineno(897);
/* BTS_Tests.ttcn, line 897 */
template_t__Pars_spec_defval = OMIT_VALUE;
current_location.update_lineno(898);
/* BTS_Tests.ttcn, line 898 */
const_t__Pars_trx__nr_defval = 0;
current_location.update_lineno(898);
/* BTS_Tests.ttcn, line 898 */
const_t__Pars_t__guard_defval = 2.0e1;
current_location.update_lineno(941);
/* BTS_Tests.ttcn, line 941 */
template_as__l1ctl__dl__msg_tr__data_defval = ANY_VALUE;
current_location.update_lineno(942);
/* BTS_Tests.ttcn, line 942 */
template_as__l1ctl__dl__msg_chan__nr_defval = ANY_VALUE;
current_location.update_lineno(943);
/* BTS_Tests.ttcn, line 943 */
template_as__l1ctl__dl__msg_link__id_defval = ANY_VALUE;
current_location.update_lineno(950);
/* BTS_Tests.ttcn, line 950 */
template_as__dl__lapdm__dummy_chan__nr_defval = ANY_VALUE;
current_location.update_lineno(951);
/* BTS_Tests.ttcn, line 951 */
template_as__dl__lapdm__dummy_link__id_defval = ANY_VALUE;
current_location.update_lineno(952);
/* BTS_Tests.ttcn, line 952 */
template_as__dl__lapdm__dummy_sapi_defval = ANY_VALUE;
current_location.update_lineno(953);
/* BTS_Tests.ttcn, line 953 */
const_as__dl__lapdm__dummy_do__repeat_defval = TRUE;
current_location.update_lineno(968);
/* BTS_Tests.ttcn, line 968 */
template_as__dl__dcch__lapdm__ab_tr__frame_defval = ANY_VALUE;
current_location.update_lineno(969);
/* BTS_Tests.ttcn, line 969 */
template_as__dl__dcch__lapdm__ab_link__id_defval = ANY_VALUE;
current_location.update_lineno(981);
/* BTS_Tests.ttcn, line 981 */
template_as__dl__sacch__lapdm__ab_tr__frame_defval = ANY_VALUE;
current_location.update_lineno(982);
/* BTS_Tests.ttcn, line 982 */
template_as__dl__sacch__lapdm__ab_tr__l1h_defval = ANY_VALUE;
current_location.update_lineno(983);
/* BTS_Tests.ttcn, line 983 */
template_as__dl__sacch__lapdm__ab_sapi_defval = ANY_VALUE;
current_location.update_lineno(1003);
/* BTS_Tests.ttcn, line 1003 */
template_as__dl__dcch__pdu_tr__pdu_defval = ANY_VALUE;
current_location.update_lineno(1004);
/* BTS_Tests.ttcn, line 1004 */
template_as__dl__dcch__pdu_sapi_defval = 0;
current_location.update_lineno(1217);
/* BTS_Tests.ttcn, line 1217 */
const_f__sacch__present_do__fail_defval = TRUE;
current_location.update_lineno(1795);
/* BTS_Tests.ttcn, line 1795 */
const_f__vty__load__ind__thresh_period_defval = 10;
current_location.update_lineno(1795);
/* BTS_Tests.ttcn, line 1795 */
const_f__vty__load__ind__thresh_bts__nr_defval = 0;
current_location.update_lineno(1801);
/* BTS_Tests.ttcn, line 1801 */
template_tr__rach__slots__per__interval.set_type(VALUE_RANGE);
template_tr__rach__slots__per__interval.set_min(90);
template_tr__rach__slots__per__interval.set_max(130);
current_location.update_lineno(2159);
/* BTS_Tests.ttcn, line 2159 */
template_ts__LAPDm__AB_c__r_defval = FALSE;
current_location.update_lineno(2160);
/* BTS_Tests.ttcn, line 2160 */
template_ts__LAPDm__AB_p_defval = FALSE;
current_location.update_lineno(2201);
/* BTS_Tests.ttcn, line 2201 */
const_as__l1__sacch__l1h_do__apply_defval = TRUE;
current_location.update_lineno(2395);
/* BTS_Tests.ttcn, line 2395 */
const_as__meas__res_verify__meas_defval = TRUE;
current_location.update_lineno(2531);
/* BTS_Tests.ttcn, line 2531 */
const_f__est__dchan_encr__enable_defval = FALSE;
current_location.update_lineno(2531);
/* BTS_Tests.ttcn, line 2531 */
const_f__est__dchan_more__ies_defval = NULL_VALUE;
current_location.update_lineno(2532);
/* BTS_Tests.ttcn, line 2532 */
const_f__est__dchan_act__type_defval = RSL__Types::c__RSL__IE__ActType__IA;
current_location.update_lineno(2624);
/* BTS_Tests.ttcn, line 2624 */
const_f__rtpem__activate_cfg_defval = RTP__Emulation::c__RtpemDefaultCfg;
current_location.update_lineno(2625);
/* BTS_Tests.ttcn, line 2625 */
const_f__rtpem__activate_mode_defval = RTP__Emulation::RtpemMode::RTPEM__MODE__LOOPBACK;
current_location.update_lineno(2626);
/* BTS_Tests.ttcn, line 2626 */
const_f__rtpem__activate_rtp__pt_defval = 0;
current_location.update_lineno(2672);
/* BTS_Tests.ttcn, line 2672 */
const_f__osmuxem__activate_cfg_defval = OSMUX__Emulation::c__OsmuxemDefaultCfg;
current_location.update_lineno(2673);
/* BTS_Tests.ttcn, line 2673 */
const_f__osmuxem__activate_mode_defval = OSMUX__Emulation::OsmuxemMode::OSMUXEM__MODE__BIDIR;
current_location.update_lineno(3491);
/* BTS_Tests.ttcn, line 3491 */
template_BtsBand__allGSM = CHARSTRING_template(STRING_PATTERN, (CHARSTRING)cs_53, FALSE);
current_location.update_lineno(4024);
/* BTS_Tests.ttcn, line 4024 */
{
INTEGER_template& tmp_479 = template_bs__ag__blks__res__0.frame__nr();
tmp_479.set_type(VALUE_LIST, 9);
tmp_479.list_item(0) = 6;
tmp_479.list_item(1) = 12;
tmp_479.list_item(2) = 16;
tmp_479.list_item(3) = 22;
tmp_479.list_item(4) = 26;
tmp_479.list_item(5) = 32;
tmp_479.list_item(6) = 36;
tmp_479.list_item(7) = 42;
tmp_479.list_item(8) = 46;
}
current_location.update_lineno(4025);
/* BTS_Tests.ttcn, line 4025 */
{
INTEGER_template& tmp_480 = template_bs__ag__blks__res__1.frame__nr();
tmp_480.set_type(VALUE_LIST, 8);
tmp_480.list_item(0) = 12;
tmp_480.list_item(1) = 16;
tmp_480.list_item(2) = 22;
tmp_480.list_item(3) = 26;
tmp_480.list_item(4) = 32;
tmp_480.list_item(5) = 36;
tmp_480.list_item(6) = 42;
tmp_480.list_item(7) = 46;
}
current_location.update_lineno(4026);
/* BTS_Tests.ttcn, line 4026 */
{
INTEGER_template& tmp_481 = template_bs__ag__blks__res__2.frame__nr();
tmp_481.set_type(VALUE_LIST, 7);
tmp_481.list_item(0) = 16;
tmp_481.list_item(1) = 22;
tmp_481.list_item(2) = 26;
tmp_481.list_item(3) = 32;
tmp_481.list_item(4) = 36;
tmp_481.list_item(5) = 42;
tmp_481.list_item(6) = 46;
}
current_location.update_lineno(4027);
/* BTS_Tests.ttcn, line 4027 */
{
INTEGER_template& tmp_482 = template_bs__ag__blks__res__3.frame__nr();
tmp_482.set_type(VALUE_LIST, 6);
tmp_482.list_item(0) = 22;
tmp_482.list_item(1) = 26;
tmp_482.list_item(2) = 32;
tmp_482.list_item(3) = 36;
tmp_482.list_item(4) = 42;
tmp_482.list_item(5) = 46;
}
current_location.update_lineno(4028);
/* BTS_Tests.ttcn, line 4028 */
{
INTEGER_template& tmp_483 = template_bs__ag__blks__res__4.frame__nr();
tmp_483.set_type(VALUE_LIST, 5);
tmp_483.list_item(0) = 26;
tmp_483.list_item(1) = 32;
tmp_483.list_item(2) = 36;
tmp_483.list_item(3) = 42;
tmp_483.list_item(4) = 46;
}
current_location.update_lineno(4029);
/* BTS_Tests.ttcn, line 4029 */
{
INTEGER_template& tmp_484 = template_bs__ag__blks__res__5.frame__nr();
tmp_484.set_type(VALUE_LIST, 4);
tmp_484.list_item(0) = 32;
tmp_484.list_item(1) = 36;
tmp_484.list_item(2) = 42;
tmp_484.list_item(3) = 46;
}
current_location.update_lineno(4030);
/* BTS_Tests.ttcn, line 4030 */
{
INTEGER_template& tmp_485 = template_bs__ag__blks__res__6.frame__nr();
tmp_485.set_type(VALUE_LIST, 3);
tmp_485.list_item(0) = 36;
tmp_485.list_item(1) = 42;
tmp_485.list_item(2) = 46;
}
current_location.update_lineno(4031);
/* BTS_Tests.ttcn, line 4031 */
{
INTEGER_template& tmp_486 = template_bs__ag__blks__res__7.frame__nr();
tmp_486.set_type(VALUE_LIST, 2);
tmp_486.list_item(0) = 42;
tmp_486.list_item(1) = 46;
}
current_location.update_lineno(4553);
/* BTS_Tests.ttcn, line 4553 */
const_f__si__vecslot__contains_bcch__ext_defval = FALSE;
current_location.update_lineno(4570);
/* BTS_Tests.ttcn, line 4570 */
const_f__ensure__si__vec__contains_ext__bcch_defval = FALSE;
current_location.update_lineno(4593);
/* BTS_Tests.ttcn, line 4593 */
const_f__si__vecslot__contains__n__of__m_bcch__ext_defval = FALSE;
current_location.update_lineno(4594);
/* BTS_Tests.ttcn, line 4594 */
const_f__si__vecslot__contains__n__of__m_n_defval = 1;
current_location.update_lineno(4594);
/* BTS_Tests.ttcn, line 4594 */
const_f__si__vecslot__contains__n__of__m_m_defval = 4;
current_location.update_lineno(4620);
/* BTS_Tests.ttcn, line 4620 */
const_f__ensure__si__vec__contains__n__of__m_ext__bcch_defval = FALSE;
current_location.update_lineno(4631);
/* BTS_Tests.ttcn, line 4631 */
const_f__si__vecslot__contains__only_bcch__ext_defval = FALSE;
current_location.update_lineno(4648);
/* BTS_Tests.ttcn, line 4648 */
const_f__ensure__si__vec__contains__only_ext__bcch_defval = FALSE;
current_location.update_lineno(4876);
/* BTS_Tests.ttcn, line 4876 */
const_f__l1__sample__si_duration_defval = 8.0;
current_location.update_lineno(4918);
/* BTS_Tests.ttcn, line 4918 */
const_f__TC__si__sched_duration_defval = 8.0;
current_location.update_lineno(5295);
/* BTS_Tests.ttcn, line 5295 */
template_as__pcuif__msg_tr__msg_defval = ANY_VALUE;
current_location.update_lineno(5306);
/* BTS_Tests.ttcn, line 5306 */
template_as__l1ctl__dl__block__ind_fn_defval = ANY_VALUE;
current_location.update_lineno(5307);
/* BTS_Tests.ttcn, line 5307 */
template_as__l1ctl__dl__block__ind_tn_defval = ANY_VALUE;
current_location.update_lineno(5308);
/* BTS_Tests.ttcn, line 5308 */
template_as__l1ctl__dl__block__ind_usf_defval = ANY_VALUE;
current_location.update_lineno(5309);
/* BTS_Tests.ttcn, line 5309 */
template_as__l1ctl__dl__block__ind_data_defval = ANY_VALUE;
current_location.update_lineno(5326);
/* BTS_Tests.ttcn, line 5326 */
template_f__TC__pcu__tx__ul__block__req_tn_defval = ANY_VALUE;
current_location.update_lineno(5327);
/* BTS_Tests.ttcn, line 5327 */
template_f__TC__pcu__tx__ul__block__req_usf_defval = ANY_VALUE;
current_location.update_lineno(5622);
/* BTS_Tests.ttcn, line 5622 */
const_f__pcu__to__l1_expect__data_defval = TRUE;
current_location.update_lineno(5623);
/* BTS_Tests.ttcn, line 5623 */
const_f__pcu__to__l1_wait__rts_defval = TRUE;
current_location.update_lineno(7180);
/* BTS_Tests.ttcn, line 7180 */
const_t__EITC_act__type_defval = RSL__Types::c__RSL__IE__ActType__IA;
current_location.update_lineno(7343);
/* BTS_Tests.ttcn, line 7343 */
const_f__l1__exp__lapdm_t_defval = 3.0;
current_location.update_lineno(7586);
/* BTS_Tests.ttcn, line 7586 */
const_f__unitdata__mo_exp__sacch_defval = TRUE;
current_location.update_lineno(7587);
/* BTS_Tests.ttcn, line 7587 */
const_f__unitdata__mo_exp__any_defval = FALSE;
current_location.update_lineno(7610);
/* BTS_Tests.ttcn, line 7610 */
const_f__data__mo_exp__sacch_defval = TRUE;
current_location.update_lineno(7611);
/* BTS_Tests.ttcn, line 7611 */
const_f__data__mo_exp__any_defval = FALSE;
current_location.update_lineno(7869);
/* BTS_Tests.ttcn, line 7869 */
const_f__assert__lapdm_name_defval = cs_9;
}

boolean set_module_param(Module_Param& param)
{
const char* const par_name = param.get_id()->get_current_name();
if (!strcmp(par_name, "mp_rsl_ip")) {
modulepar_mp__rsl__ip.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_rsl_port")) {
modulepar_mp__rsl__port.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_bts_trxc_ip")) {
modulepar_mp__bts__trxc__ip.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_bts_trxc_port")) {
modulepar_mp__bts__trxc__port.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_pcu_socket")) {
modulepar_mp__pcu__socket.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ctrl_ip")) {
modulepar_mp__ctrl__ip.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ctrl_port")) {
modulepar_mp__ctrl__port.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_bsc_ctrl_ip")) {
modulepar_mp__bsc__ctrl__ip.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_bsc_ctrl_port")) {
modulepar_mp__bsc__ctrl__port.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_rtpem_bind_ip")) {
modulepar_mp__rtpem__bind__ip.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_rtpem_bind_port")) {
modulepar_mp__rtpem__bind__port.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_osmuxem_bind_ip")) {
modulepar_mp__osmuxem__bind__ip.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_osmuxem_bind_port")) {
modulepar_mp__osmuxem__bind__port.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_tolerance_rxqual")) {
modulepar_mp__tolerance__rxqual.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_tolerance_rxlev")) {
modulepar_mp__tolerance__rxlev.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_tolerance_timing_offset_256syms")) {
modulepar_mp__tolerance__timing__offset__256syms.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_rxlev_exp")) {
modulepar_mp__rxlev__exp.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ul_rxlev_exp")) {
modulepar_mp__ul__rxlev__exp.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ms_power_level_exp")) {
modulepar_mp__ms__power__level__exp.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_bts_tx_nom_pwr_exp")) {
modulepar_mp__bts__tx__nom__pwr__exp.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_bts_tx_pwr_att_exp")) {
modulepar_mp__bts__tx__pwr__att__exp.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ms_actual_ta_exp")) {
modulepar_mp__ms__actual__ta__exp.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_timing_offset_256syms_exp")) {
modulepar_mp__timing__offset__256syms__exp.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_uplink_power_target")) {
modulepar_mp__uplink__power__target.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_uplink_power_hysteresis")) {
modulepar_mp__uplink__power__hysteresis.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ipa_up_timeout")) {
modulepar_mp__ipa__up__timeout.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ipa_up_delay")) {
modulepar_mp__ipa__up__delay.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_l1_supports_gprs")) {
modulepar_mp__l1__supports__gprs.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_transceiver_num")) {
modulepar_mp__transceiver__num.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_freq_hop_enabled")) {
modulepar_mp__freq__hop__enabled.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_fh_config")) {
modulepar_mp__fh__config.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_trx_pars")) {
modulepar_mp__trx__pars.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_tsc_def")) {
modulepar_mp__tsc__def.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_interf_band")) {
modulepar_mp__interf__band.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ho_t3105_ms")) {
modulepar_mp__ho__t3105__ms.set_param(param);
return TRUE;
} else if (!strcmp(par_name, "mp_ho_ny1")) {
modulepar_mp__ho__ny1.set_param(param);
return TRUE;
} else return FALSE;
}

void log_module_param()
{
TTCN_Logger::log_event_str("mp_rsl_ip := ");
mp__rsl__ip.log();
TTCN_Logger::log_event_str(", mp_rsl_port := ");
mp__rsl__port.log();
TTCN_Logger::log_event_str(", mp_bts_trxc_ip := ");
mp__bts__trxc__ip.log();
TTCN_Logger::log_event_str(", mp_bts_trxc_port := ");
mp__bts__trxc__port.log();
TTCN_Logger::log_event_str(", mp_pcu_socket := ");
mp__pcu__socket.log();
TTCN_Logger::log_event_str(", mp_ctrl_ip := ");
mp__ctrl__ip.log();
TTCN_Logger::log_event_str(", mp_ctrl_port := ");
mp__ctrl__port.log();
TTCN_Logger::log_event_str(", mp_bsc_ctrl_ip := ");
mp__bsc__ctrl__ip.log();
TTCN_Logger::log_event_str(", mp_bsc_ctrl_port := ");
mp__bsc__ctrl__port.log();
TTCN_Logger::log_event_str(", mp_rtpem_bind_ip := ");
mp__rtpem__bind__ip.log();
TTCN_Logger::log_event_str(", mp_rtpem_bind_port := ");
mp__rtpem__bind__port.log();
TTCN_Logger::log_event_str(", mp_osmuxem_bind_ip := ");
mp__osmuxem__bind__ip.log();
TTCN_Logger::log_event_str(", mp_osmuxem_bind_port := ");
mp__osmuxem__bind__port.log();
TTCN_Logger::log_event_str(", mp_tolerance_rxqual := ");
mp__tolerance__rxqual.log();
TTCN_Logger::log_event_str(", mp_tolerance_rxlev := ");
mp__tolerance__rxlev.log();
TTCN_Logger::log_event_str(", mp_tolerance_timing_offset_256syms := ");
mp__tolerance__timing__offset__256syms.log();
TTCN_Logger::log_event_str(", mp_rxlev_exp := ");
mp__rxlev__exp.log();
TTCN_Logger::log_event_str(", mp_ul_rxlev_exp := ");
mp__ul__rxlev__exp.log();
TTCN_Logger::log_event_str(", mp_ms_power_level_exp := ");
mp__ms__power__level__exp.log();
TTCN_Logger::log_event_str(", mp_bts_tx_nom_pwr_exp := ");
mp__bts__tx__nom__pwr__exp.log();
TTCN_Logger::log_event_str(", mp_bts_tx_pwr_att_exp := ");
mp__bts__tx__pwr__att__exp.log();
TTCN_Logger::log_event_str(", mp_ms_actual_ta_exp := ");
mp__ms__actual__ta__exp.log();
TTCN_Logger::log_event_str(", mp_timing_offset_256syms_exp := ");
mp__timing__offset__256syms__exp.log();
TTCN_Logger::log_event_str(", mp_uplink_power_target := ");
mp__uplink__power__target.log();
TTCN_Logger::log_event_str(", mp_uplink_power_hysteresis := ");
mp__uplink__power__hysteresis.log();
TTCN_Logger::log_event_str(", mp_ipa_up_timeout := ");
mp__ipa__up__timeout.log();
TTCN_Logger::log_event_str(", mp_ipa_up_delay := ");
mp__ipa__up__delay.log();
TTCN_Logger::log_event_str(", mp_l1_supports_gprs := ");
mp__l1__supports__gprs.log();
TTCN_Logger::log_event_str(", mp_transceiver_num := ");
mp__transceiver__num.log();
TTCN_Logger::log_event_str(", mp_freq_hop_enabled := ");
mp__freq__hop__enabled.log();
TTCN_Logger::log_event_str(", mp_fh_config := ");
mp__fh__config.log();
TTCN_Logger::log_event_str(", mp_trx_pars := ");
mp__trx__pars.log();
TTCN_Logger::log_event_str(", mp_tsc_def := ");
mp__tsc__def.log();
TTCN_Logger::log_event_str(", mp_interf_band := ");
mp__interf__band.log();
TTCN_Logger::log_event_str(", mp_ho_t3105_ms := ");
mp__ho__t3105__ms.log();
TTCN_Logger::log_event_str(", mp_ho_ny1 := ");
mp__ho__ny1.log();
}

boolean init_comp_type(const char *component_type, boolean init_base_comps)
{
(void)init_base_comps;
if (!strcmp(component_type, "test_CT")) {
if (init_base_comps) {
Module_List::initialize_component("Osmocom_CTRL_Adapter", "CTRL_Adapter_CT", FALSE);
}
test__CT_component_vc__IPA.clean_up();
test__CT_component_vc__RSL.clean_up();
test__CT_component_RSL__CCHAN.activate_port();
test__CT_component_L1CTL.activate_port();
test__CT_component_BTS__TRXC.activate_port();
test__CT_component_g__bts__trxc__conn__id.clean_up();
test__CT_component_BTSVTY.activate_port();
test__CT_component_BSCVTY.activate_port();
test__CT_component_PCU.activate_port();
test__CT_component_g__pcu__conn__id.clean_up();
test__CT_component_g__pcu__last__info.clean_up();
test__CT_component_si__cfg.bcch__extended() = FALSE;
test__CT_component_si__cfg.si1__present() = FALSE;
test__CT_component_si__cfg.si2bis__present() = FALSE;
test__CT_component_si__cfg.si2ter__present() = FALSE;
test__CT_component_si__cfg.si2quater__present() = FALSE;
test__CT_component_si__cfg.si7__present() = FALSE;
test__CT_component_si__cfg.si8__present() = FALSE;
test__CT_component_si__cfg.si9__present() = FALSE;
test__CT_component_si__cfg.si13__present() = FALSE;
test__CT_component_si__cfg.si13alt__present() = FALSE;
test__CT_component_si__cfg.si15__present() = FALSE;
test__CT_component_si__cfg.si16__present() = FALSE;
test__CT_component_si__cfg.si17__present() = FALSE;
test__CT_component_si__cfg.si2n__present() = FALSE;
test__CT_component_si__cfg.si21__present() = FALSE;
test__CT_component_si__cfg.si22__present() = FALSE;
test__CT_component_g__AllChannels.clean_up();
test__CT_component_g__AllChanTypes.clean_up();
return TRUE;
} else if (!strcmp(component_type, "ConnHdlr")) {
if (init_base_comps) {
Module_List::initialize_component("BTS_Tests_LAPDm", "lapdm_test_CT", FALSE);
Module_List::initialize_component("RSL_Emulation", "RSL_DchanHdlr", FALSE);
}
ConnHdlr_component_L1CTL.activate_port();
ConnHdlr_component_BTS__TRXC.activate_port();
ConnHdlr_component_g__bts__trxc__conn__id.clean_up();
ConnHdlr_component_BSCVTY.activate_port();
ConnHdlr_component_g__pars.clean_up();
ConnHdlr_component_g__next__meas__res__nr = 0;
ConnHdlr_component_g__first__meas__res = TRUE;
ConnHdlr_component_PCU.activate_port();
ConnHdlr_component_vc__RTPEM.clean_up();
ConnHdlr_component_RTPEM__CTRL.activate_port();
ConnHdlr_component_RTPEM__DATA.activate_port();
ConnHdlr_component_vc__OsmuxEM.clean_up();
ConnHdlr_component_OsmuxEM__CTRL.activate_port();
ConnHdlr_component_OsmuxEM__DATA.activate_port();
return TRUE;
} else return FALSE;
}

boolean init_system_port(const char* component_type, const char* port_name)
{
if (!strcmp(component_type, "test_CT")) {
if (!strcmp(port_name, "BSCVTY")) {
test__CT_component_BSCVTY.safe_start();
return TRUE;
}
if (!strcmp(port_name, "BTSVTY")) {
test__CT_component_BTSVTY.safe_start();
return TRUE;
}
if (!strcmp(port_name, "BTS_TRXC")) {
test__CT_component_BTS__TRXC.safe_start();
return TRUE;
}
if (!strcmp(port_name, "IPA_CTRL")) {
Osmocom__CTRL__Adapter::CTRL__Adapter__CT_component_IPA__CTRL.safe_start();
return TRUE;
}
if (!strcmp(port_name, "L1CTL")) {
test__CT_component_L1CTL.safe_start();
return TRUE;
}
if (!strcmp(port_name, "PCU")) {
test__CT_component_PCU.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RSL_CCHAN")) {
test__CT_component_RSL__CCHAN.safe_start();
return TRUE;
}
}
else if (!strcmp(component_type, "ConnHdlr")) {
if (!strcmp(port_name, "BSCVTY")) {
ConnHdlr_component_BSCVTY.safe_start();
return TRUE;
}
if (!strcmp(port_name, "BTS_TRXC")) {
ConnHdlr_component_BTS__TRXC.safe_start();
return TRUE;
}
if (!strcmp(port_name, "L1CTL")) {
ConnHdlr_component_L1CTL.safe_start();
return TRUE;
}
if (!strcmp(port_name, "LAPDM")) {
BTS__Tests__LAPDm::lapdm__test__CT_component_LAPDM.safe_start();
return TRUE;
}
if (!strcmp(port_name, "OsmuxEM_CTRL")) {
ConnHdlr_component_OsmuxEM__CTRL.safe_start();
return TRUE;
}
if (!strcmp(port_name, "OsmuxEM_DATA")) {
ConnHdlr_component_OsmuxEM__DATA.safe_start();
return TRUE;
}
if (!strcmp(port_name, "PCU")) {
ConnHdlr_component_PCU.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RSL")) {
RSL__Emulation::RSL__DchanHdlr_component_RSL.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RSL1")) {
RSL__Emulation::RSL__DchanHdlr_component_RSL1.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RSL1_PROC")) {
RSL__Emulation::RSL__DchanHdlr_component_RSL1__PROC.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RSL2")) {
RSL__Emulation::RSL__DchanHdlr_component_RSL2.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RSL2_PROC")) {
RSL__Emulation::RSL__DchanHdlr_component_RSL2__PROC.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RSL_PROC")) {
RSL__Emulation::RSL__DchanHdlr_component_RSL__PROC.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RTPEM_CTRL")) {
ConnHdlr_component_RTPEM__CTRL.safe_start();
return TRUE;
}
if (!strcmp(port_name, "RTPEM_DATA")) {
ConnHdlr_component_RTPEM__DATA.safe_start();
return TRUE;
}
}
return FALSE;
}

boolean start_ptc_function(const char *function_name, Text_Buf& function_arguments)
{
if (!strcmp(function_name, "f_init_rsl")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_init_rsl(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__init__rsl(id);
TTCN_Runtime::function_finished("f_init_rsl");
return TRUE;
} else if (!strcmp(function_name, "f_rsl_bcch_fill_raw")) {
RSL__Types::RSL__IE__SysinfoType rsl__si__type;
OCTETSTRING si__enc;
rsl__si__type.decode_text(function_arguments);
si__enc.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rsl_bcch_fill_raw(");
rsl__si__type.log();
TTCN_Logger::log_event_str(", ");
si__enc.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rsl__bcch__fill__raw(rsl__si__type, si__enc);
TTCN_Runtime::function_finished("f_rsl_bcch_fill_raw");
return TRUE;
} else if (!strcmp(function_name, "f_rsl_bcch_fill")) {
RSL__Types::RSL__IE__SysinfoType rsl__si__type;
GSM__SystemInformation::SystemInformation_template si__dec;
rsl__si__type.decode_text(function_arguments);
si__dec.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rsl_bcch_fill(");
rsl__si__type.log();
TTCN_Logger::log_event_str(", ");
si__dec.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rsl__bcch__fill(rsl__si__type, si__dec);
TTCN_Runtime::function_finished("f_rsl_bcch_fill");
return TRUE;
} else if (!strcmp(function_name, "f_init_vty")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_init_vty(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__init__vty(id);
TTCN_Runtime::function_finished("f_init_vty");
return TRUE;
} else if (!strcmp(function_name, "f_init_vty_bsc")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_init_vty_bsc().");
TTCN_Runtime::function_started(function_arguments);
f__init__vty__bsc();
TTCN_Runtime::function_finished("f_init_vty_bsc");
return TRUE;
} else if (!strcmp(function_name, "f_connhdlr_init_vty_bsc")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_connhdlr_init_vty_bsc().");
TTCN_Runtime::function_started(function_arguments);
f__connhdlr__init__vty__bsc();
TTCN_Runtime::function_finished("f_connhdlr_init_vty_bsc");
return TRUE;
} else if (!strcmp(function_name, "f_init")) {
INTEGER trx__nr;
trx__nr.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_init(");
trx__nr.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__init(trx__nr);
TTCN_Runtime::function_finished("f_init");
return TRUE;
} else if (!strcmp(function_name, "f_init_l1ctl")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_init_l1ctl().");
TTCN_Runtime::function_started(function_arguments);
f__init__l1ctl();
TTCN_Runtime::function_finished("f_init_l1ctl");
return TRUE;
} else if (!strcmp(function_name, "f_start_handler")) {
void__fn fn;
ConnHdlrPars pars;
BOOLEAN pcu__comp;
BOOLEAN trxc__comp;
BOOLEAN l1ctl;
fn.decode_text(function_arguments);
pars.decode_text(function_arguments);
pcu__comp.decode_text(function_arguments);
trxc__comp.decode_text(function_arguments);
l1ctl.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_start_handler(");
fn.log();
TTCN_Logger::log_event_str(", ");
pars.log();
TTCN_Logger::log_event_str(", ");
pcu__comp.log();
TTCN_Logger::log_event_str(", ");
trxc__comp.log();
TTCN_Logger::log_event_str(", ");
l1ctl.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__start__handler(fn, pars, pcu__comp, trxc__comp, l1ctl);
TTCN_Runtime::function_finished("f_start_handler");
return TRUE;
} else if (!strcmp(function_name, "f_trxc_fake_rssi")) {
INTEGER rssi;
rssi.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_trxc_fake_rssi(");
rssi.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__trxc__fake__rssi(rssi);
TTCN_Runtime::function_finished("f_trxc_fake_rssi");
return TRUE;
} else if (!strcmp(function_name, "f_trxc_fake_toffs256")) {
INTEGER toffs256;
toffs256.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_trxc_fake_toffs256(");
toffs256.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__trxc__fake__toffs256(toffs256);
TTCN_Runtime::function_finished("f_trxc_fake_toffs256");
return TRUE;
} else if (!strcmp(function_name, "f_handler_init")) {
void__fn fn;
CHARSTRING id;
ConnHdlrPars pars;
fn.decode_text(function_arguments);
id.decode_text(function_arguments);
pars.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_handler_init(");
fn.log();
TTCN_Logger::log_event_str(", ");
id.log();
TTCN_Logger::log_event_str(", ");
pars.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__handler__init(fn, id, pars);
TTCN_Runtime::function_finished("f_handler_init");
return TRUE;
} else if (!strcmp(function_name, "f_rsl_transceive_ret")) {
RSL__Types::RSL__Message_template tx;
RSL__Types::RSL__Message_template exp__rx;
CHARSTRING id;
BOOLEAN ignore__other;
tx.decode_text(function_arguments);
exp__rx.decode_text(function_arguments);
id.decode_text(function_arguments);
ignore__other.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rsl_transceive_ret(");
tx.log();
TTCN_Logger::log_event_str(", ");
exp__rx.log();
TTCN_Logger::log_event_str(", ");
id.log();
TTCN_Logger::log_event_str(", ");
ignore__other.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rsl__transceive__ret(tx, exp__rx, id, ignore__other);
TTCN_Runtime::function_finished("f_rsl_transceive_ret");
return TRUE;
} else if (!strcmp(function_name, "f_rsl_transceive")) {
RSL__Types::RSL__Message_template tx;
RSL__Types::RSL__Message_template exp__rx;
CHARSTRING id;
BOOLEAN ignore__other;
tx.decode_text(function_arguments);
exp__rx.decode_text(function_arguments);
id.decode_text(function_arguments);
ignore__other.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rsl_transceive(");
tx.log();
TTCN_Logger::log_event_str(", ");
exp__rx.log();
TTCN_Logger::log_event_str(", ");
id.log();
TTCN_Logger::log_event_str(", ");
ignore__other.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rsl__transceive(tx, exp__rx, id, ignore__other);
TTCN_Runtime::function_finished("f_rsl_transceive");
return TRUE;
} else if (!strcmp(function_name, "f_send_meas_rep")) {
GSM__RR__Types::MeasurementResults_template meas__res;
meas__res.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_send_meas_rep(");
meas__res.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__send__meas__rep(meas__res);
TTCN_Runtime::function_finished("f_send_meas_rep");
return TRUE;
} else if (!strcmp(function_name, "f_send_meas_rep_l1h")) {
GSM__RR__Types::MeasurementResults_template meas__res;
GSM__RR__Types::SacchL1Header_template l1h;
meas__res.decode_text(function_arguments);
l1h.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_send_meas_rep_l1h(");
meas__res.log();
TTCN_Logger::log_event_str(", ");
l1h.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__send__meas__rep__l1h(meas__res, l1h);
TTCN_Runtime::function_finished("f_send_meas_rep_l1h");
return TRUE;
} else if (!strcmp(function_name, "f_transceive_meas_rep")) {
GSM__RR__Types::MeasurementResults_template meas__res;
meas__res.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_transceive_meas_rep(");
meas__res.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__transceive__meas__rep(meas__res);
TTCN_Runtime::function_finished("f_transceive_meas_rep");
return TRUE;
} else if (!strcmp(function_name, "f_rsl_chan_act")) {
RSL__Types::RSL__IE__ChannelMode mode;
BOOLEAN encr__enable;
RSL__Types::RSL__IE__List more__ies;
RSL__Types::RSL__IE__ActivationType act__type;
mode.decode_text(function_arguments);
encr__enable.decode_text(function_arguments);
more__ies.decode_text(function_arguments);
act__type.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rsl_chan_act(");
mode.log();
TTCN_Logger::log_event_str(", ");
encr__enable.log();
TTCN_Logger::log_event_str(", ");
more__ies.log();
TTCN_Logger::log_event_str(", ");
act__type.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rsl__chan__act(mode, encr__enable, more__ies, act__type);
TTCN_Runtime::function_finished("f_rsl_chan_act");
return TRUE;
} else if (!strcmp(function_name, "f_rsl_chan_deact")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_rsl_chan_deact().");
TTCN_Runtime::function_started(function_arguments);
f__rsl__chan__deact();
TTCN_Runtime::function_finished("f_rsl_chan_deact");
return TRUE;
} else if (!strcmp(function_name, "f_TC_chan_act_stress")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_act_stress(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__chan__act__stress(id);
TTCN_Runtime::function_finished("f_TC_chan_act_stress");
return TRUE;
} else if (!strcmp(function_name, "f_TC_chan_act_react")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_act_react(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__chan__act__react(id);
TTCN_Runtime::function_finished("f_TC_chan_act_react");
return TRUE;
} else if (!strcmp(function_name, "f_TC_chan_deact_not_active")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_deact_not_active(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__chan__deact__not__active(id);
TTCN_Runtime::function_finished("f_TC_chan_deact_not_active");
return TRUE;
} else if (!strcmp(function_name, "f_TC_chan_act_wrong_nr")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_act_wrong_nr(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__chan__act__wrong__nr(id);
TTCN_Runtime::function_finished("f_TC_chan_act_wrong_nr");
return TRUE;
} else if (!strcmp(function_name, "f_testmatrix_each_chan")) {
ConnHdlrPars pars;
void__fn fn;
pars.decode_text(function_arguments);
fn.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_testmatrix_each_chan(");
pars.log();
TTCN_Logger::log_event_str(", ");
fn.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__testmatrix__each__chan(pars, fn);
TTCN_Runtime::function_finished("f_testmatrix_each_chan");
return TRUE;
} else if (!strcmp(function_name, "f_exp_sacch")) {
BOOLEAN exp;
exp.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_exp_sacch(");
exp.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__exp__sacch(exp);
TTCN_Runtime::function_finished("f_exp_sacch");
return TRUE;
} else if (!strcmp(function_name, "f_TC_deact_sacch")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_deact_sacch(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__deact__sacch(id);
TTCN_Runtime::function_finished("f_TC_deact_sacch");
return TRUE;
} else if (!strcmp(function_name, "f_sacch_present")) {
OCTETSTRING_template l3__exp;
BOOLEAN do__fail;
l3__exp.decode_text(function_arguments);
do__fail.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_sacch_present(");
l3__exp.log();
TTCN_Logger::log_event_str(", ");
do__fail.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__sacch__present(l3__exp, do__fail);
TTCN_Runtime::function_finished("f_sacch_present");
return TRUE;
} else if (!strcmp(function_name, "f_sacch_missing")) {
OCTETSTRING_template l3__exp;
l3__exp.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_sacch_missing(");
l3__exp.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__sacch__missing(l3__exp);
TTCN_Runtime::function_finished("f_sacch_missing");
return TRUE;
} else if (!strcmp(function_name, "f_TC_sacch_filling")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_sacch_filling(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__sacch__filling(id);
TTCN_Runtime::function_finished("f_TC_sacch_filling");
return TRUE;
} else if (!strcmp(function_name, "f_TC_sacch_info_mod")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_sacch_info_mod(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__sacch__info__mod(id);
TTCN_Runtime::function_finished("f_TC_sacch_info_mod");
return TRUE;
} else if (!strcmp(function_name, "f_TC_sacch_multi")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_sacch_multi(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__sacch__multi(id);
TTCN_Runtime::function_finished("f_TC_sacch_multi");
return TRUE;
} else if (!strcmp(function_name, "f_TC_sacch_multi_chg")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_sacch_multi_chg(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__sacch__multi__chg(id);
TTCN_Runtime::function_finished("f_TC_sacch_multi_chg");
return TRUE;
} else if (!strcmp(function_name, "f_TC_sacch_chan_act")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_sacch_chan_act(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__sacch__chan__act(id);
TTCN_Runtime::function_finished("f_TC_sacch_chan_act");
return TRUE;
} else if (!strcmp(function_name, "f_TC_sacch_chan_act_ho_async")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_sacch_chan_act_ho_async(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__sacch__chan__act__ho__async(id);
TTCN_Runtime::function_finished("f_TC_sacch_chan_act_ho_async");
return TRUE;
} else if (!strcmp(function_name, "f_TC_sacch_chan_act_ho_sync")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_sacch_chan_act_ho_sync(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__sacch__chan__act__ho__sync(id);
TTCN_Runtime::function_finished("f_TC_sacch_chan_act_ho_sync");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rach_content")) {
BOOLEAN emerg;
emerg.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rach_content(");
emerg.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rach__content(emerg);
TTCN_Runtime::function_finished("f_TC_rach_content");
return TRUE;
} else if (!strcmp(function_name, "f_vty_load_ind_thresh")) {
INTEGER period;
INTEGER bts__nr;
period.decode_text(function_arguments);
bts__nr.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_vty_load_ind_thresh(");
period.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__vty__load__ind__thresh(period, bts__nr);
TTCN_Runtime::function_finished("f_vty_load_ind_thresh");
return TRUE;
} else if (!strcmp(function_name, "f_rach_toffs")) {
INTEGER toffs256;
BOOLEAN expect__pass;
toffs256.decode_text(function_arguments);
expect__pass.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rach_toffs(");
toffs256.log();
TTCN_Logger::log_event_str(", ");
expect__pass.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rach__toffs(toffs256, expect__pass);
TTCN_Runtime::function_finished("f_rach_toffs");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ho_rach")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ho_rach(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ho__rach(id);
TTCN_Runtime::function_finished("f_TC_ho_rach");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ho_physical_info")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ho_physical_info(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ho__physical__info(id);
TTCN_Runtime::function_finished("f_TC_ho_physical_info");
return TRUE;
} else if (!strcmp(function_name, "f_build_meas_res_tmpl")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_build_meas_res_tmpl().");
TTCN_Runtime::function_started(function_arguments);
f__build__meas__res__tmpl();
TTCN_Runtime::function_finished("f_build_meas_res_tmpl");
return TRUE;
} else if (!strcmp(function_name, "f_build_meas_res_tmpl_empty")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_build_meas_res_tmpl_empty().");
TTCN_Runtime::function_started(function_arguments);
f__build__meas__res__tmpl__empty();
TTCN_Runtime::function_finished("f_build_meas_res_tmpl_empty");
return TRUE;
} else if (!strcmp(function_name, "f_rach_req_wait_chan_rqd")) {
INTEGER ra;
ra.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rach_req_wait_chan_rqd(");
ra.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rach__req__wait__chan__rqd(ra);
TTCN_Runtime::function_finished("f_rach_req_wait_chan_rqd");
return TRUE;
} else if (!strcmp(function_name, "f_est_dchan")) {
BOOLEAN encr__enable;
RSL__Types::RSL__IE__List more__ies;
RSL__Types::RSL__IE__ActivationType act__type;
encr__enable.decode_text(function_arguments);
more__ies.decode_text(function_arguments);
act__type.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_est_dchan(");
encr__enable.log();
TTCN_Logger::log_event_str(", ");
more__ies.log();
TTCN_Logger::log_event_str(", ");
act__type.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__est__dchan(encr__enable, more__ies, act__type);
TTCN_Runtime::function_finished("f_est_dchan");
return TRUE;
} else if (!strcmp(function_name, "get_start_amr_ft")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function get_start_amr_ft().");
TTCN_Runtime::function_started(function_arguments);
get__start__amr__ft();
TTCN_Runtime::function_finished("get_start_amr_ft");
return TRUE;
} else if (!strcmp(function_name, "f_rtpem_activate")) {
RTP__Emulation::RtpemConfig cfg;
RTP__Emulation::RtpemMode mode;
INTEGER rtp__pt;
cfg.decode_text(function_arguments);
mode.decode_text(function_arguments);
rtp__pt.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rtpem_activate(");
cfg.log();
TTCN_Logger::log_event_str(", ");
mode.log();
TTCN_Logger::log_event_str(", ");
rtp__pt.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rtpem__activate(cfg, mode, rtp__pt);
TTCN_Runtime::function_finished("f_rtpem_activate");
return TRUE;
} else if (!strcmp(function_name, "f_osmuxem_activate")) {
OCTETSTRING  payload;
OSMUX__Emulation::OsmuxemConfig cfg;
OSMUX__Emulation::OsmuxemMode mode;
payload.decode_text(function_arguments);
cfg.decode_text(function_arguments);
mode.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_osmuxem_activate(");
payload.log();
TTCN_Logger::log_event_str(", ");
cfg.log();
TTCN_Logger::log_event_str(", ");
mode.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__osmuxem__activate(payload, cfg, mode);
TTCN_Runtime::function_finished("f_osmuxem_activate");
return TRUE;
} else if (!strcmp(function_name, "f_TC_meas_res_periodic")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_meas_res_periodic(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__meas__res__periodic(id);
TTCN_Runtime::function_finished("f_TC_meas_res_periodic");
return TRUE;
} else if (!strcmp(function_name, "f_wait_ramp_up")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_wait_ramp_up().");
TTCN_Runtime::function_started(function_arguments);
f__wait__ramp__up();
TTCN_Runtime::function_finished("f_wait_ramp_up");
return TRUE;
} else if (!strcmp(function_name, "f_verify_ramp_up")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_verify_ramp_up().");
TTCN_Runtime::function_started(function_arguments);
f__verify__ramp__up();
TTCN_Runtime::function_finished("f_verify_ramp_up");
return TRUE;
} else if (!strcmp(function_name, "f_verify_ramp_down")) {
INTEGER max__rx__lvl;
max__rx__lvl.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_verify_ramp_down(");
max__rx__lvl.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__verify__ramp__down(max__rx__lvl);
TTCN_Runtime::function_finished("f_verify_ramp_down");
return TRUE;
} else if (!strcmp(function_name, "f_verify_power_down")) {
INTEGER max__rx__lvl;
max__rx__lvl.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_verify_power_down(");
max__rx__lvl.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__verify__power__down(max__rx__lvl);
TTCN_Runtime::function_finished("f_verify_power_down");
return TRUE;
} else if (!strcmp(function_name, "f_TC_tx_power_start_ramp_up_bcch")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_tx_power_start_ramp_up_bcch(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__tx__power__start__ramp__up__bcch(id);
TTCN_Runtime::function_finished("f_TC_tx_power_start_ramp_up_bcch");
return TRUE;
} else if (!strcmp(function_name, "f_TC_tx_power_down_bcch")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_tx_power_down_bcch(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__tx__power__down__bcch(id);
TTCN_Runtime::function_finished("f_TC_tx_power_down_bcch");
return TRUE;
} else if (!strcmp(function_name, "f_TC_tx_power_ramp_adm_state_change")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_tx_power_ramp_adm_state_change(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__tx__power__ramp__adm__state__change(id);
TTCN_Runtime::function_finished("f_TC_tx_power_ramp_adm_state_change");
return TRUE;
} else if (!strcmp(function_name, "f_check_meas_bs_power_level")) {
INTEGER level;
level.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_check_meas_bs_power_level(");
level.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__check__meas__bs__power__level(level);
TTCN_Runtime::function_finished("f_check_meas_bs_power_level");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_bs_pwr_static_ass")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_bs_pwr_static_ass(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__bs__pwr__static__ass(id);
TTCN_Runtime::function_finished("f_TC_rsl_bs_pwr_static_ass");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_bs_pwr_static_power_control")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_bs_pwr_static_power_control(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__bs__pwr__static__power__control(id);
TTCN_Runtime::function_finished("f_TC_rsl_bs_pwr_static_power_control");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_ms_pwr_dyn_ass_updown")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_ms_pwr_dyn_ass_updown(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__ms__pwr__dyn__ass__updown(id);
TTCN_Runtime::function_finished("f_TC_rsl_ms_pwr_dyn_ass_updown");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_ms_pwr_dyn_max")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_ms_pwr_dyn_max(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__ms__pwr__dyn__max(id);
TTCN_Runtime::function_finished("f_TC_rsl_ms_pwr_dyn_max");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_ms_pwr_dyn_up")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_ms_pwr_dyn_up(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__ms__pwr__dyn__up(id);
TTCN_Runtime::function_finished("f_TC_rsl_ms_pwr_dyn_up");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_ms_pwr_dyn_down")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_ms_pwr_dyn_down(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__ms__pwr__dyn__down(id);
TTCN_Runtime::function_finished("f_TC_rsl_ms_pwr_dyn_down");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_ms_pwr_dyn_active")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_ms_pwr_dyn_active(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__ms__pwr__dyn__active(id);
TTCN_Runtime::function_finished("f_TC_rsl_ms_pwr_dyn_active");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_ms_pwr_dyn_active2")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_ms_pwr_dyn_active2(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__ms__pwr__dyn__active2(id);
TTCN_Runtime::function_finished("f_TC_rsl_ms_pwr_dyn_active2");
return TRUE;
} else if (!strcmp(function_name, "f_wait_for_l1_power_level")) {
INTEGER level;
level.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_wait_for_l1_power_level(");
level.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__wait__for__l1__power__level(level);
TTCN_Runtime::function_finished("f_wait_for_l1_power_level");
return TRUE;
} else if (!strcmp(function_name, "f_power_level_is_lowest_dbm")) {
INTEGER level;
level.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_power_level_is_lowest_dbm(");
level.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__power__level__is__lowest__dbm(level);
TTCN_Runtime::function_finished("f_power_level_is_lowest_dbm");
return TRUE;
} else if (!strcmp(function_name, "f_power_level_is_highest_dbm")) {
INTEGER level;
level.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_power_level_is_highest_dbm(");
level.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__power__level__is__highest__dbm(level);
TTCN_Runtime::function_finished("f_power_level_is_highest_dbm");
return TRUE;
} else if (!strcmp(function_name, "f_get_max_power_from_band")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_get_max_power_from_band().");
TTCN_Runtime::function_started(function_arguments);
f__get__max__power__from__band();
TTCN_Runtime::function_finished("f_get_max_power_from_band");
return TRUE;
} else if (!strcmp(function_name, "f_vty_get_bts0_band")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_vty_get_bts0_band().");
TTCN_Runtime::function_started(function_arguments);
f__vty__get__bts0__band();
TTCN_Runtime::function_finished("f_vty_get_bts0_band");
return TRUE;
} else if (!strcmp(function_name, "f_TC_meas_res_speech_tchf")) {
BOOLEAN facch__enabled;
facch__enabled.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_meas_res_speech_tchf(");
facch__enabled.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__meas__res__speech__tchf(facch__enabled);
TTCN_Runtime::function_finished("f_TC_meas_res_speech_tchf");
return TRUE;
} else if (!strcmp(function_name, "f_TC_meas_res_speech_tchh")) {
BOOLEAN facch__enabled;
facch__enabled.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_meas_res_speech_tchh(");
facch__enabled.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__meas__res__speech__tchh(facch__enabled);
TTCN_Runtime::function_finished("f_TC_meas_res_speech_tchh");
return TRUE;
} else if (!strcmp(function_name, "f_TC_meas_res_sapi3")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_meas_res_sapi3(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__meas__res__sapi3(id);
TTCN_Runtime::function_finished("f_TC_meas_res_sapi3");
return TRUE;
} else if (!strcmp(function_name, "f_tc_rsl_ms_pwr_ctrl")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tc_rsl_ms_pwr_ctrl(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__tc__rsl__ms__pwr__ctrl(id);
TTCN_Runtime::function_finished("f_tc_rsl_ms_pwr_ctrl");
return TRUE;
} else if (!strcmp(function_name, "f_tc_rsl_chan_initial_ta")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tc_rsl_chan_initial_ta(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__tc__rsl__chan__initial__ta(id);
TTCN_Runtime::function_finished("f_tc_rsl_chan_initial_ta");
return TRUE;
} else if (!strcmp(function_name, "f_tc_rsl_chan_initial_ms_pwr")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tc_rsl_chan_initial_ms_pwr(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__tc__rsl__chan__initial__ms__pwr(id);
TTCN_Runtime::function_finished("f_tc_rsl_chan_initial_ms_pwr");
return TRUE;
} else if (!strcmp(function_name, "f_TC_conn_fail_crit")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_conn_fail_crit(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__conn__fail__crit(id);
TTCN_Runtime::function_finished("f_TC_conn_fail_crit");
return TRUE;
} else if (!strcmp(function_name, "check_pch_fn")) {
INTEGER frame__nr;
INTEGER bs__ag__blks__res;
frame__nr.decode_text(function_arguments);
bs__ag__blks__res.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function check_pch_fn(");
frame__nr.log();
TTCN_Logger::log_event_str(", ");
bs__ag__blks__res.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
check__pch__fn(frame__nr, bs__ag__blks__res);
TTCN_Runtime::function_finished("check_pch_fn");
return TRUE;
} else if (!strcmp(function_name, "f_TC_paging")) {
PagingTestCfg cfg;
cfg.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_paging(");
cfg.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__paging(cfg);
TTCN_Runtime::function_finished("f_TC_paging");
return TRUE;
} else if (!strcmp(function_name, "f_TC_imm_ass")) {
INTEGER num__total;
FLOAT sleep__s;
FLOAT exp__pass;
num__total.decode_text(function_arguments);
sleep__s.decode_text(function_arguments);
exp__pass.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_imm_ass(");
num__total.log();
TTCN_Logger::log_event_str(", ");
sleep__s.log();
TTCN_Logger::log_event_str(", ");
exp__pass.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__imm__ass(num__total, sleep__s, exp__pass);
TTCN_Runtime::function_finished("f_TC_imm_ass");
return TRUE;
} else if (!strcmp(function_name, "f_TC_si_sched")) {
FLOAT duration;
duration.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_si_sched(");
duration.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__si__sched(duration);
TTCN_Runtime::function_finished("f_TC_si_sched");
return TRUE;
} else if (!strcmp(function_name, "f_exp_err_rep")) {
RSL__Types::RSL__Cause_template cause;
cause.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_exp_err_rep(");
cause.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__exp__err__rep(cause);
TTCN_Runtime::function_finished("f_exp_err_rep");
return TRUE;
} else if (!strcmp(function_name, "f_TC_chan_act_wrong_mdisc")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_act_wrong_mdisc(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__chan__act__wrong__mdisc(id);
TTCN_Runtime::function_finished("f_TC_chan_act_wrong_mdisc");
return TRUE;
} else if (!strcmp(function_name, "f_TC_wrong_msg_type_dchan")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_wrong_msg_type_dchan(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__wrong__msg__type__dchan(id);
TTCN_Runtime::function_finished("f_TC_wrong_msg_type_dchan");
return TRUE;
} else if (!strcmp(function_name, "f_TC_wrong_msg_type_rll")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_wrong_msg_type_rll(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__wrong__msg__type__rll(id);
TTCN_Runtime::function_finished("f_TC_wrong_msg_type_rll");
return TRUE;
} else if (!strcmp(function_name, "f_TC_err_rep_wrong_sequence")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_err_rep_wrong_sequence(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__err__rep__wrong__sequence(id);
TTCN_Runtime::function_finished("f_TC_err_rep_wrong_sequence");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ipa_dlcx_not_active")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_dlcx_not_active(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ipa__dlcx__not__active(id);
TTCN_Runtime::function_finished("f_TC_ipa_dlcx_not_active");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ipa_crcx_twice_not_active")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_twice_not_active(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ipa__crcx__twice__not__active(id);
TTCN_Runtime::function_finished("f_TC_ipa_crcx_twice_not_active");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ipa_crcx_mdcx_dlcx_not_active")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_mdcx_dlcx_not_active(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ipa__crcx__mdcx__dlcx__not__active(id);
TTCN_Runtime::function_finished("f_TC_ipa_crcx_mdcx_dlcx_not_active");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ipa_crcx_mdcx_mdcx_dlcx_not_active")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_mdcx_mdcx_dlcx_not_active(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ipa__crcx__mdcx__mdcx__dlcx__not__active(id);
TTCN_Runtime::function_finished("f_TC_ipa_crcx_mdcx_mdcx_dlcx_not_active");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ipa_crcx_sdcch_not_active")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_sdcch_not_active(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ipa__crcx__sdcch__not__active(id);
TTCN_Runtime::function_finished("f_TC_ipa_crcx_sdcch_not_active");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ipa_crcx_ack_addr")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ipa_crcx_ack_addr(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ipa__crcx__ack__addr(id);
TTCN_Runtime::function_finished("f_TC_ipa_crcx_ack_addr");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_tx_ul_block_req")) {
OCTETSTRING data;
INTEGER_template tn;
INTEGER_template usf;
data.decode_text(function_arguments);
tn.decode_text(function_arguments);
usf.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_tx_ul_block_req(");
data.log();
TTCN_Logger::log_event_str(", ");
tn.log();
TTCN_Logger::log_event_str(", ");
usf.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__tx__ul__block__req(data, tn, usf);
TTCN_Runtime::function_finished("f_TC_pcu_tx_ul_block_req");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_l1ctl_est_pdch")) {
INTEGER tn;
tn.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_l1ctl_est_pdch(");
tn.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__l1ctl__est__pdch(tn);
TTCN_Runtime::function_finished("f_TC_pcu_l1ctl_est_pdch");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_act_req")) {
INTEGER bts__nr;
INTEGER trx__nr;
INTEGER ts__nr;
BOOLEAN exp__success;
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
ts__nr.decode_text(function_arguments);
exp__success.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_act_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
exp__success.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__act__req(bts__nr, trx__nr, ts__nr, exp__success);
TTCN_Runtime::function_finished("f_TC_pcu_act_req");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_deact_req")) {
INTEGER bts__nr;
INTEGER trx__nr;
INTEGER ts__nr;
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
ts__nr.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_deact_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__deact__req(bts__nr, trx__nr, ts__nr);
TTCN_Runtime::function_finished("f_TC_pcu_deact_req");
return TRUE;
} else if (!strcmp(function_name, "f_init_with_pcuif")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_init_with_pcuif().");
TTCN_Runtime::function_started(function_arguments);
f__init__with__pcuif();
TTCN_Runtime::function_finished("f_init_with_pcuif");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_ver_siXX")) {
OCTETSTRING si;
RSL__Types::RSL__IE__SysinfoType rsl__si__type;
si.decode_text(function_arguments);
rsl__si__type.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_ver_siXX(");
si.log();
TTCN_Logger::log_event_str(", ");
rsl__si__type.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__ver__siXX(si, rsl__si__type);
TTCN_Runtime::function_finished("f_TC_pcu_ver_siXX");
return TRUE;
} else if (!strcmp(function_name, "f_pcu_data_req")) {
INTEGER bts__nr;
INTEGER trx__nr;
INTEGER ts__nr;
INTEGER block__nr;
INTEGER fn;
PCUIF__Types::PCUIF__Sapi sapi;
OCTETSTRING data;
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
ts__nr.decode_text(function_arguments);
block__nr.decode_text(function_arguments);
fn.decode_text(function_arguments);
sapi.decode_text(function_arguments);
data.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_pcu_data_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
block__nr.log();
TTCN_Logger::log_event_str(", ");
fn.log();
TTCN_Logger::log_event_str(", ");
sapi.log();
TTCN_Logger::log_event_str(", ");
data.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__pcu__data__req(bts__nr, trx__nr, ts__nr, block__nr, fn, sapi, data);
TTCN_Runtime::function_finished("f_pcu_data_req");
return TRUE;
} else if (!strcmp(function_name, "f_pcu_wait_rts_and_data_req")) {
INTEGER bts__nr;
INTEGER trx__nr;
INTEGER ts__nr;
PCUIF__Types::PCUIF__Sapi sapi;
OCTETSTRING data;
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
ts__nr.decode_text(function_arguments);
sapi.decode_text(function_arguments);
data.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_pcu_wait_rts_and_data_req(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
sapi.log();
TTCN_Logger::log_event_str(", ");
data.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__pcu__wait__rts__and__data__req(bts__nr, trx__nr, ts__nr, sapi, data);
TTCN_Runtime::function_finished("f_pcu_wait_rts_and_data_req");
return TRUE;
} else if (!strcmp(function_name, "f_pcu_to_l1")) {
INTEGER bts__nr;
INTEGER trx__nr;
INTEGER ts__nr;
PCUIF__Types::PCUIF__Sapi sapi;
OCTETSTRING data;
BOOLEAN expect__data;
BOOLEAN wait__rts;
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
ts__nr.decode_text(function_arguments);
sapi.decode_text(function_arguments);
data.decode_text(function_arguments);
expect__data.decode_text(function_arguments);
wait__rts.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_pcu_to_l1(");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(", ");
ts__nr.log();
TTCN_Logger::log_event_str(", ");
sapi.log();
TTCN_Logger::log_event_str(", ");
data.log();
TTCN_Logger::log_event_str(", ");
expect__data.log();
TTCN_Logger::log_event_str(", ");
wait__rts.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__pcu__to__l1(bts__nr, trx__nr, ts__nr, sapi, data, expect__data, wait__rts);
TTCN_Runtime::function_finished("f_pcu_to_l1");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_init")) {
TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_TC_pcu_init().");
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__init();
TTCN_Runtime::function_finished("f_TC_pcu_init");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_ptcch_ul")) {
INTEGER ra;
ra.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_ptcch_ul(");
ra.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__ptcch__ul(ra);
TTCN_Runtime::function_finished("f_TC_pcu_ptcch_ul");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_data_ind_lqual_cb")) {
INTEGER lqual__cb__exp;
lqual__cb__exp.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_data_ind_lqual_cb(");
lqual__cb__exp.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__data__ind__lqual__cb(lqual__cb__exp);
TTCN_Runtime::function_finished("f_TC_pcu_data_ind_lqual_cb");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rr_suspend_req")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rr_suspend_req(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rr__suspend__req(id);
TTCN_Runtime::function_finished("f_TC_rr_suspend_req");
return TRUE;
} else if (!strcmp(function_name, "f_si_has_gprs_indicator")) {
GSM__RR__Types::RrMessageType si__type;
si__type.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_si_has_gprs_indicator(");
si__type.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__si__has__gprs__indicator(si__type);
TTCN_Runtime::function_finished("f_si_has_gprs_indicator");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_socket_noconnect")) {
GSM__RR__Types::RrMessageType si__type;
si__type.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_socket_noconnect(");
si__type.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__socket__noconnect(si__type);
TTCN_Runtime::function_finished("f_TC_pcu_socket_noconnect");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_socket_connect")) {
GSM__RR__Types::RrMessageType si__type;
si__type.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_socket_connect(");
si__type.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__socket__connect(si__type);
TTCN_Runtime::function_finished("f_TC_pcu_socket_connect");
return TRUE;
} else if (!strcmp(function_name, "f_TC_pcu_socket_disconnect")) {
GSM__RR__Types::RrMessageType si__type;
si__type.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_pcu_socket_disconnect(");
si__type.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__pcu__socket__disconnect(si__type);
TTCN_Runtime::function_finished("f_TC_pcu_socket_disconnect");
return TRUE;
} else if (!strcmp(function_name, "f_dyn_osmo_pdch_act")) {
INTEGER pcu__conn__id;
INTEGER bts__nr;
INTEGER trx__nr;
pcu__conn__id.decode_text(function_arguments);
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_osmo_pdch_act(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__dyn__osmo__pdch__act(pcu__conn__id, bts__nr, trx__nr);
TTCN_Runtime::function_finished("f_dyn_osmo_pdch_act");
return TRUE;
} else if (!strcmp(function_name, "f_dyn_osmo_pdch_deact")) {
INTEGER pcu__conn__id;
INTEGER bts__nr;
INTEGER trx__nr;
pcu__conn__id.decode_text(function_arguments);
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_osmo_pdch_deact(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__dyn__osmo__pdch__deact(pcu__conn__id, bts__nr, trx__nr);
TTCN_Runtime::function_finished("f_dyn_osmo_pdch_deact");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_osmo_pdch_act_deact")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_act_deact(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__osmo__pdch__act__deact(id);
TTCN_Runtime::function_finished("f_TC_dyn_osmo_pdch_act_deact");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_osmo_pdch_unsol_deact")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_unsol_deact(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__osmo__pdch__unsol__deact(id);
TTCN_Runtime::function_finished("f_TC_dyn_osmo_pdch_unsol_deact");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_osmo_pdch_double_act")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_double_act(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__osmo__pdch__double__act(id);
TTCN_Runtime::function_finished("f_TC_dyn_osmo_pdch_double_act");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_osmo_pdch_tchf_act")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_tchf_act(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__osmo__pdch__tchf__act(id);
TTCN_Runtime::function_finished("f_TC_dyn_osmo_pdch_tchf_act");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_osmo_pdch_tchh_act")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_tchh_act(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__osmo__pdch__tchh__act(id);
TTCN_Runtime::function_finished("f_TC_dyn_osmo_pdch_tchh_act");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_osmo_pdch_sdcch8_act")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_osmo_pdch_sdcch8_act(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__osmo__pdch__sdcch8__act(id);
TTCN_Runtime::function_finished("f_TC_dyn_osmo_pdch_sdcch8_act");
return TRUE;
} else if (!strcmp(function_name, "f_rsl_chan_act_deact")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rsl_chan_act_deact(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rsl__chan__act__deact(id);
TTCN_Runtime::function_finished("f_rsl_chan_act_deact");
return TRUE;
} else if (!strcmp(function_name, "f_dyn_ipa_pdch_act")) {
INTEGER pcu__conn__id;
INTEGER bts__nr;
INTEGER trx__nr;
pcu__conn__id.decode_text(function_arguments);
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_ipa_pdch_act(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__dyn__ipa__pdch__act(pcu__conn__id, bts__nr, trx__nr);
TTCN_Runtime::function_finished("f_dyn_ipa_pdch_act");
return TRUE;
} else if (!strcmp(function_name, "f_dyn_ipa_pdch_deact")) {
INTEGER pcu__conn__id;
INTEGER bts__nr;
INTEGER trx__nr;
pcu__conn__id.decode_text(function_arguments);
bts__nr.decode_text(function_arguments);
trx__nr.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_dyn_ipa_pdch_deact(");
pcu__conn__id.log();
TTCN_Logger::log_event_str(", ");
bts__nr.log();
TTCN_Logger::log_event_str(", ");
trx__nr.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__dyn__ipa__pdch__deact(pcu__conn__id, bts__nr, trx__nr);
TTCN_Runtime::function_finished("f_dyn_ipa_pdch_deact");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_ipa_pdch_act_deact")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_act_deact(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__ipa__pdch__act__deact(id);
TTCN_Runtime::function_finished("f_TC_dyn_ipa_pdch_act_deact");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_ipa_pdch_tchf_act")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_tchf_act(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__ipa__pdch__tchf__act(id);
TTCN_Runtime::function_finished("f_TC_dyn_ipa_pdch_tchf_act");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_ipa_pdch_tchf_act_pdch_act_nack")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_tchf_act_pdch_act_nack(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__ipa__pdch__tchf__act__pdch__act__nack(id);
TTCN_Runtime::function_finished("f_TC_dyn_ipa_pdch_tchf_act_pdch_act_nack");
return TRUE;
} else if (!strcmp(function_name, "f_TC_dyn_ipa_pdch_act_tchf_act_nack")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_dyn_ipa_pdch_act_tchf_act_nack(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__dyn__ipa__pdch__act__tchf__act__nack(id);
TTCN_Runtime::function_finished("f_TC_dyn_ipa_pdch_act_tchf_act_nack");
return TRUE;
} else if (!strcmp(function_name, "f_tx_lapdm")) {
LAPDm__Types::LapdmFrame_template l;
GSM__Types::RslLinkId_template link__id;
l.decode_text(function_arguments);
link__id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tx_lapdm(");
l.log();
TTCN_Logger::log_event_str(", ");
link__id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__tx__lapdm(l, link__id);
TTCN_Runtime::function_finished("f_tx_lapdm");
return TRUE;
} else if (!strcmp(function_name, "f_rll_testmatrix")) {
RllTestCases tcs;
void__fn fn;
tcs.decode_text(function_arguments);
fn.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rll_testmatrix(");
tcs.log();
TTCN_Logger::log_event_str(", ");
fn.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rll__testmatrix(tcs, fn);
TTCN_Runtime::function_finished("f_rll_testmatrix");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rll_est_ind")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_est_ind(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rll__est__ind(id);
TTCN_Runtime::function_finished("f_TC_rll_est_ind");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rll_est_req")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_est_req(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rll__est__req(id);
TTCN_Runtime::function_finished("f_TC_rll_est_req");
return TRUE;
} else if (!strcmp(function_name, "f_l1_exp_lapdm")) {
LAPDm__Types::LapdmFrame_template exp;
FLOAT t;
exp.decode_text(function_arguments);
t.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_l1_exp_lapdm(");
exp.log();
TTCN_Logger::log_event_str(", ");
t.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__l1__exp__lapdm(exp, t);
TTCN_Runtime::function_finished("f_l1_exp_lapdm");
return TRUE;
} else if (!strcmp(function_name, "f_est_rll_mo")) {
INTEGER sapi;
GSM__Types::RslLinkId link__id;
OCTETSTRING l3;
sapi.decode_text(function_arguments);
link__id.decode_text(function_arguments);
l3.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_est_rll_mo(");
sapi.log();
TTCN_Logger::log_event_str(", ");
link__id.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__est__rll__mo(sapi, link__id, l3);
TTCN_Runtime::function_finished("f_est_rll_mo");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rll_rel_ind")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_rel_ind(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rll__rel__ind(id);
TTCN_Runtime::function_finished("f_TC_rll_rel_ind");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rll_rel_req")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_rel_req(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rll__rel__req(id);
TTCN_Runtime::function_finished("f_TC_rll_rel_req");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rll_ud_req")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_ud_req(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rll__ud__req(id);
TTCN_Runtime::function_finished("f_TC_rll_ud_req");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rll_ud_ind")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rll_ud_ind(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rll__ud__ind(id);
TTCN_Runtime::function_finished("f_TC_rll_ud_ind");
return TRUE;
} else if (!strcmp(function_name, "f_unitdata_mt")) {
GSM__Types::RslLinkId link__id;
OCTETSTRING l3;
link__id.decode_text(function_arguments);
l3.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_unitdata_mt(");
link__id.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__unitdata__mt(link__id, l3);
TTCN_Runtime::function_finished("f_unitdata_mt");
return TRUE;
} else if (!strcmp(function_name, "f_unitdata_mo")) {
GSM__Types::RslLinkId link__id;
OCTETSTRING l3;
BOOLEAN exp__sacch;
BOOLEAN exp__any;
link__id.decode_text(function_arguments);
l3.decode_text(function_arguments);
exp__sacch.decode_text(function_arguments);
exp__any.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_unitdata_mo(");
link__id.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(", ");
exp__sacch.log();
TTCN_Logger::log_event_str(", ");
exp__any.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__unitdata__mo(link__id, l3, exp__sacch, exp__any);
TTCN_Runtime::function_finished("f_unitdata_mo");
return TRUE;
} else if (!strcmp(function_name, "f_data_mo")) {
GSM__Types::RslLinkId link__id;
BOOLEAN p;
INTEGER nr;
INTEGER ns;
OCTETSTRING l3;
BOOLEAN exp__sacch;
BOOLEAN exp__any;
link__id.decode_text(function_arguments);
p.decode_text(function_arguments);
nr.decode_text(function_arguments);
ns.decode_text(function_arguments);
l3.decode_text(function_arguments);
exp__sacch.decode_text(function_arguments);
exp__any.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_data_mo(");
link__id.log();
TTCN_Logger::log_event_str(", ");
p.log();
TTCN_Logger::log_event_str(", ");
nr.log();
TTCN_Logger::log_event_str(", ");
ns.log();
TTCN_Logger::log_event_str(", ");
l3.log();
TTCN_Logger::log_event_str(", ");
exp__sacch.log();
TTCN_Logger::log_event_str(", ");
exp__any.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__data__mo(link__id, p, nr, ns, l3, exp__sacch, exp__any);
TTCN_Runtime::function_finished("f_data_mo");
return TRUE;
} else if (!strcmp(function_name, "f_TC_chan_act_encr")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_chan_act_encr(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__chan__act__encr(id);
TTCN_Runtime::function_finished("f_TC_chan_act_encr");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_modify_encr")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_modify_encr(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__modify__encr(id);
TTCN_Runtime::function_finished("f_TC_rsl_modify_encr");
return TRUE;
} else if (!strcmp(function_name, "f_TC_rsl_rf_resource_ind")) {
RSL__Types::RSL__ResourceInfo_template info;
info.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_rsl_rf_resource_ind(");
info.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__rsl__rf__resource__ind(info);
TTCN_Runtime::function_finished("f_TC_rsl_rf_resource_ind");
return TRUE;
} else if (!strcmp(function_name, "f_TC_encr_cmd")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_encr_cmd(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__encr__cmd(id);
TTCN_Runtime::function_finished("f_TC_encr_cmd");
return TRUE;
} else if (!strcmp(function_name, "f_TC_tch_sign_l2_fill_frame")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_tch_sign_l2_fill_frame(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__tch__sign__l2__fill__frame(id);
TTCN_Runtime::function_finished("f_TC_tch_sign_l2_fill_frame");
return TRUE;
} else if (!strcmp(function_name, "f_tch_sign_l2_fill_frame")) {
BOOLEAN dtxd;
dtxd.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_tch_sign_l2_fill_frame(");
dtxd.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__tch__sign__l2__fill__frame(dtxd);
TTCN_Runtime::function_finished("f_tch_sign_l2_fill_frame");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ms_pwr_ctrl_cb_def")) {
GSM__RR__Types::SacchL1Header  l1h;
INTEGER num__blocks;
l1h.decode_text(function_arguments);
num__blocks.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_cb_def(");
l1h.log();
TTCN_Logger::log_event_str(", ");
num__blocks.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ms__pwr__ctrl__cb__def(l1h, num__blocks);
TTCN_Runtime::function_finished("f_TC_ms_pwr_ctrl_cb_def");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ms_pwr_ctrl_cb_const")) {
GSM__RR__Types::SacchL1Header  l1h;
INTEGER num__blocks;
l1h.decode_text(function_arguments);
num__blocks.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_cb_const(");
l1h.log();
TTCN_Logger::log_event_str(", ");
num__blocks.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ms__pwr__ctrl__cb__const(l1h, num__blocks);
TTCN_Runtime::function_finished("f_TC_ms_pwr_ctrl_cb_const");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ms_pwr_ctrl_cb_rssi_pwm")) {
GSM__RR__Types::SacchL1Header  l1h;
INTEGER num__blocks;
l1h.decode_text(function_arguments);
num__blocks.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_cb_rssi_pwm(");
l1h.log();
TTCN_Logger::log_event_str(", ");
num__blocks.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ms__pwr__ctrl__cb__rssi__pwm(l1h, num__blocks);
TTCN_Runtime::function_finished("f_TC_ms_pwr_ctrl_cb_rssi_pwm");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ms_pwr_ctrl_constant")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_constant(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ms__pwr__ctrl__constant(id);
TTCN_Runtime::function_finished("f_TC_ms_pwr_ctrl_constant");
return TRUE;
} else if (!strcmp(function_name, "f_TC_ms_pwr_ctrl_pf_ewma")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_ms_pwr_ctrl_pf_ewma(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__ms__pwr__ctrl__pf__ewma(id);
TTCN_Runtime::function_finished("f_TC_ms_pwr_ctrl_pf_ewma");
return TRUE;
} else if (!strcmp(function_name, "f_TC_speech_no_rtp")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_speech_no_rtp(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__speech__no__rtp(id);
TTCN_Runtime::function_finished("f_TC_speech_no_rtp");
return TRUE;
} else if (!strcmp(function_name, "f_TC_speech_rtp")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_speech_rtp(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__speech__rtp(id);
TTCN_Runtime::function_finished("f_TC_speech_rtp");
return TRUE;
} else if (!strcmp(function_name, "f_TC_speech_osmux")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_speech_osmux(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__speech__osmux(id);
TTCN_Runtime::function_finished("f_TC_speech_osmux");
return TRUE;
} else if (!strcmp(function_name, "f_TC_data_rtp_loopback")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_data_rtp_loopback(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__data__rtp__loopback(id);
TTCN_Runtime::function_finished("f_TC_data_rtp_loopback");
return TRUE;
} else if (!strcmp(function_name, "f_TC_data_facch")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_data_facch(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__data__facch(id);
TTCN_Runtime::function_finished("f_TC_data_facch");
return TRUE;
} else if (!strcmp(function_name, "f_TC_early_immediate_assignment")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_early_immediate_assignment(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__early__immediate__assignment(id);
TTCN_Runtime::function_finished("f_TC_early_immediate_assignment");
return TRUE;
} else if (!strcmp(function_name, "f_TC_est_dchan")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_est_dchan(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__est__dchan(id);
TTCN_Runtime::function_finished("f_TC_est_dchan");
return TRUE;
} else if (!strcmp(function_name, "f_rxlev_match")) {
GSM__Types::RslLinkId_template link__id;
INTEGER_template rxlev;
link__id.decode_text(function_arguments);
rxlev.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_rxlev_match(");
link__id.log();
TTCN_Logger::log_event_str(", ");
rxlev.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__rxlev__match(link__id, rxlev);
TTCN_Runtime::function_finished("f_rxlev_match");
return TRUE;
} else if (!strcmp(function_name, "f_TC_acch_overpower")) {
CHARSTRING id;
id.decode_text(function_arguments);
TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC);
TTCN_Logger::log_event_str("Starting function f_TC_acch_overpower(");
id.log();
TTCN_Logger::log_event_str(").");
TTCN_Logger::end_event();
TTCN_Runtime::function_started(function_arguments);
f__TC__acch__overpower(id);
TTCN_Runtime::function_finished("f_TC_acch_overpower");
return TRUE;
} else return FALSE;
}


} /* end of namespace */
