Change in ...osmo-pcu[master]: tests: TbfTest: Unify stderr and stdout to ease debugging

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

pespin gerrit-no-reply at lists.osmocom.org
Mon Sep 9 12:20:06 UTC 2019


pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/15452


Change subject: tests: TbfTest: Unify stderr and stdout to ease debugging
......................................................................

tests: TbfTest: Unify stderr and stdout to ease debugging

osmo-pcu code is really verbose, and since log lines printing start and
end of tests are sent to a different file, it's really difficult to
understand which test outputs what.

Change-Id: I3e887158e2c9585c360d44f12f995f55861170f2
---
M tests/Makefile.am
M tests/tbf/TbfTest.cpp
M tests/tbf/TbfTest.err
D tests/tbf/TbfTest.ok
M tests/testsuite.at
5 files changed, 153 insertions(+), 154 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/52/15452/1

diff --git a/tests/Makefile.am b/tests/Makefile.am
index 887200d..b85635f 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -130,7 +130,7 @@
 	testsuite.at $(srcdir)/package.m4 $(TESTSUITE)	\
 	rlcmac/RLCMACTest.ok rlcmac/RLCMACTest.err \
 	alloc/AllocTest.ok alloc/AllocTest.err \
-	tbf/TbfTest.ok tbf/TbfTest.err \
+	tbf/TbfTest.err \
 	bitcomp/BitcompTest.ok bitcomp/BitcompTest.err \
 	types/TypesTest.ok types/TypesTest.err \
 	ms/MsTest.ok ms/MsTest.err alloc/MslotTest.ok \
diff --git a/tests/tbf/TbfTest.cpp b/tests/tbf/TbfTest.cpp
index 8d1b344..5bf94b5 100644
--- a/tests/tbf/TbfTest.cpp
+++ b/tests/tbf/TbfTest.cpp
@@ -61,12 +61,12 @@
 static void test_tbf_base()
 {
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	OSMO_ASSERT(GPRS_RLCMAC_DL_TBF == reverse(GPRS_RLCMAC_UL_TBF));
 	OSMO_ASSERT(GPRS_RLCMAC_UL_TBF == reverse(GPRS_RLCMAC_DL_TBF));
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_tlli_update()
@@ -74,7 +74,7 @@
 	BTS the_bts;
 	GprsMs *ms, *ms_new;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	the_bts.bts_data()->alloc_algorithm = alloc_algorithm_a;
 	the_bts.bts_data()->trx[0].pdch[2].enable();
@@ -134,7 +134,7 @@
 	OSMO_ASSERT(ul_tbf->ta() == 6);
 	OSMO_ASSERT(dl_tbf->ta() == 6);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static uint8_t llc_data[200];
@@ -241,7 +241,7 @@
 
 	uint8_t rbb[64/8];
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	gprs_rlcmac_dl_tbf *dl_tbf;
 	gprs_rlcmac_tbf *new_tbf;
@@ -297,7 +297,7 @@
 		OSMO_ASSERT(ms->dl_tbf() == NULL);
 	}
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 /* Receive an ACK */
@@ -322,7 +322,7 @@
 
 	gprs_rlcmac_dl_tbf *dl_tbf;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bts = the_bts.bts_data();
 
@@ -373,7 +373,7 @@
 	TBF_SET_ASS_STATE_DL(dl_tbf, GPRS_RLCMAC_DL_ASS_NONE);
 	check_tbf(dl_tbf);
 	tbf_free(dl_tbf);
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_imsi()
@@ -386,7 +386,7 @@
 
 	gprs_rlcmac_dl_tbf *dl_tbf[2];
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no);
 
@@ -431,7 +431,7 @@
 	ms1 = the_bts.ms_store().get_ms(0, 0, "001001000000002");
 	OSMO_ASSERT(ms1 == NULL);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_exhaustion()
@@ -445,7 +445,7 @@
 
 	uint8_t buf[256] = {0};
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bssgp_nsi = gprs_ns_instantiate(&gprs_bssgp_ns_cb, tall_pcu_ctx);
 	if (!bssgp_nsi) {
@@ -472,7 +472,7 @@
 	}
 
 	OSMO_ASSERT(rc == -EBUSY);
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 
 	gprs_bssgp_destroy();
 }
@@ -497,7 +497,7 @@
 		abort();
 	}
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bts = the_bts.bts_data();
 	setup_bts(&the_bts, ts_no);
