[PATCH] Add test cases for EGPRS retransmission in DL

Holger Freyther holger at freyther.de
Thu Apr 7 07:46:41 UTC 2016


> On 05 Apr 2016, at 09:37, Aravind Sirsikar <Arvind.Sirsikar at radisys.com> wrote:

Hi!

> Add test cases to validate retransmission of EGPRS RLC data block
> for all the MCS in downlink direction without support of MCS change
> during retransmission

testcases are always good! I would prefer to have stronger assertions or at least some comments in the commit message that says what we should look for in the debug log. Stronger assertions are certainly preferred.


> 
> +static void establish_and_use_egprs_dl_tbf_for_retx(BTS *the_bts, int mcs)
> +{
> 
> +	for (i = 0; i < sizeof(test_data); i++)
> +		test_data[i] = i%512;

okay, that is our test data. Can we easily see that all of it has been transferred?


> 
> +	/* Send only a few RLC/MAC blocks */

How many? How many are there, why a few?


> +	fn = 0;
> +	uint8_t block_nr = 0;
> +	int index1 = 0;
> +
> +	while (index1 < 4) {
> +		/* Request to send one block */
> +		request_dl_rlc_block(dl_tbf, &fn, &block_nr);
> +		index1++;
> +		if (dl_tbf->m_window.m_v_b.is_unacked(0))
> +			dl_tbf->m_window.m_v_b.mark_nacked(0);
> +		if (mcs > 6)
> +			if (dl_tbf->m_window.m_v_b.is_unacked(1))
> +				dl_tbf->m_window.m_v_b.mark_nacked(1);
> +
> +	}

E.g. here it might be a good case to really look at the window and verify we have unacked frames?



> +
> +	/* Drain the queue */
> +	while (dl_tbf->have_data())
> +		/* Request to send one RLC/MAC block */
> +		request_dl_rlc_block(dl_tbf, &fn);

and specifically check which parts went back to unacked?


thank you
	holger


More information about the osmocom-net-gprs mailing list