// 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_ASCI.hh" namespace BTS__Tests__ASCI { /* Literal string constants */ const unsigned char bs_1_bits[] = { 0 }, bs_2_bits[] = { 0 }, bs_3_bits[] = { 0 }, bs_0_bits[] = { 1 }; extern const BITSTRING bs_1(1, bs_1_bits), bs_2(3, bs_2_bits), bs_3(4, bs_3_bits), bs_0(1, bs_0_bits); const unsigned char os_6_octets[] = { 1, 2, 3, 4 }, os_4_octets[] = { 6, 42 }, os_3_octets[] = { 8, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43 }, os_2_octets[] = { 9, 6, 32, 180, 34, 48, 0, 0, 145, 161, 51, 11, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43 }, os_1_octets[] = { 35, 66, 102 }, os_7_octets[] = { 37 }, os_0_octets[] = { 85, 6, 25, 143, 179, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 229, 4, 0, 131 }, os_5_octets[] = { 192 }; extern const OCTETSTRING os_6(4, os_6_octets), os_4(2, os_4_octets), os_3(23, os_3_octets), os_2(23, os_2_octets), os_1(3, os_1_octets), os_7(1, os_7_octets), os_0(23, os_0_octets), os_5(1, os_5_octets); const unsigned short op_0_elements[] = { 6, 9, 192, 257 }; const OCTETSTRING_template op_0(4, op_0_elements); extern const CHARSTRING cs_0(19, "BTS_Tests_ASCI.ttcn"); const unsigned char module_checksum[] = { 0x12, 0xef, 0xf0, 0x7a, 0xdd, 0xaa, 0xf3, 0x98, 0x3b, 0xc0, 0xde, 0xe5, 0x02, 0x6b, 0xd9, 0x8c }; /* Global variable definitions */ BOOLEAN const_f__enc__gcr_ack__required_defval; const BOOLEAN& f__enc__gcr_ack__required_defval = const_f__enc__gcr_ack__required_defval; TTCN_Module module_object("BTS_Tests_ASCI", __DATE__, __TIME__, module_checksum, pre_init_module, NULL, 0U, 4294967295U, 4294967295U, 4294967295U, NULL, 0LU, 0, post_init_module, NULL, NULL, NULL, NULL, NULL, start_ptc_function, module_control_part); const RuntimeVersionChecker ver_checker( current_runtime_version.requires_major_version_11, current_runtime_version.requires_minor_version_1, current_runtime_version.requires_patch_level_0, current_runtime_version.requires_runtime_1); /* Bodies of functions, altsteps and testcases */ void f__init__nch__position() { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 47, TTCN_Location::LOCATION_FUNCTION, "f_init_nch_position"); current_location.update_lineno(48); /* BTS_Tests_ASCI.ttcn, line 48 */ BTS__Tests::test__CT_component_si__cfg.si1__present() = TRUE; current_location.update_lineno(49); /* BTS_Tests_ASCI.ttcn, line 49 */ BTS__Tests::f__rsl__bcch__fill__raw(RSL__Types::RSL__IE__SysinfoType::RSL__SYSTEM__INFO__1, os_0); } void start_f__init__nch__position(const COMPONENT& component_reference) { TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_init_nch_position("); 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_ASCI", "f_init_nch_position", text_buf); TTCN_Runtime::send_start_component(text_buf); } BITSTRING bool2bit1(const BOOLEAN& inp) { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 53, TTCN_Location::LOCATION_FUNCTION, "bool2bit1"); current_location.update_lineno(54); /* BTS_Tests_ASCI.ttcn, line 54 */ if (inp) { current_location.update_lineno(55); /* BTS_Tests_ASCI.ttcn, line 55 */ return bs_0; } else { current_location.update_lineno(57); /* BTS_Tests_ASCI.ttcn, line 57 */ return bs_1; } } OCTETSTRING f__enc__gcr(const INTEGER& call__ref, const BOOLEAN& is__group__call, const BOOLEAN& ack__required) { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 62, TTCN_Location::LOCATION_FUNCTION, "f_enc_gcr"); current_location.update_lineno(65); /* BTS_Tests_ASCI.ttcn, line 65 */ MobileL3__CommonIE__Types::DescriptiveGroupOrBroadcastCallReference__V v; v.binaryCodingOfGroupOrBroadcastCallReference() = int2bit(call__ref, 27); v.sF() = bool2bit1(is__group__call); v.aF() = bool2bit1(ack__required); v.callPriority() = bs_2; v.cipheringInformation() = bs_3; v.spare() = bs_3; current_location.update_lineno(73); /* BTS_Tests_ASCI.ttcn, line 73 */ OCTETSTRING tmp_1; MobileL3__CommonIE__Types::DescriptiveGroupOrBroadcastCallReference__V_encoder(v, tmp_1, MobileL3__CommonIE__Types::DescriptiveGroupOrBroadcastCallReference__V_default_coding); return bit2oct(oct2bit(tmp_1)); } verdicttype testcase_TC__vbs__notification(boolean has_timer, double timer_value) { TTCN_Runtime::check_begin_testcase(has_timer, timer_value); TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 79, TTCN_Location::LOCATION_TESTCASE, "TC_vbs_notification"); try { TTCN_Runtime::begin_testcase("BTS_Tests_ASCI", "TC_vbs_notification", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value); current_location.update_lineno(81); /* BTS_Tests_ASCI.ttcn, line 81 */ TIMER T("T"); current_location.update_lineno(83); /* BTS_Tests_ASCI.ttcn, line 83 */ BTS__Tests::f__init(BTS__Tests::f__init_trx__nr_defval); current_location.update_lineno(84); /* BTS_Tests_ASCI.ttcn, line 84 */ f__init__nch__position(); current_location.update_lineno(85); /* BTS_Tests_ASCI.ttcn, line 85 */ BTS__Tests::f__init__l1ctl(); current_location.update_lineno(86); /* BTS_Tests_ASCI.ttcn, line 86 */ BTS__Tests::f__l1__tune(BTS__Tests::test__CT_component_L1CTL, BTS__Tests::f__l1__tune_ccch__mode_defval); current_location.update_lineno(88); /* BTS_Tests_ASCI.ttcn, line 88 */ OCTETSTRING gcr(f__enc__gcr(9026, FALSE, FALSE)); current_location.update_lineno(89); /* BTS_Tests_ASCI.ttcn, line 89 */ OCTETSTRING chan__desc(os_1); current_location.update_lineno(90); /* BTS_Tests_ASCI.ttcn, line 90 */ OCTETSTRING notif__nch(os_2); current_location.update_lineno(91); /* BTS_Tests_ASCI.ttcn, line 91 */ INTEGER recv__count(0); current_location.update_lineno(93); /* BTS_Tests_ASCI.ttcn, line 93 */ TTCN_Logger::log_str(TTCN_USER, "Sending RSL NOTIF_CMD (start)"); current_location.update_lineno(94); /* BTS_Tests_ASCI.ttcn, line 94 */ BTS__Tests::test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::ts__RSL__NOTIF__CMD__START(OCTETSTRING_template(gcr), OCTETSTRING_template(chan__desc)), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL); current_location.update_lineno(97); /* BTS_Tests_ASCI.ttcn, line 97 */ T.start(2.0); current_location.update_lineno(98); /* BTS_Tests_ASCI.ttcn, line 98 */ { tmp_2: alt_status tmp_2_alt_flag_0 = ALT_MAYBE; alt_status tmp_2_alt_flag_1 = ALT_MAYBE; alt_status tmp_2_alt_flag_2 = ALT_MAYBE; alt_status tmp_2_default_flag = ALT_MAYBE; boolean first_run = TRUE; TTCN_Snapshot::take_new(FALSE); for ( ; ; ) { if (tmp_2_alt_flag_0 == ALT_MAYBE) { current_location.update_lineno(99); /* BTS_Tests_ASCI.ttcn, line 99 */ tmp_2_alt_flag_0 = BTS__Tests::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(notif__nch), 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_2_alt_flag_0 == ALT_YES) { current_location.update_lineno(100); /* BTS_Tests_ASCI.ttcn, line 100 */ TTCN_Logger::log_str(TTCN_USER, "Received matching NOTIFICATION/NCH."); current_location.update_lineno(101); /* BTS_Tests_ASCI.ttcn, line 101 */ { INTEGER tmp_3; ++recv__count; } current_location.update_lineno(102); /* BTS_Tests_ASCI.ttcn, line 102 */ if ((recv__count != 2)) { current_location.update_lineno(103); /* BTS_Tests_ASCI.ttcn, line 103 */ goto tmp_2; } current_location.update_lineno(105); /* BTS_Tests_ASCI.ttcn, line 105 */ T.stop(); break; } } if (tmp_2_alt_flag_1 == ALT_MAYBE) { current_location.update_lineno(107); /* BTS_Tests_ASCI.ttcn, line 107 */ tmp_2_alt_flag_1 = BTS__Tests::test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL); if (tmp_2_alt_flag_1 == ALT_YES) { current_location.update_lineno(107); /* BTS_Tests_ASCI.ttcn, line 107 */ goto tmp_2; } } if (tmp_2_alt_flag_2 == ALT_MAYBE) { current_location.update_lineno(108); /* BTS_Tests_ASCI.ttcn, line 108 */ tmp_2_alt_flag_2 = T.timeout(NULL); if (tmp_2_alt_flag_2 == ALT_YES) { current_location.update_lineno(109); /* BTS_Tests_ASCI.ttcn, line 109 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for NCH message"),TTCN_Logger::end_event_log2str())); break; } } if (tmp_2_default_flag == ALT_MAYBE) { tmp_2_default_flag = TTCN_Default::try_altsteps(first_run); if (tmp_2_default_flag == ALT_YES || tmp_2_default_flag == ALT_BREAK) break; else if (tmp_2_default_flag == ALT_REPEAT) goto tmp_2; } current_location.update_lineno(98); /* BTS_Tests_ASCI.ttcn, line 98 */ if (tmp_2_alt_flag_0 == ALT_NO && tmp_2_alt_flag_1 == ALT_NO && tmp_2_alt_flag_2 == ALT_NO && tmp_2_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests_ASCI.ttcn between lines 98 and 111."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(113); /* BTS_Tests_ASCI.ttcn, line 113 */ TTCN_Logger::log_str(TTCN_USER, "Sending RSL NOTIF_CMD (stop)"); current_location.update_lineno(114); /* BTS_Tests_ASCI.ttcn, line 114 */ BTS__Tests::test__CT_component_RSL__CCHAN.send(IPA__Emulation::ts__ASP__RSL__UD(RSL__Types::ts__RSL__NOTIF__CMD__STOP(OCTETSTRING_template(gcr)), IPA__Emulation::ts__ASP__RSL__UD_sid_defval, IPA__Emulation::ts__ASP__RSL__UD_conn__id_defval), FALSE, NULL); current_location.update_lineno(117); /* BTS_Tests_ASCI.ttcn, line 117 */ Osmocom__Types::f__sleep(1.0); current_location.update_lineno(118); /* BTS_Tests_ASCI.ttcn, line 118 */ BTS__Tests::test__CT_component_L1CTL.clear(); current_location.update_lineno(121); /* BTS_Tests_ASCI.ttcn, line 121 */ T.start(2.0); current_location.update_lineno(122); /* BTS_Tests_ASCI.ttcn, line 122 */ { tmp_4: alt_status tmp_4_alt_flag_0 = ALT_MAYBE; alt_status tmp_4_alt_flag_1 = ALT_MAYBE; alt_status tmp_4_alt_flag_2 = ALT_MAYBE; alt_status tmp_4_default_flag = ALT_MAYBE; boolean first_run = TRUE; TTCN_Snapshot::take_new(FALSE); for ( ; ; ) { if (tmp_4_alt_flag_0 == ALT_MAYBE) { current_location.update_lineno(123); /* BTS_Tests_ASCI.ttcn, line 123 */ tmp_4_alt_flag_0 = BTS__Tests::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(notif__nch), 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_4_alt_flag_0 == ALT_YES) { current_location.update_lineno(124); /* BTS_Tests_ASCI.ttcn, line 124 */ T.stop(); current_location.update_lineno(125); /* BTS_Tests_ASCI.ttcn, line 125 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Received unexpected NOTIFICATION/NCH."),TTCN_Logger::end_event_log2str())); break; } } if (tmp_4_alt_flag_1 == ALT_MAYBE) { current_location.update_lineno(127); /* BTS_Tests_ASCI.ttcn, line 127 */ tmp_4_alt_flag_1 = BTS__Tests::test__CT_component_L1CTL.receive(any_compref, NULL, NULL, NULL); if (tmp_4_alt_flag_1 == ALT_YES) { current_location.update_lineno(127); /* BTS_Tests_ASCI.ttcn, line 127 */ goto tmp_4; } } if (tmp_4_alt_flag_2 == ALT_MAYBE) { current_location.update_lineno(128); /* BTS_Tests_ASCI.ttcn, line 128 */ tmp_4_alt_flag_2 = T.timeout(NULL); if (tmp_4_alt_flag_2 == ALT_YES) { current_location.update_lineno(129); /* BTS_Tests_ASCI.ttcn, line 129 */ TTCN_Logger::log_str(TTCN_USER, "Not received NOTIFICATION/NCH. (as expected)"); current_location.update_lineno(130); /* BTS_Tests_ASCI.ttcn, line 130 */ TTCN_Runtime::setverdict(PASS); break; } } if (tmp_4_default_flag == ALT_MAYBE) { tmp_4_default_flag = TTCN_Default::try_altsteps(first_run); if (tmp_4_default_flag == ALT_YES || tmp_4_default_flag == ALT_BREAK) break; else if (tmp_4_default_flag == ALT_REPEAT) goto tmp_4; } current_location.update_lineno(122); /* BTS_Tests_ASCI.ttcn, line 122 */ if (tmp_4_alt_flag_0 == ALT_NO && tmp_4_alt_flag_1 == ALT_NO && tmp_4_alt_flag_2 == ALT_NO && tmp_4_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests_ASCI.ttcn between lines 122 and 132."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(134); /* BTS_Tests_ASCI.ttcn, line 134 */ Misc__Helpers::f__shutdown(cs_0, 134, 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_vbs_notification was stopped."); } return TTCN_Runtime::end_testcase(); } void f__vgcs__cleanup() { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 138, TTCN_Location::LOCATION_FUNCTION, "f_vgcs_cleanup"); current_location.update_lineno(141); /* BTS_Tests_ASCI.ttcn, line 141 */ L1CTL__PortType::f__L1CTL__RESET(BTS__Tests::ConnHdlr_component_L1CTL, L1CTL__PortType::f__L1CTL__RESET_res__type_defval); current_location.update_lineno(142); /* BTS_Tests_ASCI.ttcn, line 142 */ BTS__Tests::f__l1__tune(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::f__l1__tune_ccch__mode_defval); current_location.update_lineno(145); /* BTS_Tests_ASCI.ttcn, line 145 */ BTS__Tests::f__rsl__chan__deact(); } void start_f__vgcs__cleanup(const COMPONENT& component_reference) { TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_vgcs_cleanup("); 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_ASCI", "f_vgcs_cleanup", text_buf); TTCN_Runtime::send_start_component(text_buf); } void f__TC__vgcs__uplink__free__and__busy(const CHARSTRING& ) { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 152, TTCN_Location::LOCATION_FUNCTION, "f_TC_vgcs_uplink_free_and_busy"); current_location.update_lineno(154); /* BTS_Tests_ASCI.ttcn, line 154 */ OCTETSTRING uplink__free(os_3); current_location.update_lineno(155); /* BTS_Tests_ASCI.ttcn, line 155 */ OCTETSTRING uplink__busy(os_4); current_location.update_lineno(157); /* BTS_Tests_ASCI.ttcn, line 157 */ BTS__Tests::f__l1__tune(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::f__l1__tune_ccch__mode_defval); current_location.update_lineno(158); /* BTS_Tests_ASCI.ttcn, line 158 */ RSL__Emulation::RSL__DchanHdlr_component_RSL.clear(); current_location.update_lineno(161); /* BTS_Tests_ASCI.ttcn, line 161 */ TTCN_Logger::log_str(TTCN_USER, "Activating VGCS channel."); current_location.update_lineno(162); /* BTS_Tests_ASCI.ttcn, line 162 */ BTS__Tests::f__rsl__chan__act(RSL__Types::RSL__IE__ChannelMode(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__mode()), BTS__Tests::f__rsl__chan__act_encr__enable_defval, BTS__Tests::f__rsl__chan__act_more__ies_defval, BTS__Tests::f__rsl__chan__act_act__type_defval); current_location.update_lineno(165); /* BTS_Tests_ASCI.ttcn, line 165 */ BTS__Tests::f__l1ctl__est__dchan(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::ConnHdlr_component_g__pars); current_location.update_lineno(168); /* BTS_Tests_ASCI.ttcn, line 168 */ TTCN_Logger::log_str(TTCN_USER, "Send UPLINK FREE."); current_location.update_lineno(169); /* BTS_Tests_ASCI.ttcn, line 169 */ 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), uplink__free), FALSE, NULL); { current_location.update_lineno(170); /* BTS_Tests_ASCI.ttcn, line 170 */ INTEGER i(0); current_location.update_lineno(170); /* BTS_Tests_ASCI.ttcn, line 170 */ for ( ; ; ) { current_location.update_lineno(170); /* BTS_Tests_ASCI.ttcn, line 170 */ if (!(i < 20)) break; current_location.update_lineno(171); /* BTS_Tests_ASCI.ttcn, line 171 */ BTS__Tests::f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__Bter__UI(OCTETSTRING_template(uplink__free)), BTS__Tests::f__l1__exp__lapdm_t_defval); current_location.update_lineno(172); /* BTS_Tests_ASCI.ttcn, line 172 */ TTCN_Logger::log_str(TTCN_USER, "Received UPLINK FREE."); current_location.update_lineno(170); /* BTS_Tests_ASCI.ttcn, line 170 */ { INTEGER tmp_5; ++i; } } } current_location.update_lineno(176); /* BTS_Tests_ASCI.ttcn, line 176 */ TTCN_Logger::log_str(TTCN_USER, "Send UPLINK BUSY."); current_location.update_lineno(177); /* BTS_Tests_ASCI.ttcn, line 177 */ 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), uplink__busy), FALSE, NULL); current_location.update_lineno(178); /* BTS_Tests_ASCI.ttcn, line 178 */ BTS__Tests::f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__UI(INTEGER_template(0), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), OCTETSTRING_template(uplink__busy)), BTS__Tests::f__l1__exp__lapdm_t_defval); current_location.update_lineno(179); /* BTS_Tests_ASCI.ttcn, line 179 */ TTCN_Logger::log_str(TTCN_USER, "Received UPLINK BUSY."); current_location.update_lineno(182); /* BTS_Tests_ASCI.ttcn, line 182 */ f__vgcs__cleanup(); } void start_f__TC__vgcs__uplink__free__and__busy(const COMPONENT& component_reference, const CHARSTRING& id) { TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_uplink_free_and_busy("); 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_ASCI", "f_TC_vgcs_uplink_free_and_busy", text_buf); id.encode_text(text_buf); TTCN_Runtime::send_start_component(text_buf); } verdicttype testcase_TC__vgcs__uplink__free__and__busy(boolean has_timer, double timer_value) { TTCN_Runtime::check_begin_testcase(has_timer, timer_value); TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 184, TTCN_Location::LOCATION_TESTCASE, "TC_vgcs_uplink_free_and_busy"); try { TTCN_Runtime::begin_testcase("BTS_Tests_ASCI", "TC_vgcs_uplink_free_and_busy", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value); current_location.update_lineno(186); /* BTS_Tests_ASCI.ttcn, line 186 */ RSL__Types::RSL__IE__ChannelMode_template ch__mode; current_location.update_lineno(187); /* BTS_Tests_ASCI.ttcn, line 187 */ BTS__Tests::ConnHdlrPars pars; current_location.update_lineno(188); /* BTS_Tests_ASCI.ttcn, line 188 */ COMPONENT vc__conn; current_location.update_lineno(190); /* BTS_Tests_ASCI.ttcn, line 190 */ BTS__Tests::f__init(BTS__Tests::f__init_trx__nr_defval); current_location.update_lineno(192); /* BTS_Tests_ASCI.ttcn, line 192 */ ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F__GROUP, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval); current_location.update_lineno(193); /* BTS_Tests_ASCI.ttcn, line 193 */ pars = BTS__Tests::t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), ch__mode, BTS__Tests::t__Pars_spec_defval, BTS__Tests::t__Pars_trx__nr_defval, BTS__Tests::t__Pars_t__guard_defval).valueof(); current_location.update_lineno(194); /* BTS_Tests_ASCI.ttcn, line 194 */ vc__conn = BTS__Tests::f__start__handler(&f__TC__vgcs__uplink__free__and__busy, pars, BTS__Tests::f__start__handler_pcu__comp_defval, BTS__Tests::f__start__handler_trxc__comp_defval, BTS__Tests::f__start__handler_l1ctl_defval); current_location.update_lineno(195); /* BTS_Tests_ASCI.ttcn, line 195 */ { tmp_9: 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_9; } 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_9; } current_location.update_lineno(195); /* BTS_Tests_ASCI.ttcn, line 195 */ if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests_ASCI.ttcn, line 195."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(197); /* BTS_Tests_ASCI.ttcn, line 197 */ Misc__Helpers::f__shutdown(cs_0, 197, 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_vgcs_uplink_free_and_busy was stopped."); } return TTCN_Runtime::end_testcase(); } void f__vgcs__talker__detect() { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 201, TTCN_Location::LOCATION_FUNCTION, "f_vgcs_talker_detect"); current_location.update_lineno(203); /* BTS_Tests_ASCI.ttcn, line 203 */ OCTETSTRING uplink__free(os_3); current_location.update_lineno(204); /* BTS_Tests_ASCI.ttcn, line 204 */ OCTETSTRING uplink__access(os_5); current_location.update_lineno(205); /* BTS_Tests_ASCI.ttcn, line 205 */ OCTETSTRING_template uplink__grant(op_0); current_location.update_lineno(206); /* BTS_Tests_ASCI.ttcn, line 206 */ RSL__Types::RSL__Message rm; current_location.update_lineno(207); /* BTS_Tests_ASCI.ttcn, line 207 */ INTEGER fn; current_location.update_lineno(209); /* BTS_Tests_ASCI.ttcn, line 209 */ BTS__Tests::f__l1__tune(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::f__l1__tune_ccch__mode_defval); current_location.update_lineno(210); /* BTS_Tests_ASCI.ttcn, line 210 */ RSL__Emulation::RSL__DchanHdlr_component_RSL.clear(); current_location.update_lineno(213); /* BTS_Tests_ASCI.ttcn, line 213 */ TTCN_Logger::log_str(TTCN_USER, "Activating VGCS channel."); current_location.update_lineno(214); /* BTS_Tests_ASCI.ttcn, line 214 */ BTS__Tests::f__rsl__chan__act(RSL__Types::RSL__IE__ChannelMode(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__mode()), BTS__Tests::f__rsl__chan__act_encr__enable_defval, BTS__Tests::f__rsl__chan__act_more__ies_defval, BTS__Tests::f__rsl__chan__act_act__type_defval); current_location.update_lineno(217); /* BTS_Tests_ASCI.ttcn, line 217 */ BTS__Tests::f__l1ctl__est__dchan(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::ConnHdlr_component_g__pars); current_location.update_lineno(220); /* BTS_Tests_ASCI.ttcn, line 220 */ TTCN_Logger::log_str(TTCN_USER, "Send UPLINK FREE."); current_location.update_lineno(221); /* BTS_Tests_ASCI.ttcn, line 221 */ 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), uplink__free), FALSE, NULL); current_location.update_lineno(222); /* BTS_Tests_ASCI.ttcn, line 222 */ BTS__Tests::f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__Bter__UI(OCTETSTRING_template(uplink__free)), BTS__Tests::f__l1__exp__lapdm_t_defval); current_location.update_lineno(223); /* BTS_Tests_ASCI.ttcn, line 223 */ TTCN_Logger::log_str(TTCN_USER, "Received UPLINK FREE."); current_location.update_lineno(226); /* BTS_Tests_ASCI.ttcn, line 226 */ TTCN_Logger::log_str(TTCN_USER, "Send UPLINK ACCESS."); current_location.update_lineno(227); /* BTS_Tests_ASCI.ttcn, line 227 */ fn = L1CTL__PortType::f__L1CTL__RACH(BTS__Tests::ConnHdlr_component_L1CTL, oct2int(uplink__access), L1CTL__PortType::f__L1CTL__RACH_combined_defval, L1CTL__PortType::f__L1CTL__RACH_offset_defval, GSM__Types::RslChannelNr_template(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__nr()), L1CTL__PortType::f__L1CTL__RACH_link__id_defval); current_location.update_lineno(230); /* BTS_Tests_ASCI.ttcn, line 230 */ BTS__Tests::f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__UI(INTEGER_template(0), BOOLEAN_template(LAPDm__Types::cr__MT__CMD), uplink__grant), BTS__Tests::f__l1__exp__lapdm_t_defval); current_location.update_lineno(231); /* BTS_Tests_ASCI.ttcn, line 231 */ TTCN_Logger::log_str(TTCN_USER, "Received VGCS UPLINK GRANT."); current_location.update_lineno(234); /* BTS_Tests_ASCI.ttcn, line 234 */ TIMER T("T", 1.0); current_location.update_lineno(235); /* BTS_Tests_ASCI.ttcn, line 235 */ T.start(); current_location.update_lineno(236); /* BTS_Tests_ASCI.ttcn, line 236 */ { tmp_11: alt_status tmp_11_alt_flag_0 = ALT_MAYBE; alt_status tmp_11_alt_flag_1 = ALT_MAYBE; alt_status tmp_11_alt_flag_2 = ALT_MAYBE; alt_status tmp_11_alt_flag_3 = ALT_MAYBE; alt_status tmp_11_default_flag = ALT_MAYBE; boolean first_run = TRUE; TTCN_Snapshot::take_new(FALSE); for ( ; ; ) { if (tmp_11_alt_flag_0 == ALT_MAYBE) { current_location.update_lineno(237); /* BTS_Tests_ASCI.ttcn, line 237 */ tmp_11_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__TALKER__DET(GSM__Types::RslChannelNr_template(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__nr()), INTEGER_template(ANY_VALUE)), &(rm), any_compref, NULL, NULL, NULL); if (tmp_11_alt_flag_0 == ALT_YES) { current_location.update_lineno(238); /* BTS_Tests_ASCI.ttcn, line 238 */ try { TTCN_Logger::begin_event(TTCN_USER); TTCN_Logger::log_event_str("RSL Talker Detect has been detected: "); rm.log(); TTCN_Logger::end_event(); } catch (...) { TTCN_Logger::finish_event(); throw; } current_location.update_lineno(239); /* BTS_Tests_ASCI.ttcn, line 239 */ T.stop(); break; } } if (tmp_11_alt_flag_1 == ALT_MAYBE) { current_location.update_lineno(241); /* BTS_Tests_ASCI.ttcn, line 241 */ tmp_11_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__CHAN__RQD(OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), GSM__Types::RslChannelNr_template(ANY_VALUE), INTEGER_template(ANY_VALUE)), &(rm), any_compref, NULL, NULL, NULL); if (tmp_11_alt_flag_1 == ALT_YES) { current_location.update_lineno(242); /* BTS_Tests_ASCI.ttcn, line 242 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("RSL_CHAN_RQD was not expected: "),rm.log(),TTCN_Logger::end_event_log2str())); current_location.update_lineno(243); /* BTS_Tests_ASCI.ttcn, line 243 */ T.stop(); break; } } if (tmp_11_alt_flag_2 == ALT_MAYBE) { current_location.update_lineno(245); /* BTS_Tests_ASCI.ttcn, line 245 */ tmp_11_alt_flag_2 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL); if (tmp_11_alt_flag_2 == ALT_YES) { current_location.update_lineno(245); /* BTS_Tests_ASCI.ttcn, line 245 */ goto tmp_11; } } if (tmp_11_alt_flag_3 == ALT_MAYBE) { current_location.update_lineno(246); /* BTS_Tests_ASCI.ttcn, line 246 */ tmp_11_alt_flag_3 = T.timeout(NULL); if (tmp_11_alt_flag_3 == ALT_YES) { current_location.update_lineno(247); /* BTS_Tests_ASCI.ttcn, line 247 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for RSL Talker Detect."),TTCN_Logger::end_event_log2str())); break; } } if (tmp_11_default_flag == ALT_MAYBE) { tmp_11_default_flag = TTCN_Default::try_altsteps(first_run); if (tmp_11_default_flag == ALT_YES || tmp_11_default_flag == ALT_BREAK) break; else if (tmp_11_default_flag == ALT_REPEAT) goto tmp_11; } current_location.update_lineno(236); /* BTS_Tests_ASCI.ttcn, line 236 */ if (tmp_11_alt_flag_0 == ALT_NO && tmp_11_alt_flag_1 == ALT_NO && tmp_11_alt_flag_2 == ALT_NO && tmp_11_alt_flag_3 == ALT_NO && tmp_11_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests_ASCI.ttcn between lines 236 and 249."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } } void start_f__vgcs__talker__detect(const COMPONENT& component_reference) { TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_vgcs_talker_detect("); 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_ASCI", "f_vgcs_talker_detect", text_buf); TTCN_Runtime::send_start_component(text_buf); } void f__TC__vgcs__talker__fail(const CHARSTRING& ) { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 255, TTCN_Location::LOCATION_FUNCTION, "f_TC_vgcs_talker_fail"); current_location.update_lineno(257); /* BTS_Tests_ASCI.ttcn, line 257 */ RSL__Types::RSL__Message rm; current_location.update_lineno(260); /* BTS_Tests_ASCI.ttcn, line 260 */ f__vgcs__talker__detect(); current_location.update_lineno(263); /* BTS_Tests_ASCI.ttcn, line 263 */ L1CTL__PortType::f__L1CTL__RESET(BTS__Tests::ConnHdlr_component_L1CTL, L1CTL__PortType::f__L1CTL__RESET_res__type_defval); current_location.update_lineno(264); /* BTS_Tests_ASCI.ttcn, line 264 */ BTS__Tests::f__l1__tune(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::f__l1__tune_ccch__mode_defval); current_location.update_lineno(267); /* BTS_Tests_ASCI.ttcn, line 267 */ TIMER T("T", 4.0e1); current_location.update_lineno(268); /* BTS_Tests_ASCI.ttcn, line 268 */ T.start(); current_location.update_lineno(269); /* BTS_Tests_ASCI.ttcn, line 269 */ { tmp_12: alt_status tmp_12_alt_flag_0 = ALT_MAYBE; alt_status tmp_12_alt_flag_1 = ALT_MAYBE; alt_status tmp_12_alt_flag_2 = ALT_MAYBE; alt_status tmp_12_default_flag = ALT_MAYBE; boolean first_run = TRUE; TTCN_Snapshot::take_new(FALSE); for ( ; ; ) { if (tmp_12_alt_flag_0 == ALT_MAYBE) { current_location.update_lineno(270); /* BTS_Tests_ASCI.ttcn, line 270 */ tmp_12_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__CONN__FAIL__IND(GSM__Types::RslChannelNr_template(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__nr()), RSL__Types::RSL__Cause_template(ANY_VALUE)), &(rm), any_compref, NULL, NULL, NULL); if (tmp_12_alt_flag_0 == ALT_YES) { current_location.update_lineno(271); /* BTS_Tests_ASCI.ttcn, line 271 */ try { TTCN_Logger::begin_event(TTCN_USER); TTCN_Logger::log_event_str("RSL Conn Fail Ind has been detected as expected: "); rm.log(); TTCN_Logger::end_event(); } catch (...) { TTCN_Logger::finish_event(); throw; } current_location.update_lineno(272); /* BTS_Tests_ASCI.ttcn, line 272 */ T.stop(); break; } } if (tmp_12_alt_flag_1 == ALT_MAYBE) { current_location.update_lineno(274); /* BTS_Tests_ASCI.ttcn, line 274 */ tmp_12_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL); if (tmp_12_alt_flag_1 == ALT_YES) { current_location.update_lineno(274); /* BTS_Tests_ASCI.ttcn, line 274 */ goto tmp_12; } } if (tmp_12_alt_flag_2 == ALT_MAYBE) { current_location.update_lineno(275); /* BTS_Tests_ASCI.ttcn, line 275 */ tmp_12_alt_flag_2 = T.timeout(NULL); if (tmp_12_alt_flag_2 == ALT_YES) { current_location.update_lineno(276); /* BTS_Tests_ASCI.ttcn, line 276 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for RSL Conn Fail Ind."),TTCN_Logger::end_event_log2str())); break; } } if (tmp_12_default_flag == ALT_MAYBE) { tmp_12_default_flag = TTCN_Default::try_altsteps(first_run); if (tmp_12_default_flag == ALT_YES || tmp_12_default_flag == ALT_BREAK) break; else if (tmp_12_default_flag == ALT_REPEAT) goto tmp_12; } current_location.update_lineno(269); /* BTS_Tests_ASCI.ttcn, line 269 */ if (tmp_12_alt_flag_0 == ALT_NO && tmp_12_alt_flag_1 == ALT_NO && tmp_12_alt_flag_2 == ALT_NO && tmp_12_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests_ASCI.ttcn between lines 269 and 278."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(281); /* BTS_Tests_ASCI.ttcn, line 281 */ f__vgcs__cleanup(); } void start_f__TC__vgcs__talker__fail(const COMPONENT& component_reference, const CHARSTRING& id) { TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_talker_fail("); 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_ASCI", "f_TC_vgcs_talker_fail", text_buf); id.encode_text(text_buf); TTCN_Runtime::send_start_component(text_buf); } verdicttype testcase_TC__vgcs__talker__fail(boolean has_timer, double timer_value) { TTCN_Runtime::check_begin_testcase(has_timer, timer_value); TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 283, TTCN_Location::LOCATION_TESTCASE, "TC_vgcs_talker_fail"); try { TTCN_Runtime::begin_testcase("BTS_Tests_ASCI", "TC_vgcs_talker_fail", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value); current_location.update_lineno(285); /* BTS_Tests_ASCI.ttcn, line 285 */ RSL__Types::RSL__IE__ChannelMode_template ch__mode; current_location.update_lineno(286); /* BTS_Tests_ASCI.ttcn, line 286 */ BTS__Tests::ConnHdlrPars pars; current_location.update_lineno(287); /* BTS_Tests_ASCI.ttcn, line 287 */ COMPONENT vc__conn; current_location.update_lineno(289); /* BTS_Tests_ASCI.ttcn, line 289 */ BTS__Tests::f__init(BTS__Tests::f__init_trx__nr_defval); current_location.update_lineno(291); /* BTS_Tests_ASCI.ttcn, line 291 */ ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F__GROUP, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval); current_location.update_lineno(292); /* BTS_Tests_ASCI.ttcn, line 292 */ pars = BTS__Tests::t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), ch__mode, BTS__Tests::t__Pars_spec_defval, BTS__Tests::t__Pars_trx__nr_defval, BTS__Tests::t__Pars_t__guard_defval).valueof(); current_location.update_lineno(293); /* BTS_Tests_ASCI.ttcn, line 293 */ pars.t__guard() = 6.0e1; current_location.update_lineno(294); /* BTS_Tests_ASCI.ttcn, line 294 */ vc__conn = BTS__Tests::f__start__handler(&f__TC__vgcs__talker__fail, pars, BTS__Tests::f__start__handler_pcu__comp_defval, BTS__Tests::f__start__handler_trxc__comp_defval, BTS__Tests::f__start__handler_l1ctl_defval); current_location.update_lineno(295); /* BTS_Tests_ASCI.ttcn, line 295 */ { tmp_17: 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_17; } 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_17; } current_location.update_lineno(295); /* BTS_Tests_ASCI.ttcn, line 295 */ if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests_ASCI.ttcn, line 295."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(297); /* BTS_Tests_ASCI.ttcn, line 297 */ Misc__Helpers::f__shutdown(cs_0, 297, 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_vgcs_talker_fail was stopped."); } return TTCN_Runtime::end_testcase(); } void f__TC__vgcs__talker__est__rel(const CHARSTRING& ) { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 303, TTCN_Location::LOCATION_FUNCTION, "f_TC_vgcs_talker_est_rel"); current_location.update_lineno(305); /* BTS_Tests_ASCI.ttcn, line 305 */ OCTETSTRING uplink__free(os_3); current_location.update_lineno(306); /* BTS_Tests_ASCI.ttcn, line 306 */ OCTETSTRING l3(os_6); current_location.update_lineno(307); /* BTS_Tests_ASCI.ttcn, line 307 */ GSM__Types::RslLinkId_template link__id(GSM__Types::ts__RslLinkID__DCCH(0)); current_location.update_lineno(308); /* BTS_Tests_ASCI.ttcn, line 308 */ RSL__Types::RSL__Message rm; current_location.update_lineno(311); /* BTS_Tests_ASCI.ttcn, line 311 */ f__vgcs__talker__detect(); current_location.update_lineno(314); /* BTS_Tests_ASCI.ttcn, line 314 */ BTS__Tests::f__est__rll__mo(0, link__id.valueof(), l3); current_location.update_lineno(317); /* BTS_Tests_ASCI.ttcn, line 317 */ 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), link__id, RSL__Types::RSL__IE__ReleaseMode_template(RSL__Types::RSL__IE__ReleaseMode::RSL__REL__MODE__LOCAL)), FALSE, NULL); current_location.update_lineno(319); /* BTS_Tests_ASCI.ttcn, line 319 */ TTCN_Logger::log_str(TTCN_USER, "Send UPLINK FREE."); current_location.update_lineno(320); /* BTS_Tests_ASCI.ttcn, line 320 */ 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), link__id, uplink__free), FALSE, NULL); current_location.update_lineno(321); /* BTS_Tests_ASCI.ttcn, line 321 */ BTS__Tests::f__l1__exp__lapdm(LAPDm__Types::tr__LAPDm__Bter__UI(OCTETSTRING_template(uplink__free)), BTS__Tests::f__l1__exp__lapdm_t_defval); current_location.update_lineno(322); /* BTS_Tests_ASCI.ttcn, line 322 */ TTCN_Logger::log_str(TTCN_USER, "Received UPLINK FREE."); current_location.update_lineno(325); /* BTS_Tests_ASCI.ttcn, line 325 */ f__vgcs__cleanup(); } void start_f__TC__vgcs__talker__est__rel(const COMPONENT& component_reference, const CHARSTRING& id) { TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_talker_est_rel("); 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_ASCI", "f_TC_vgcs_talker_est_rel", text_buf); id.encode_text(text_buf); TTCN_Runtime::send_start_component(text_buf); } verdicttype testcase_TC__vgcs__talker__est__rel(boolean has_timer, double timer_value) { TTCN_Runtime::check_begin_testcase(has_timer, timer_value); TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 327, TTCN_Location::LOCATION_TESTCASE, "TC_vgcs_talker_est_rel"); try { TTCN_Runtime::begin_testcase("BTS_Tests_ASCI", "TC_vgcs_talker_est_rel", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value); current_location.update_lineno(329); /* BTS_Tests_ASCI.ttcn, line 329 */ RSL__Types::RSL__IE__ChannelMode_template ch__mode; current_location.update_lineno(330); /* BTS_Tests_ASCI.ttcn, line 330 */ BTS__Tests::ConnHdlrPars pars; current_location.update_lineno(331); /* BTS_Tests_ASCI.ttcn, line 331 */ COMPONENT vc__conn; current_location.update_lineno(333); /* BTS_Tests_ASCI.ttcn, line 333 */ BTS__Tests::f__init(BTS__Tests::f__init_trx__nr_defval); current_location.update_lineno(335); /* BTS_Tests_ASCI.ttcn, line 335 */ ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F__GROUP, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval); current_location.update_lineno(336); /* BTS_Tests_ASCI.ttcn, line 336 */ pars = BTS__Tests::t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), ch__mode, BTS__Tests::t__Pars_spec_defval, BTS__Tests::t__Pars_trx__nr_defval, BTS__Tests::t__Pars_t__guard_defval).valueof(); current_location.update_lineno(337); /* BTS_Tests_ASCI.ttcn, line 337 */ vc__conn = BTS__Tests::f__start__handler(&f__TC__vgcs__talker__est__rel, pars, BTS__Tests::f__start__handler_pcu__comp_defval, BTS__Tests::f__start__handler_trxc__comp_defval, BTS__Tests::f__start__handler_l1ctl_defval); current_location.update_lineno(338); /* BTS_Tests_ASCI.ttcn, line 338 */ { tmp_21: 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_21; } 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_21; } current_location.update_lineno(338); /* BTS_Tests_ASCI.ttcn, line 338 */ if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests_ASCI.ttcn, line 338."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(340); /* BTS_Tests_ASCI.ttcn, line 340 */ Misc__Helpers::f__shutdown(cs_0, 340, 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_vgcs_talker_est_rel was stopped."); } return TTCN_Runtime::end_testcase(); } void f__TC__vgcs__listener__det(const CHARSTRING& ) { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 343, TTCN_Location::LOCATION_FUNCTION, "f_TC_vgcs_listener_det"); current_location.update_lineno(345); /* BTS_Tests_ASCI.ttcn, line 345 */ OCTETSTRING uplink__access(os_7); current_location.update_lineno(346); /* BTS_Tests_ASCI.ttcn, line 346 */ RSL__Types::RSL__Message rm; current_location.update_lineno(347); /* BTS_Tests_ASCI.ttcn, line 347 */ INTEGER fn; current_location.update_lineno(349); /* BTS_Tests_ASCI.ttcn, line 349 */ BTS__Tests::f__l1__tune(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::f__l1__tune_ccch__mode_defval); current_location.update_lineno(350); /* BTS_Tests_ASCI.ttcn, line 350 */ RSL__Emulation::RSL__DchanHdlr_component_RSL.clear(); current_location.update_lineno(353); /* BTS_Tests_ASCI.ttcn, line 353 */ TTCN_Logger::log_str(TTCN_USER, "Activating VGCS channel."); current_location.update_lineno(354); /* BTS_Tests_ASCI.ttcn, line 354 */ BTS__Tests::f__rsl__chan__act(RSL__Types::RSL__IE__ChannelMode(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__mode()), BTS__Tests::f__rsl__chan__act_encr__enable_defval, BTS__Tests::f__rsl__chan__act_more__ies_defval, BTS__Tests::f__rsl__chan__act_act__type_defval); current_location.update_lineno(357); /* BTS_Tests_ASCI.ttcn, line 357 */ BTS__Tests::f__l1ctl__est__dchan(BTS__Tests::ConnHdlr_component_L1CTL, BTS__Tests::ConnHdlr_component_g__pars); current_location.update_lineno(360); /* BTS_Tests_ASCI.ttcn, line 360 */ TTCN_Logger::log_str(TTCN_USER, "Send UPLINK ACCESS."); current_location.update_lineno(361); /* BTS_Tests_ASCI.ttcn, line 361 */ fn = L1CTL__PortType::f__L1CTL__RACH(BTS__Tests::ConnHdlr_component_L1CTL, oct2int(uplink__access), L1CTL__PortType::f__L1CTL__RACH_combined_defval, L1CTL__PortType::f__L1CTL__RACH_offset_defval, GSM__Types::RslChannelNr_template(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__nr()), L1CTL__PortType::f__L1CTL__RACH_link__id_defval); current_location.update_lineno(364); /* BTS_Tests_ASCI.ttcn, line 364 */ TIMER T("T", 2.0); current_location.update_lineno(365); /* BTS_Tests_ASCI.ttcn, line 365 */ T.start(); current_location.update_lineno(366); /* BTS_Tests_ASCI.ttcn, line 366 */ { tmp_23: alt_status tmp_23_alt_flag_0 = ALT_MAYBE; alt_status tmp_23_alt_flag_1 = ALT_MAYBE; alt_status tmp_23_alt_flag_2 = ALT_MAYBE; alt_status tmp_23_alt_flag_3 = ALT_MAYBE; alt_status tmp_23_default_flag = ALT_MAYBE; boolean first_run = TRUE; TTCN_Snapshot::take_new(FALSE); for ( ; ; ) { if (tmp_23_alt_flag_0 == ALT_MAYBE) { current_location.update_lineno(367); /* BTS_Tests_ASCI.ttcn, line 367 */ tmp_23_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__LISTENER__DET(GSM__Types::RslChannelNr_template(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__nr()), INTEGER_template(ANY_VALUE)), &(rm), any_compref, NULL, NULL, NULL); if (tmp_23_alt_flag_0 == ALT_YES) { current_location.update_lineno(368); /* BTS_Tests_ASCI.ttcn, line 368 */ try { TTCN_Logger::begin_event(TTCN_USER); TTCN_Logger::log_event_str("RSL Talker Listener has been detected: "); rm.log(); TTCN_Logger::end_event(); } catch (...) { TTCN_Logger::finish_event(); throw; } current_location.update_lineno(369); /* BTS_Tests_ASCI.ttcn, line 369 */ T.stop(); break; } } if (tmp_23_alt_flag_1 == ALT_MAYBE) { current_location.update_lineno(371); /* BTS_Tests_ASCI.ttcn, line 371 */ tmp_23_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__CHAN__RQD(OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), GSM__Types::RslChannelNr_template(ANY_VALUE), INTEGER_template(ANY_VALUE)), &(rm), any_compref, NULL, NULL, NULL); if (tmp_23_alt_flag_1 == ALT_YES) { current_location.update_lineno(372); /* BTS_Tests_ASCI.ttcn, line 372 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("RSL_CHAN_RQD was not expected: "),rm.log(),TTCN_Logger::end_event_log2str())); current_location.update_lineno(373); /* BTS_Tests_ASCI.ttcn, line 373 */ T.stop(); break; } } if (tmp_23_alt_flag_2 == ALT_MAYBE) { current_location.update_lineno(375); /* BTS_Tests_ASCI.ttcn, line 375 */ tmp_23_alt_flag_2 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL); if (tmp_23_alt_flag_2 == ALT_YES) { current_location.update_lineno(375); /* BTS_Tests_ASCI.ttcn, line 375 */ goto tmp_23; } } if (tmp_23_alt_flag_3 == ALT_MAYBE) { current_location.update_lineno(376); /* BTS_Tests_ASCI.ttcn, line 376 */ tmp_23_alt_flag_3 = T.timeout(NULL); if (tmp_23_alt_flag_3 == ALT_YES) { current_location.update_lineno(377); /* BTS_Tests_ASCI.ttcn, line 377 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("Timeout waiting for RSL Listener Detect."),TTCN_Logger::end_event_log2str())); break; } } if (tmp_23_default_flag == ALT_MAYBE) { tmp_23_default_flag = TTCN_Default::try_altsteps(first_run); if (tmp_23_default_flag == ALT_YES || tmp_23_default_flag == ALT_BREAK) break; else if (tmp_23_default_flag == ALT_REPEAT) goto tmp_23; } current_location.update_lineno(366); /* BTS_Tests_ASCI.ttcn, line 366 */ if (tmp_23_alt_flag_0 == ALT_NO && tmp_23_alt_flag_1 == ALT_NO && tmp_23_alt_flag_2 == ALT_NO && tmp_23_alt_flag_3 == ALT_NO && tmp_23_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests_ASCI.ttcn between lines 366 and 379."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(382); /* BTS_Tests_ASCI.ttcn, line 382 */ TTCN_Logger::log_str(TTCN_USER, "Send second UPLINK ACCESS."); current_location.update_lineno(383); /* BTS_Tests_ASCI.ttcn, line 383 */ fn = L1CTL__PortType::f__L1CTL__RACH(BTS__Tests::ConnHdlr_component_L1CTL, oct2int(uplink__access), L1CTL__PortType::f__L1CTL__RACH_combined_defval, L1CTL__PortType::f__L1CTL__RACH_offset_defval, GSM__Types::RslChannelNr_template(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__nr()), L1CTL__PortType::f__L1CTL__RACH_link__id_defval); current_location.update_lineno(386); /* BTS_Tests_ASCI.ttcn, line 386 */ T.start(); current_location.update_lineno(387); /* BTS_Tests_ASCI.ttcn, line 387 */ { tmp_25: alt_status tmp_25_alt_flag_0 = ALT_MAYBE; alt_status tmp_25_alt_flag_1 = ALT_MAYBE; alt_status tmp_25_alt_flag_2 = ALT_MAYBE; alt_status tmp_25_alt_flag_3 = ALT_MAYBE; alt_status tmp_25_default_flag = ALT_MAYBE; boolean first_run = TRUE; TTCN_Snapshot::take_new(FALSE); for ( ; ; ) { if (tmp_25_alt_flag_0 == ALT_MAYBE) { current_location.update_lineno(388); /* BTS_Tests_ASCI.ttcn, line 388 */ tmp_25_alt_flag_0 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__LISTENER__DET(GSM__Types::RslChannelNr_template(const_cast< const BTS__Tests::ConnHdlrPars&>(BTS__Tests::ConnHdlr_component_g__pars).chan__nr()), INTEGER_template(ANY_VALUE)), NULL, any_compref, NULL, NULL, NULL); if (tmp_25_alt_flag_0 == ALT_YES) { current_location.update_lineno(389); /* BTS_Tests_ASCI.ttcn, line 389 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("RSL Listener Detect has been detected, but not expected!"),TTCN_Logger::end_event_log2str())); current_location.update_lineno(390); /* BTS_Tests_ASCI.ttcn, line 390 */ T.stop(); break; } } if (tmp_25_alt_flag_1 == ALT_MAYBE) { current_location.update_lineno(392); /* BTS_Tests_ASCI.ttcn, line 392 */ tmp_25_alt_flag_1 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(RSL__Types::tr__RSL__CHAN__RQD(OCTETSTRING_template(ANY_VALUE), INTEGER_template(ANY_VALUE), GSM__Types::RslChannelNr_template(ANY_VALUE), INTEGER_template(ANY_VALUE)), &(rm), any_compref, NULL, NULL, NULL); if (tmp_25_alt_flag_1 == ALT_YES) { current_location.update_lineno(393); /* BTS_Tests_ASCI.ttcn, line 393 */ TTCN_Runtime::setverdict(FAIL,(TTCN_Logger::begin_event_log2str(),TTCN_Logger::log_event_str("RSL_CHAN_RQD was not expected: "),rm.log(),TTCN_Logger::end_event_log2str())); current_location.update_lineno(394); /* BTS_Tests_ASCI.ttcn, line 394 */ T.stop(); break; } } if (tmp_25_alt_flag_2 == ALT_MAYBE) { current_location.update_lineno(396); /* BTS_Tests_ASCI.ttcn, line 396 */ tmp_25_alt_flag_2 = RSL__Emulation::RSL__DchanHdlr_component_RSL.receive(any_compref, NULL, NULL, NULL); if (tmp_25_alt_flag_2 == ALT_YES) { current_location.update_lineno(396); /* BTS_Tests_ASCI.ttcn, line 396 */ goto tmp_25; } } if (tmp_25_alt_flag_3 == ALT_MAYBE) { current_location.update_lineno(397); /* BTS_Tests_ASCI.ttcn, line 397 */ tmp_25_alt_flag_3 = T.timeout(NULL); if (tmp_25_alt_flag_3 == ALT_YES) { current_location.update_lineno(398); /* BTS_Tests_ASCI.ttcn, line 398 */ TTCN_Logger::log_str(TTCN_USER, "Timeout waiting for RSL Listener Detect, as expected."); break; } } if (tmp_25_default_flag == ALT_MAYBE) { tmp_25_default_flag = TTCN_Default::try_altsteps(first_run); if (tmp_25_default_flag == ALT_YES || tmp_25_default_flag == ALT_BREAK) break; else if (tmp_25_default_flag == ALT_REPEAT) goto tmp_25; } current_location.update_lineno(387); /* BTS_Tests_ASCI.ttcn, line 387 */ if (tmp_25_alt_flag_0 == ALT_NO && tmp_25_alt_flag_1 == ALT_NO && tmp_25_alt_flag_2 == ALT_NO && tmp_25_alt_flag_3 == ALT_NO && tmp_25_default_flag == ALT_NO) TTCN_error("None of the branches can be chosen in the alt statement in file BTS_Tests_ASCI.ttcn between lines 387 and 400."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(403); /* BTS_Tests_ASCI.ttcn, line 403 */ f__vgcs__cleanup(); } void start_f__TC__vgcs__listener__det(const COMPONENT& component_reference, const CHARSTRING& id) { TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_listener_det("); 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_ASCI", "f_TC_vgcs_listener_det", text_buf); id.encode_text(text_buf); TTCN_Runtime::send_start_component(text_buf); } verdicttype testcase_TC__vgcs__listener__det(boolean has_timer, double timer_value) { TTCN_Runtime::check_begin_testcase(has_timer, timer_value); TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 405, TTCN_Location::LOCATION_TESTCASE, "TC_vgcs_listener_det"); try { TTCN_Runtime::begin_testcase("BTS_Tests_ASCI", "TC_vgcs_listener_det", "BTS_Tests", "test_CT", "BTS_Tests", "test_CT", has_timer, timer_value); current_location.update_lineno(407); /* BTS_Tests_ASCI.ttcn, line 407 */ RSL__Types::RSL__IE__ChannelMode_template ch__mode; current_location.update_lineno(408); /* BTS_Tests_ASCI.ttcn, line 408 */ BTS__Tests::ConnHdlrPars pars; current_location.update_lineno(409); /* BTS_Tests_ASCI.ttcn, line 409 */ COMPONENT vc__conn; current_location.update_lineno(411); /* BTS_Tests_ASCI.ttcn, line 411 */ BTS__Tests::f__init(BTS__Tests::f__init_trx__nr_defval); current_location.update_lineno(413); /* BTS_Tests_ASCI.ttcn, line 413 */ ch__mode = RSL__Types::ts__RSL__ChanMode(RSL__Types::RSL__ChanRateType::RSL__CHRT__TCH__F__GROUP, RSL__Types::RSL__ChanModeOct6SpeechAlgo::RSL__CMOD__SP__GSM1, RSL__Types::ts__RSL__ChanMode_dtx__downlink_defval); current_location.update_lineno(414); /* BTS_Tests_ASCI.ttcn, line 414 */ pars = BTS__Tests::t__Pars(GSM__Types::t__RslChanNr__Bm(INTEGER_template(1)), ch__mode, BTS__Tests::t__Pars_spec_defval, BTS__Tests::t__Pars_trx__nr_defval, BTS__Tests::t__Pars_t__guard_defval).valueof(); current_location.update_lineno(415); /* BTS_Tests_ASCI.ttcn, line 415 */ vc__conn = BTS__Tests::f__start__handler(&f__TC__vgcs__listener__det, pars, BTS__Tests::f__start__handler_pcu__comp_defval, BTS__Tests::f__start__handler_trxc__comp_defval, BTS__Tests::f__start__handler_l1ctl_defval); current_location.update_lineno(416); /* BTS_Tests_ASCI.ttcn, line 416 */ { tmp_29: 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_29; } 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_29; } current_location.update_lineno(416); /* BTS_Tests_ASCI.ttcn, line 416 */ if (alt_flag == ALT_NO && default_flag == ALT_NO) TTCN_error("Stand-alone done statement failed in file BTS_Tests_ASCI.ttcn, line 416."); TTCN_Snapshot::take_new(TRUE); first_run = FALSE; } } current_location.update_lineno(418); /* BTS_Tests_ASCI.ttcn, line 418 */ Misc__Helpers::f__shutdown(cs_0, 418, 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_vgcs_listener_det was stopped."); } return TTCN_Runtime::end_testcase(); } void module_control_part() { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 421, TTCN_Location::LOCATION_CONTROLPART, "BTS_Tests_ASCI"); TTCN_Runtime::begin_controlpart("BTS_Tests_ASCI"); TTCN_ControlPartEnder ender_("BTS_Tests_ASCI"); current_location.update_lineno(422); /* BTS_Tests_ASCI.ttcn, line 422 */ testcase_TC__vbs__notification(FALSE, 0.0); current_location.update_lineno(423); /* BTS_Tests_ASCI.ttcn, line 423 */ testcase_TC__vgcs__uplink__free__and__busy(FALSE, 0.0); current_location.update_lineno(424); /* BTS_Tests_ASCI.ttcn, line 424 */ testcase_TC__vgcs__talker__fail(FALSE, 0.0); current_location.update_lineno(425); /* BTS_Tests_ASCI.ttcn, line 425 */ testcase_TC__vgcs__talker__est__rel(FALSE, 0.0); current_location.update_lineno(426); /* BTS_Tests_ASCI.ttcn, line 426 */ testcase_TC__vgcs__listener__det(FALSE, 0.0); } /* Bodies of static functions */ void pre_init_module() { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 0, TTCN_Location::LOCATION_UNKNOWN, "BTS_Tests_ASCI"); BTS__Tests::module_object.pre_init_module(); module_object.add_function("f_init_nch_position", (genericfunc_t)&f__init__nch__position, (genericfunc_t)&start_f__init__nch__position); module_object.add_function("bool2bit1", (genericfunc_t)&bool2bit1, NULL); module_object.add_function("f_enc_gcr", (genericfunc_t)&f__enc__gcr, NULL); module_object.add_testcase_nonpard("TC_vbs_notification", testcase_TC__vbs__notification); module_object.add_function("f_vgcs_cleanup", (genericfunc_t)&f__vgcs__cleanup, (genericfunc_t)&start_f__vgcs__cleanup); module_object.add_function("f_TC_vgcs_uplink_free_and_busy", (genericfunc_t)&f__TC__vgcs__uplink__free__and__busy, (genericfunc_t)&start_f__TC__vgcs__uplink__free__and__busy); module_object.add_testcase_nonpard("TC_vgcs_uplink_free_and_busy", testcase_TC__vgcs__uplink__free__and__busy); module_object.add_function("f_vgcs_talker_detect", (genericfunc_t)&f__vgcs__talker__detect, (genericfunc_t)&start_f__vgcs__talker__detect); module_object.add_function("f_TC_vgcs_talker_fail", (genericfunc_t)&f__TC__vgcs__talker__fail, (genericfunc_t)&start_f__TC__vgcs__talker__fail); module_object.add_testcase_nonpard("TC_vgcs_talker_fail", testcase_TC__vgcs__talker__fail); module_object.add_function("f_TC_vgcs_talker_est_rel", (genericfunc_t)&f__TC__vgcs__talker__est__rel, (genericfunc_t)&start_f__TC__vgcs__talker__est__rel); module_object.add_testcase_nonpard("TC_vgcs_talker_est_rel", testcase_TC__vgcs__talker__est__rel); module_object.add_function("f_TC_vgcs_listener_det", (genericfunc_t)&f__TC__vgcs__listener__det, (genericfunc_t)&start_f__TC__vgcs__listener__det); module_object.add_testcase_nonpard("TC_vgcs_listener_det", testcase_TC__vgcs__listener__det); } void post_init_module() { TTCN_Location current_location("BTS_Tests_ASCI.ttcn", 0, TTCN_Location::LOCATION_UNKNOWN, "BTS_Tests_ASCI"); BTS__Tests::module_object.post_init_module(); current_location.update_lineno(62); /* BTS_Tests_ASCI.ttcn, line 62 */ const_f__enc__gcr_ack__required_defval = FALSE; } boolean start_ptc_function(const char *function_name, Text_Buf& function_arguments) { if (!strcmp(function_name, "f_init_nch_position")) { TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_init_nch_position()."); TTCN_Runtime::function_started(function_arguments); f__init__nch__position(); TTCN_Runtime::function_finished("f_init_nch_position"); return TRUE; } else if (!strcmp(function_name, "f_vgcs_cleanup")) { TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_vgcs_cleanup()."); TTCN_Runtime::function_started(function_arguments); f__vgcs__cleanup(); TTCN_Runtime::function_finished("f_vgcs_cleanup"); return TRUE; } else if (!strcmp(function_name, "f_TC_vgcs_uplink_free_and_busy")) { CHARSTRING id; id.decode_text(function_arguments); TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_uplink_free_and_busy("); id.log(); TTCN_Logger::log_event_str(")."); TTCN_Logger::end_event(); TTCN_Runtime::function_started(function_arguments); f__TC__vgcs__uplink__free__and__busy(id); TTCN_Runtime::function_finished("f_TC_vgcs_uplink_free_and_busy"); return TRUE; } else if (!strcmp(function_name, "f_vgcs_talker_detect")) { TTCN_Logger::log_str(TTCN_Logger::PARALLEL_PTC, "Starting function f_vgcs_talker_detect()."); TTCN_Runtime::function_started(function_arguments); f__vgcs__talker__detect(); TTCN_Runtime::function_finished("f_vgcs_talker_detect"); return TRUE; } else if (!strcmp(function_name, "f_TC_vgcs_talker_fail")) { CHARSTRING id; id.decode_text(function_arguments); TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_talker_fail("); id.log(); TTCN_Logger::log_event_str(")."); TTCN_Logger::end_event(); TTCN_Runtime::function_started(function_arguments); f__TC__vgcs__talker__fail(id); TTCN_Runtime::function_finished("f_TC_vgcs_talker_fail"); return TRUE; } else if (!strcmp(function_name, "f_TC_vgcs_talker_est_rel")) { CHARSTRING id; id.decode_text(function_arguments); TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_talker_est_rel("); id.log(); TTCN_Logger::log_event_str(")."); TTCN_Logger::end_event(); TTCN_Runtime::function_started(function_arguments); f__TC__vgcs__talker__est__rel(id); TTCN_Runtime::function_finished("f_TC_vgcs_talker_est_rel"); return TRUE; } else if (!strcmp(function_name, "f_TC_vgcs_listener_det")) { CHARSTRING id; id.decode_text(function_arguments); TTCN_Logger::begin_event(TTCN_Logger::PARALLEL_PTC); TTCN_Logger::log_event_str("Starting function f_TC_vgcs_listener_det("); id.log(); TTCN_Logger::log_event_str(")."); TTCN_Logger::end_event(); TTCN_Runtime::function_started(function_arguments); f__TC__vgcs__listener__det(id); TTCN_Runtime::function_finished("f_TC_vgcs_listener_det"); return TRUE; } else return FALSE; } } /* end of namespace */