@@ -550,13 +550,13 @@
 		msg = ms->dl_tbf()->create_dl_acked_block(fn += 4, 7);
 		fprintf(stderr, "MSG = %s\n", msgb_hexdump(msg));
 		if (!msgb_eq_data_print(msg, exp[expected_data - 1], GSM_MACBLOCK_LEN))
-			printf("%s failed at %u\n", __func__, expected_data);
+			fprintf(stderr, "%s failed at %u\n", __func__, expected_data);
 
 		expected_data += 1;
 	}
 	OSMO_ASSERT(expected_data-1 == 3);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 
 	gprs_bssgp_destroy();
 }
@@ -756,7 +756,7 @@
 	};
 
 	if (!msgb_eq_data_print(msg1, exp1, GSM_MACBLOCK_LEN)) {
-		printf("%s test failed on 1st segment!\n", __func__);
+		fprintf(stderr, "%s test failed on 1st segment!\n", __func__);
 		return NULL;
 	}
 
@@ -783,7 +783,7 @@
 	};
 
 	if (!msgb_eq_data_print(msg1, exp2, GSM_MACBLOCK_LEN)) {
-		printf("%s test failed on 2nd segment!\n", __func__);
+		fprintf(stderr, "%s test failed on 2nd segment!\n", __func__);
 		return NULL;
 	}
 	return ul_tbf;
@@ -1712,7 +1712,7 @@
 	uint16_t qta = 31;
 	gprs_rlcmac_ul_tbf *ul_tbf;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no);
 
@@ -1721,7 +1721,7 @@
 	print_ta_tlli(ul_tbf, true);
 	send_dl_data(&the_bts, tlli, imsi, (const uint8_t *)"TEST", 4);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_egprs_two_phase_puan(void)
@@ -1738,7 +1738,7 @@
 	gprs_rlcmac_ul_tbf *ul_tbf;
 	uint8_t test_data[256];
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	memset(test_data, 1, sizeof(test_data));
 
@@ -1775,7 +1775,7 @@
 	print_ta_tlli(ul_tbf, true);
 	send_dl_data(&the_bts, tlli, imsi, test_data, sizeof(test_data));
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 /*
  * Trigger rach for single block
@@ -1787,7 +1787,7 @@
 	uint16_t qta = 31;
 	int ts_no = 7;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 4);
 
@@ -1806,7 +1806,7 @@
 
 	OSMO_ASSERT(rc == -EINVAL);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 /*
@@ -1819,7 +1819,7 @@
 	uint16_t qta = 31;
 	int ts_no = 7;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 4);
 
@@ -1850,7 +1850,7 @@
 
 	OSMO_ASSERT(rc == -EBUSY);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_immediate_assign_rej()
@@ -1870,7 +1870,7 @@
 	uint8_t ms_class = 1;
 	gprs_rlcmac_ul_tbf *ul_tbf;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 4);
 
@@ -1880,7 +1880,7 @@
 	print_ta_tlli(ul_tbf, true);
 	send_dl_data(&the_bts, tlli, imsi, (const uint8_t *)"TEST", 4);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static inline void print_ms(const GprsMs *ms, bool old)
@@ -1902,7 +1902,7 @@
 	gprs_rlcmac_ul_tbf *ul_tbf;
 	GprsMs *ms, *ms1, *ms2;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 4);
 
@@ -1950,7 +1950,7 @@
 	ms = the_bts.ms_by_tlli(tlli2);
 	OSMO_ASSERT(ms == ms2);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_dl_flow_and_rach_two_phase()
@@ -1966,7 +1966,7 @@
 	gprs_rlcmac_dl_tbf *dl_tbf;
 	GprsMs *ms, *ms1, *ms2;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 1);
 
@@ -2008,7 +2008,7 @@
 	/* No queued packets should be lost */
 	OSMO_ASSERT(ms->llc_queue()->size() == 2);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 
@@ -2025,7 +2025,7 @@
 	gprs_rlcmac_dl_tbf *dl_tbf;
 	GprsMs *ms, *ms1, *ms2;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 1);
 
@@ -2067,7 +2067,7 @@
 	/* No queued packets should be lost */
 	OSMO_ASSERT(ms->llc_queue()->size() == 2);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_dl_reuse()
@@ -2085,7 +2085,7 @@
 	unsigned i;
 	RlcMacUplink_t ulreq = {0};
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 1);
 
@@ -2165,7 +2165,7 @@
 	OSMO_ASSERT(ms2->dl_tbf());
 	OSMO_ASSERT(ms2->dl_tbf()->state_is(GPRS_RLCMAC_FINISHED));
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_gprs_egprs()
@@ -2181,7 +2181,7 @@
 
 	uint8_t buf[256] = {0};
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bssgp_nsi = gprs_ns_instantiate(&gprs_bssgp_ns_cb, tall_pcu_ctx);
 	if (!bssgp_nsi) {
@@ -2202,7 +2202,7 @@
 		delay_csec, buf, sizeof(buf));
 
 	OSMO_ASSERT(rc == -EBUSY);
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 
 	gprs_bssgp_destroy();
 }
@@ -2230,7 +2230,7 @@
 		tbf_free(dl_tbf);
 
 	if (end) {
-		printf("=== end %s ===\n", test);
+		fprintf(stderr, "=== end %s ===\n", test);
 		gprs_bssgp_destroy();
 	}
 }
@@ -2243,7 +2243,7 @@
 	uint8_t ms_class = 12;
 	gprs_rlcmac_dl_tbf *dl_tbf;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bssgp_nsi = gprs_ns_instantiate(&gprs_bssgp_ns_cb, tall_pcu_ctx);
 	if (!bssgp_nsi) {
@@ -2286,7 +2286,7 @@
 	uint8_t ms_class = 11;
 	gprs_rlcmac_dl_tbf *dl_tbf;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bssgp_nsi = gprs_ns_instantiate(&gprs_bssgp_ns_cb, tall_pcu_ctx);
 	if (!bssgp_nsi) {
@@ -2334,7 +2334,7 @@
 	gprs_rlcmac_ul_tbf *ul_tbf;
 	uint8_t test_data[256];
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	memset(test_data, 1, sizeof(test_data));
 
@@ -2348,7 +2348,7 @@
 	print_ta_tlli(ul_tbf, true);
 	send_dl_data(&the_bts, tlli, imsi, test_data, sizeof(test_data));
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static gprs_rlcmac_ul_tbf *tbf_li_decoding(BTS *the_bts,
@@ -2479,7 +2479,7 @@
 	gprs_rlcmac_ul_tbf *ul_tbf;
 	uint8_t test_data[256];
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	memset(test_data, 1, sizeof(test_data));
 
@@ -2493,7 +2493,7 @@
 	print_ta_tlli(ul_tbf, true);
 	send_dl_data(&the_bts, tlli, imsi, test_data, sizeof(test_data));
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 /*
@@ -2522,7 +2522,7 @@
 
 	memset(&ul_control_block, 0, sizeof(RlcMacUplink_t));
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bts = the_bts.bts_data();
 
@@ -2589,7 +2589,7 @@
 
 	bitvec_free(block);
 	tbf_free(dl_tbf);
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_egprs_two_phase_spb(void)
@@ -2605,7 +2605,7 @@
 	gprs_rlcmac_ul_tbf *ul_tbf;
 	uint8_t test_data[256];
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	memset(test_data, 1, sizeof(test_data));
 
@@ -2619,7 +2619,7 @@
 	print_ta_tlli(ul_tbf, true);
 	send_dl_data(&the_bts, tlli, imsi, test_data, sizeof(test_data));
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_egprs_two_phase()
@@ -2635,7 +2635,7 @@
 	gprs_rlcmac_ul_tbf *ul_tbf;
 	uint8_t test_data[256];
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	memset(test_data, 1, sizeof(test_data));
 
@@ -2649,7 +2649,7 @@
 	print_ta_tlli(ul_tbf, true);
 	send_dl_data(&the_bts, tlli, imsi, test_data, sizeof(test_data));
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void establish_and_use_egprs_dl_tbf(BTS *the_bts, int mcs)
@@ -2666,7 +2666,7 @@
 
 	gprs_rlcmac_dl_tbf *dl_tbf;
 
-	printf("Testing MCS-%d\n", mcs);
+	fprintf(stderr, "Testing MCS-%d\n", mcs);
 
 	memset(test_data, 1, sizeof(test_data));
 	the_bts->bts_data()->initial_mcs_dl = mcs;
@@ -2794,7 +2794,7 @@
 	struct gprs_rlc_dl_header_egprs_3 *egprs3;
 	struct gprs_rlc_dl_header_egprs_2 *egprs2;
 
-	printf("Testing retx for MCS %u to reseg_mcs %u\n", mcs, demanded_mcs);
+	fprintf(stderr, "Testing retx for MCS %u to reseg_mcs %u\n", mcs, demanded_mcs);
 
 	dl_tbf = tbf_init(the_bts, mcs);
 
@@ -2874,7 +2874,7 @@
 	struct msgb *msg;
 	struct gprs_rlc_dl_header_egprs_3 *egprs3;
 
-	printf("Testing retx for MCS %u to reseg_mcs %u\n", mcs, demanded_mcs);
+	fprintf(stderr, "Testing retx for MCS %u to reseg_mcs %u\n", mcs, demanded_mcs);
 
 	dl_tbf = tbf_init(the_bts, mcs);
 
@@ -2962,7 +2962,7 @@
 	gprs_rlcmac_dl_tbf *dl_tbf;
 	struct msgb *msg;
 
-	printf("Testing retx for MCS %u - %u\n", mcs, demanded_mcs);
+	fprintf(stderr, "Testing retx for MCS %u - %u\n", mcs, demanded_mcs);
 
 	dl_tbf = tbf_init(the_bts, mcs);
 
@@ -3057,7 +3057,7 @@
 	gprs_rlcmac_bts *bts;
 	uint8_t ts_no = 4;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bts = the_bts.bts_data();
 	bts->cs_downgrade_threshold = 0;
@@ -3077,7 +3077,7 @@
 	establish_and_use_egprs_dl_tbf_for_retx(&the_bts, 7, 5);
 	establish_and_use_egprs_dl_tbf_for_retx(&the_bts, 9, 6);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_egprs_spb_dl(void)
@@ -3086,7 +3086,7 @@
 	gprs_rlcmac_bts *bts;
 	uint8_t ts_no = 4;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bts = the_bts.bts_data();
 	bts->cs_downgrade_threshold = 0;
@@ -3108,7 +3108,7 @@
 	/* check MCS6->(MCS3+MCS3)->MCS6 case */
 	egprs_spb_to_normal_validation(&the_bts, 6, 3);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_tbf_egprs_dl()
@@ -3118,7 +3118,7 @@
 	uint8_t ts_no = 4;
 	int i;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	bts = the_bts.bts_data();
 
@@ -3131,7 +3131,7 @@
 	for (i = 1; i <= 9; i++)
 		establish_and_use_egprs_dl_tbf(&the_bts, i);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 
@@ -3145,7 +3145,7 @@
 	uint32_t tlli = 0xffeeddcc;
 	struct gprs_rlcmac_ul_tbf *ul_tbf = NULL;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 4);
 
@@ -3166,7 +3166,7 @@
 
 	ul_tbf->handle_timeout();
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 static void test_packet_access_rej_prr()
@@ -3186,7 +3186,7 @@
 	MS_Radio_Access_capability_t *pmsradiocap = NULL;
 	Multislot_capability_t *pmultislotcap = NULL;
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 
 	setup_bts(&the_bts, ts_no, 4);
 
@@ -3241,7 +3241,7 @@
 
 	OSMO_ASSERT(rc == 0);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 }
 
 void test_packet_access_rej_epdan()
@@ -3253,7 +3253,7 @@
 				 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b
 	};
 
-	printf("=== start %s ===\n", __func__);
+	fprintf(stderr, "=== start %s ===\n", __func__);
 	setup_bts(&the_bts, 4);
 	static gprs_rlcmac_dl_tbf *dl_tbf = tbf_init(&the_bts, 1);
 
@@ -3261,13 +3261,13 @@
 
 	struct msgb *msg = dl_tbf->create_packet_access_reject();
 
-	printf("packet reject: %s\n",
+	fprintf(stderr, "packet reject: %s\n",
 			osmo_hexdump(msg->data, 23));
 
 	if (!msgb_eq_data_print(msg, exp, GSM_MACBLOCK_LEN))
-		printf("%s test failed!\n", __func__);
+		fprintf(stderr, "%s test failed!\n", __func__);
 
-	printf("=== end %s ===\n", __func__);
+	fprintf(stderr, "=== end %s ===\n", __func__);
 
 }
 
diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err
index 0bc1c42..7dd14f4 100644
--- a/tests/tbf/TbfTest.err
+++ b/tests/tbf/TbfTest.err
@@ -1,3 +1,6 @@
+=== start test_tbf_base ===
+=== end test_tbf_base ===
+=== start test_tbf_tlli_update ===
 ********** DL-TBF starts here **********
 Allocating DL TBF: MS_CLASS=0/0
 Creating MS object, TLLI = 0x00000000
@@ -35,6 +38,8 @@
 The MS object cannot fully confirm an unexpected TLLI: 0x00004232, partly confirmed
 Modifying MS object, TLLI: 0x00002342 -> 0x00004232, already confirmed partly
 Modifying MS object, TLLI = 0x00004232, TA 4 -> 6
+=== end test_tbf_tlli_update ===
+=== start test_tbf_final_ack ===
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -123,6 +128,8 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=1 TLLI=0xffeeddcc DIR=DL STATE=RELEASING)
 ********** DL-TBF ends here **********
 Destroying MS object, TLLI = 0xffeeddcc
+=== end test_tbf_final_ack ===
+=== start test_tbf_final_ack ===
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -211,6 +218,8 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING)
 ********** DL-TBF ends here **********
 Destroying MS object, TLLI = 0xffeeddcc
+=== end test_tbf_final_ack ===
+=== start test_tbf_delayed_release ===
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -464,6 +473,8 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+=== end test_tbf_delayed_release ===
+=== start test_tbf_imsi ===
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -529,6 +540,8 @@
 Detaching TBF from MS object, TLLI = 0xf1000002, TBF = TBF(TFI=1 TLLI=0xf1000002 DIR=DL STATE=RELEASING)
 Destroying MS object, TLLI = 0xf1000002
 ********** DL-TBF ends here **********
+=== end test_tbf_imsi ===
+=== start test_tbf_exhaustion ===
 ********** DL-TBF starts here **********
 Allocating DL TBF: MS_CLASS=45/0
 Creating MS object, TLLI = 0x00000000
@@ -1336,7 +1349,9 @@
 [DL] Slot Allocation (Algorithm A) for class 45
 [DL] algo A <single> (suggested TRX: -1): failed to find a usable TRX (TFI exhausted)
 No PDCH resource
+=== end test_tbf_exhaustion ===
 Destroying MS object, TLLI = 0x00000000
+=== start test_tbf_dl_llc_loss ===
 ********** DL-TBF starts here **********
 Allocating DL TBF: MS_CLASS=45/0
 Creating MS object, TLLI = 0x00000000
@@ -1424,6 +1439,8 @@
 TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=FINISHED) Polling cannot be scheduled in this TS 7 (first control TS 4)
 TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=FINISHED) msg block (BSN 2, CS-1): 07 01 04 4d 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 
 MSG = 07 01 04 4d 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 
+=== end test_tbf_dl_llc_loss ===
+=== start test_tbf_single_phase ===
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 MS requests UL TBF on RACH, so we provide one: ra=0x03 Fn=2654167 qta=31 is_11bit=0:
@@ -1496,6 +1513,8 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN) TX: START Immediate Assignment Downlink (PCH)
  - TRX=0 (0) TS=7 TA=7 pollFN=-1
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN) appending 4 bytes
+=== end test_tbf_single_phase ===
+=== start test_tbf_two_phase ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -1578,6 +1597,8 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN) set ass. type PACCH [prev CCCH:0, PACCH:0]
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN) starting timer T0 [assignment (PACCH)] with 2 sec. 0 microsec, cur_fn=0
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN) appending 4 bytes
+=== end test_tbf_two_phase ===
+=== start test_tbf_ra_update_rach ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -1777,6 +1798,8 @@
 TBF(TFI=0 TLLI=0xf5667788 DIR=DL STATE=FINISHED) appending 4 bytes
 Modifying MS object, TLLI: 0xf5667788 confirmed
 New MS: TLLI = 0xf5667788, TA = 7, IMSI = 0011223344, LLC = 1
+=== end test_tbf_ra_update_rach ===
+=== start test_tbf_dl_flow_and_rach_two_phase ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -1948,6 +1971,8 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) Frame 1 starts at offset 0, length=20, is_complete=0
 TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) No gaps in received block, last block: BSN=0 CV=15
 New MS: TLLI = 0xf1223344, TA = 7, IMSI = 0011223344, LLC = 2
+=== end test_tbf_dl_flow_and_rach_two_phase ===
+=== start test_tbf_dl_flow_and_rach_single_phase ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -2097,6 +2122,8 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FINISHED) Scheduling Ack/Nack, because last block has CV==0.
 TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FINISHED) changes UL ACK state from GPRS_RLCMAC_UL_ACK_NONE to GPRS_RLCMAC_UL_ACK_SEND_ACK
 New MS: TLLI = 0xf1223344, TA = 7, IMSI = 0011223344, LLC = 2
+=== end test_tbf_dl_flow_and_rach_single_phase ===
+=== start test_tbf_dl_reuse ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -3031,8 +3058,12 @@
 TBF(TFI=1 TLLI=0xf1223344 DIR=DL STATE=FINISHED) starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=0
 TBF(TFI=1 TLLI=0xf1223344 DIR=DL STATE=FINISHED) Scheduled Ack/Nack polling on FN=2654461, TS=7
 TBF(TFI=1 TLLI=0xf1223344 DIR=DL STATE=FINISHED) msg block (BSN 10, CS-1): 0f 03 14 4d 43 20 50 41 43 4b 45 54 20 30 39 20 28 54 42 46 20 32 29 
+=== end test_tbf_dl_reuse ===
+=== start test_tbf_gprs_egprs ===
 Not accepting non-EGPRS phone in EGPRS-only mode
 No PDCH resource
+=== end test_tbf_gprs_egprs ===
+=== start test_tbf_ws ===
 ********** DL-TBF starts here **********
 Allocating DL TBF: MS_CLASS=12/0
 Creating MS object, TLLI = 0x00000000
@@ -3111,6 +3142,8 @@
 Detaching TBF from MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0x00000000
 ********** DL-TBF ends here **********
+=== end test_tbf_ws ===
+=== start test_tbf_egprs_two_phase ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -3201,6 +3234,8 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) set ass. type PACCH [prev CCCH:0, PACCH:0]
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) starting timer T0 [assignment (PACCH)] with 2 sec. 0 microsec, cur_fn=0
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) appending 256 bytes
+=== end test_tbf_egprs_two_phase ===
+=== start test_tbf_egprs_two_phase_spb ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -3421,6 +3456,9 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) set ass. type PACCH [prev CCCH:0, PACCH:0]
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) starting timer T0 [assignment (PACCH)] with 2 sec. 0 microsec, cur_fn=0
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) appending 256 bytes
+=== end test_tbf_egprs_two_phase_spb ===
+=== start test_tbf_egprs_dl ===
+Testing MCS-1
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -3727,6 +3765,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-2
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -3983,6 +4022,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-3
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -4201,6 +4241,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-4
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -4387,6 +4428,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-5
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -4553,6 +4595,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-6
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -4701,6 +4744,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-7
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -4844,6 +4888,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-8
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -4976,6 +5021,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing MCS-9
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5108,6 +5154,9 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+=== end test_tbf_egprs_dl ===
+=== start test_tbf_egprs_retx_dl ===
+Testing retx for MCS 6 - 6
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5163,6 +5212,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 1 - 9
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5218,6 +5268,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 2 - 8
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5273,6 +5324,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 5 - 7
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5344,6 +5396,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 6 - 9
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5415,6 +5468,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 7 - 5
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5486,6 +5540,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 9 - 6
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5557,6 +5612,9 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+=== end test_tbf_egprs_retx_dl ===
+=== start test_tbf_egprs_spb_dl ===
+Testing retx for MCS 6 to reseg_mcs 3
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5619,6 +5677,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 5 to reseg_mcs 2
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5681,6 +5740,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 4 to reseg_mcs 1
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5743,6 +5803,7 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+Testing retx for MCS 6 to reseg_mcs 3
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -5812,6 +5873,8 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+=== end test_tbf_egprs_spb_dl ===
+=== start test_tbf_puan_urbb_len ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -5921,6 +5984,8 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) set ass. type PACCH [prev CCCH:0, PACCH:0]
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) starting timer T0 [assignment (PACCH)] with 2 sec. 0 microsec, cur_fn=0
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) appending 256 bytes
+=== end test_tbf_puan_urbb_len ===
+=== start test_tbf_update_ws ===
 ********** DL-TBF starts here **********
 Allocating DL TBF: MS_CLASS=11/11
 Creating MS object, TLLI = 0x00000000
@@ -5973,6 +6038,8 @@
 Detaching TBF from MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0x00000000
 ********** DL-TBF ends here **********
+=== end test_tbf_update_ws ===
+=== start test_tbf_li_decoding ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -6076,6 +6143,8 @@
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) set ass. type PACCH [prev CCCH:0, PACCH:0]
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) starting timer T0 [assignment (PACCH)] with 2 sec. 0 microsec, cur_fn=0
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) appending 256 bytes
+=== end test_tbf_li_decoding ===
+=== start test_tbf_epdan_out_of_rx_window ===
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -6115,6 +6184,8 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** DL-TBF ends here **********
+=== end test_tbf_epdan_out_of_rx_window ===
+=== start test_immediate_assign_rej_multi_block ===
 MS requests UL TBF on RACH, so we provide one: ra=0x78 Fn=2654167 qta=31 is_11bit=0:
 ********** UL-TBF starts here **********
 Allocating UL TBF: MS_CLASS=0/0
@@ -6305,11 +6376,15 @@
 - Skipping TS 7, because no USF available
 [UL] algo A <single> (suggested TRX: -1): failed to allocate a TS, no USF available
 No PDCH resource sending Immediate Assignment Uplink (AGCH) reject
+=== end test_immediate_assign_rej_multi_block ===
 Destroying MS object, TLLI = 0x00000000
+=== start test_immediate_assign_rej_single_block ===
 MS requests UL TBF on RACH, so we provide one: ra=0x70 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 No PDCH available.
 No PDCH resource for single block allocation.sending Immediate Assignment Uplink (AGCH) reject
+=== end test_immediate_assign_rej_single_block ===
+=== start test_tbf_egprs_two_phase_puan ===
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 is_11bit=0:
 MS requests single block allocation
 RX: [PCU <- BTS] RACH  qbit-ta=31 ra=0x73, Fn=2654167 (17,25,9), SBFn=2654270
@@ -7711,6 +7786,8 @@
 Got 'TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW EGPRS)', TA=7
 Got MS: TLLI = 0xf1223344, TA = 7
 TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=ASSIGN EGPRS) appending 256 bytes
+=== end test_tbf_egprs_two_phase_puan ===
+=== start test_packet_access_rej_epdan ===
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 ********** DL-TBF starts here **********
@@ -7736,6 +7813,9 @@
 TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes state from NULL to FLOW
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed
 TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) appending 100 bytes
+packet reject: 40 84 7f f7 6e e6 41 4b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
+=== end test_packet_access_rej_epdan ===
+=== start test_packet_access_rej_prr ===
 MS requests UL TBF on RACH, so we provide one: ra=0x78 Fn=2654167 qta=31 is_11bit=0:
 ********** UL-TBF starts here **********
 Allocating UL TBF: MS_CLASS=0/0
@@ -7940,7 +8020,9 @@
 Received RTS for PDCH: TRX=0 TS=7 FN=2654218 block_nr=8 scheduling USF=0 for required uplink resource of UL TFI=0
 TBF(TFI=0 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) starting timer T0 [reject (PACCH)] with 0 sec. 2000 microsec, cur_fn=0
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) (TRX=0, TS=7)
+=== end test_packet_access_rej_prr ===
 Destroying MS object, TLLI = 0x00000000
+=== start test_packet_access_rej_prr_no_other_tbfs ===
 Creating MS object, TLLI = 0x00000000
 Modifying MS object, UL TLLI: 0x00000000 -> 0xffeeddcc, not yet confirmed
 TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL) changes state from NULL to ASSIGN
@@ -7955,3 +8037,4 @@
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN)
 Destroying MS object, TLLI = 0xffeeddcc
 ********** UL-TBF ends here **********
+=== end test_packet_access_rej_prr_no_other_tbfs ===
diff --git a/tests/tbf/TbfTest.ok b/tests/tbf/TbfTest.ok
deleted file mode 100644
index 077ec4e..0000000
--- a/tests/tbf/TbfTest.ok
+++ /dev/null
@@ -1,83 +0,0 @@
-=== start test_tbf_base ===
-=== end test_tbf_base ===
-=== start test_tbf_tlli_update ===
-=== end test_tbf_tlli_update ===
-=== start test_tbf_final_ack ===
-=== end test_tbf_final_ack ===
-=== start test_tbf_final_ack ===
-=== end test_tbf_final_ack ===
-=== start test_tbf_delayed_release ===
-=== end test_tbf_delayed_release ===
-=== start test_tbf_imsi ===
-=== end test_tbf_imsi ===
-=== start test_tbf_exhaustion ===
-=== end test_tbf_exhaustion ===
-=== start test_tbf_dl_llc_loss ===
-=== end test_tbf_dl_llc_loss ===
-=== start test_tbf_single_phase ===
-=== end test_tbf_single_phase ===
-=== start test_tbf_two_phase ===
-=== end test_tbf_two_phase ===
-=== start test_tbf_ra_update_rach ===
-=== end test_tbf_ra_update_rach ===
-=== start test_tbf_dl_flow_and_rach_two_phase ===
-=== end test_tbf_dl_flow_and_rach_two_phase ===
-=== start test_tbf_dl_flow_and_rach_single_phase ===
-=== end test_tbf_dl_flow_and_rach_single_phase ===
-=== start test_tbf_dl_reuse ===
-=== end test_tbf_dl_reuse ===
-=== start test_tbf_gprs_egprs ===
-=== end test_tbf_gprs_egprs ===
-=== start test_tbf_ws ===
-=== end test_tbf_ws ===
-=== start test_tbf_egprs_two_phase ===
-=== end test_tbf_egprs_two_phase ===
-=== start test_tbf_egprs_two_phase_spb ===
-=== end test_tbf_egprs_two_phase_spb ===
-=== start test_tbf_egprs_dl ===
-Testing MCS-1
-Testing MCS-2
-Testing MCS-3
-Testing MCS-4
-Testing MCS-5
-Testing MCS-6
-Testing MCS-7
-Testing MCS-8
-Testing MCS-9
-=== end test_tbf_egprs_dl ===
-=== start test_tbf_egprs_retx_dl ===
-Testing retx for MCS 6 - 6
-Testing retx for MCS 1 - 9
-Testing retx for MCS 2 - 8
-Testing retx for MCS 5 - 7
-Testing retx for MCS 6 - 9
-Testing retx for MCS 7 - 5
-Testing retx for MCS 9 - 6
-=== end test_tbf_egprs_retx_dl ===
-=== start test_tbf_egprs_spb_dl ===
-Testing retx for MCS 6 to reseg_mcs 3
-Testing retx for MCS 5 to reseg_mcs 2
-Testing retx for MCS 4 to reseg_mcs 1
-Testing retx for MCS 6 to reseg_mcs 3
-=== end test_tbf_egprs_spb_dl ===
-=== start test_tbf_puan_urbb_len ===
-=== end test_tbf_puan_urbb_len ===
-=== start test_tbf_update_ws ===
-=== end test_tbf_update_ws ===
-=== start test_tbf_li_decoding ===
-=== end test_tbf_li_decoding ===
-=== start test_tbf_epdan_out_of_rx_window ===
-=== end test_tbf_epdan_out_of_rx_window ===
-=== start test_immediate_assign_rej_multi_block ===
-=== end test_immediate_assign_rej_multi_block ===
-=== start test_immediate_assign_rej_single_block ===
-=== end test_immediate_assign_rej_single_block ===
-=== start test_tbf_egprs_two_phase_puan ===
-=== end test_tbf_egprs_two_phase_puan ===
-=== start test_packet_access_rej_epdan ===
-packet reject: 40 84 7f f7 6e e6 41 4b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
-=== end test_packet_access_rej_epdan ===
-=== start test_packet_access_rej_prr ===
-=== end test_packet_access_rej_prr ===
-=== start test_packet_access_rej_prr_no_other_tbfs ===
-=== end test_packet_access_rej_prr_no_other_tbfs ===
diff --git a/tests/testsuite.at b/tests/testsuite.at
index 86f45a8..9c6c7a7 100644
--- a/tests/testsuite.at
+++ b/tests/testsuite.at
@@ -24,9 +24,8 @@
 
 AT_SETUP([tbf])
 AT_KEYWORDS([tbf])
-cat $abs_srcdir/tbf/TbfTest.ok > expout
 cat $abs_srcdir/tbf/TbfTest.err > experr
-AT_CHECK([$OSMO_QEMU $abs_top_builddir/tests/tbf/TbfTest], [0], [expout], [experr])
+AT_CHECK([$OSMO_QEMU $abs_top_builddir/tests/tbf/TbfTest], [0], [ignore], [experr])
 AT_CLEANUP
 
 AT_SETUP([bitcomp])

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/15452
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I3e887158e2c9585c360d44f12f995f55861170f2
Gerrit-Change-Number: 15452
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190909/c8ccdd83/attachment.htm>


More information about the gerrit-log mailing list