aboutsummaryrefslogtreecommitdiffstats
path: root/tests/meas
diff options
context:
space:
mode:
Diffstat (limited to 'tests/meas')
-rw-r--r--tests/meas/meas_test.c583
-rw-r--r--tests/meas/meas_test.ok4
2 files changed, 0 insertions, 587 deletions
diff --git a/tests/meas/meas_test.c b/tests/meas/meas_test.c
index a33a8084..8f504795 100644
--- a/tests/meas/meas_test.c
+++ b/tests/meas/meas_test.c
@@ -125,588 +125,6 @@ static void test_meas_compute(const struct meas_testcase *mtc)
}
-static void test_is_meas_overdue(void)
-{
- struct gsm_lchan *lchan;
- bool rc;
- uint32_t fn_missed_end;
- unsigned int i;
-
- printf("\n\n");
- printf("===========================================================\n");
- printf("Testing is_meas_overdue()\n");
-
- /* Missing period-end-trigger at fn=12, TCH/F, TS0 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 95;
- rc = is_meas_overdue(lchan, &fn_missed_end, 17 + 104);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 12 + 104);
-
- /* Missing period-end-trigger at fn=12, TCH/H, TS0 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 95;
- rc = is_meas_overdue(lchan, &fn_missed_end, 17 + 104);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 12 + 104);
-
- /* Missing period-end-trigger at fn=12, TCH/H, TS1 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[1].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 95;
- rc = is_meas_overdue(lchan, &fn_missed_end, 17 + 104);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 12 + 104);
-
- /* Missing period-end-trigger at fn=25, TCH/F, TS1 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[1].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 21;
- rc = is_meas_overdue(lchan, &fn_missed_end, 30);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 25);
-
- /* Missing period-end-trigger at fn=25, TCH/H, TS0 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 21;
- rc = is_meas_overdue(lchan, &fn_missed_end, 30);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 25);
-
- /* Missing period-end-trigger at fn=25, TCH/H, TS1 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[1].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 21;
- rc = is_meas_overdue(lchan, &fn_missed_end, 30);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 25);
-
- /* Missing period-end-trigger at fn=38, TCH/F, TS2 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 34;
- rc = is_meas_overdue(lchan, &fn_missed_end, 43);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 38);
-
- /* Missing period-end-trigger at fn=38, TCH/H, TS2 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 34;
- rc = is_meas_overdue(lchan, &fn_missed_end, 43);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 38);
-
- /* Missing period-end-trigger at fn=38, TCH/H, TS3 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[3].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 34;
- rc = is_meas_overdue(lchan, &fn_missed_end, 43);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 38);
-
- /* Missing period-end-trigger at fn=51, TCH/F, TS3 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[3].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 47;
- rc = is_meas_overdue(lchan, &fn_missed_end, 52);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 51);
-
- /* Missing period-end-trigger at fn=51, TCH/H, TS2 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 47;
- rc = is_meas_overdue(lchan, &fn_missed_end, 52);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 51);
-
- /* Missing period-end-trigger at fn=51, TCH/H, TS3 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[3].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 47;
- rc = is_meas_overdue(lchan, &fn_missed_end, 52);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 51);
-
- /* Missing period-end-trigger at fn=64, TCH/F, TS4 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[4].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 60;
- rc = is_meas_overdue(lchan, &fn_missed_end, 69);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 64);
-
- /* Missing period-end-trigger at fn=64, TCH/H, TS4 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[4].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 60;
- rc = is_meas_overdue(lchan, &fn_missed_end, 69);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 64);
-
- /* Missing period-end-trigger at fn=64, TCH/H, TS4 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[5].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 60;
- rc = is_meas_overdue(lchan, &fn_missed_end, 69);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 64);
-
- /* Missing period-end-trigger at fn=77, TCH/F, TS5 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[5].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 73;
- rc = is_meas_overdue(lchan, &fn_missed_end, 78);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 77);
-
- /* Missing period-end-trigger at fn=77, TCH/H, TS4 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[4].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 73;
- rc = is_meas_overdue(lchan, &fn_missed_end, 78);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 77);
-
- /* Missing period-end-trigger at fn=77, TCH/H, TS5 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[5].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 73;
- rc = is_meas_overdue(lchan, &fn_missed_end, 78);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 77);
-
- /* Missing period-end-trigger at fn=90, TCH/F, TS6 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[6].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 86;
- rc = is_meas_overdue(lchan, &fn_missed_end, 91);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 90);
-
- /* Missing period-end-trigger at fn=90, TCH/H, TS6 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[6].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 86;
- rc = is_meas_overdue(lchan, &fn_missed_end, 91);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 90);
-
- /* Missing period-end-trigger at fn=90, TCH/H, TS7 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[7].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 86;
- rc = is_meas_overdue(lchan, &fn_missed_end, 91);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 90);
-
- /* Missing period-end-trigger at fn=103, TCH/F, TS7 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[7].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 99;
- rc = is_meas_overdue(lchan, &fn_missed_end, 0 + 104);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 103);
-
- /* Missing period-end-trigger at fn=103, TCH/H, TS6 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[6].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 99;
- rc = is_meas_overdue(lchan, &fn_missed_end, 0 + 104);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 103);
-
- /* Missing period-end-trigger at fn=103, TCH/H, TS7 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[7].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 99;
- rc = is_meas_overdue(lchan, &fn_missed_end, 0 + 104);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 103);
-
- /* Dropout inside the interval, no period-end-trigger missed */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 56;
- rc = is_meas_overdue(lchan, &fn_missed_end, 69);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, but right after period-end-trigger */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 38;
- rc = is_meas_overdue(lchan, &fn_missed_end, 39);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, two neigbouring frames at random position
- * (should not happen in the real world) */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 43;
- rc = is_meas_overdue(lchan, &fn_missed_end, 44);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, Two neigbouring frames (period end, right side) */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 38;
- rc = is_meas_overdue(lchan, &fn_missed_end, 39);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, Two neigbouring frames (period end, left side,
- * should not happen in the real world) */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 37;
- rc = is_meas_overdue(lchan, &fn_missed_end, 38);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, test directly on a the trigger frame */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 34;
- rc = is_meas_overdue(lchan, &fn_missed_end, 38);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, previous frame is trigger frame
- * (should not happen in the real world) */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_H;
- lchan->meas.last_fn = 38;
- rc = is_meas_overdue(lchan, &fn_missed_end, 38);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* Missing period-end-trigger at fn=38+i*104, TCH/F, TS2 to
- * see the modulus is correct. */
- for (i = 0; i < 100; i++) {
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[2].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = 34 + 104 * 1;
- rc = is_meas_overdue(lchan, &fn_missed_end, 43 + 104 * 1);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 38 + 104 * 1);
- }
-
- /* See whats happening if we miss a period-end-triggerend at the
- * hyperframe beginning. */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = GSM_MAX_FN - 104 + 95;
- rc = is_meas_overdue(lchan, &fn_missed_end, 17);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 12);
-
- /* See whats happening if we miss a period-end-triggerend at the
- * hyperframe ending. */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[6].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = GSM_MAX_FN - 104 + 86;
- rc = is_meas_overdue(lchan, &fn_missed_end, 8);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == GSM_MAX_FN - 104 + 90);
-
- /* See whats happening if we miss a period-end-triggerend exactly at the
- * hyperframe ending. */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[7].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = GSM_MAX_FN - 104 + 99;
- rc = is_meas_overdue(lchan, &fn_missed_end, 0);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == GSM_MAX_FN - 1);
-
- /* Test a wrap around at the hyperframe ending, while no measurements
- * are lost */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = GSM_MAX_FN - 104 + 99;
- rc = is_meas_overdue(lchan, &fn_missed_end, 0);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* Test a wrap around at the hyperframe ending, measurements are lost,
- * but not the one that triggers the period end */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = GSM_MAX_FN - 104 + 95;
- rc = is_meas_overdue(lchan, &fn_missed_end, 4);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* Test a wrap around right before the hyperframe ending, while no
- * measurements are lost. */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[7].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_TCH_F;
- lchan->meas.last_fn = GSM_MAX_FN - 104 + 99;
- rc = is_meas_overdue(lchan, &fn_missed_end, GSM_MAX_FN - 1);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* Missing period-end-trigger at fn=66, SDCCH/8, TS0, SS0 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 47;
- rc = is_meas_overdue(lchan, &fn_missed_end, 15 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 66);
-
- /* Missing period-end-trigger at fn=70, SDCCH/8, TS0, SS1 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 51;
- rc = is_meas_overdue(lchan, &fn_missed_end, 19 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 70);
-
- /* Missing period-end-trigger at fn=74, SDCCH/8, TS0, SS2 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[2];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 55;
- rc = is_meas_overdue(lchan, &fn_missed_end, 23 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 74);
-
- /* Missing period-end-trigger at fn=78, SDCCH/8, TS0, SS3 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[3];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 59;
- rc = is_meas_overdue(lchan, &fn_missed_end, 27 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 78);
-
- /* Missing period-end-trigger at fn=98, SDCCH/8, TS0, SS4 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[4];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 82;
- rc = is_meas_overdue(lchan, &fn_missed_end, 31 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 98);
-
- /* Missing period-end-trigger at fn=102, SDCCH/8, TS0, SS5 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[5];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 86;
- rc = is_meas_overdue(lchan, &fn_missed_end, 35 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 102);
-
- /* Missing period-end-trigger at fn=106, SDCCH/8, TS0, SS6 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[6];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 90;
- rc = is_meas_overdue(lchan, &fn_missed_end, 39 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 4 + 102);
-
- /* Missing period-end-trigger at fn=200, SDCCH/8, TS0, SS7 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[7];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 94;
- rc = is_meas_overdue(lchan, &fn_missed_end, 43 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 8 + 102);
-
- /* No dropout, SDCCH/8, TS0, SS0 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 47;
- rc = is_meas_overdue(lchan, &fn_missed_end, 66);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/8, TS0, SS1 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 51;
- rc = is_meas_overdue(lchan, &fn_missed_end, 70);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/8, TS0, SS2 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[2];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 55;
- rc = is_meas_overdue(lchan, &fn_missed_end, 74);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/8, TS0, SS3 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[3];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 59;
- rc = is_meas_overdue(lchan, &fn_missed_end, 78);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/8, TS0, SS4 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[4];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 82;
- rc = is_meas_overdue(lchan, &fn_missed_end, 98);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/8, TS0, SS5 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[5];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 86;
- rc = is_meas_overdue(lchan, &fn_missed_end, 102);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/8, TS0, SS6 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[6];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 90;
- rc = is_meas_overdue(lchan, &fn_missed_end, 4 + 102);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/8, TS0, SS7 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[7];
- lchan->ts->pchan = GSM_PCHAN_SDCCH8_SACCH8C;
- lchan->meas.last_fn = 94;
- rc = is_meas_overdue(lchan, &fn_missed_end, 8 + 102);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* Missing period-end-trigger at fn=88, SDCCH/4, TS0, SS0 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = 57;
- rc = is_meas_overdue(lchan, &fn_missed_end, 37 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 88);
-
- /* Missing period-end-trigger at fn=92, SDCCH/4, TS0, SS1 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = 61;
- rc = is_meas_overdue(lchan, &fn_missed_end, 41 + 102);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 92);
-
- /* Missing period-end-trigger at fn=6, SDCCH/4, TS0, SS2 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[2];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = GSM_MAX_FN - 102 + 98;
- rc = is_meas_overdue(lchan, &fn_missed_end, 47);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 6);
-
- /* Missing period-end-trigger at fn=10, SDCCH/4, TS0, SS3 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[3];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = 0;
- rc = is_meas_overdue(lchan, &fn_missed_end, 51);
- OSMO_ASSERT(rc);
- OSMO_ASSERT(fn_missed_end == 10);
-
- /* No dropout, SDCCH/4, TS0, SS0 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[0];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = 57;
- rc = is_meas_overdue(lchan, &fn_missed_end, 88);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/4, TS0, SS1 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[1];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = 61;
- rc = is_meas_overdue(lchan, &fn_missed_end, 92);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/4, TS0, SS2 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[2];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = GSM_MAX_FN - 102 + 98;
- rc = is_meas_overdue(lchan, &fn_missed_end, 6);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-
- /* No dropout, SDCCH/4, TS0, SS3 */
- fn_missed_end = LCHAN_FN_DUMMY;
- lchan = &trx->ts[0].lchan[3];
- lchan->ts->pchan = GSM_PCHAN_CCCH_SDCCH4;
- lchan->meas.last_fn = 0;
- rc = is_meas_overdue(lchan, &fn_missed_end, 10);
- OSMO_ASSERT(!rc);
- OSMO_ASSERT(fn_missed_end == LCHAN_FN_DUMMY);
-}
-
static void test_is_meas_complete_single(struct gsm_lchan *lchan,
uint32_t fn_end, uint8_t intv_len)
{
@@ -1152,7 +570,6 @@ int main(int argc, char **argv)
printf("*** MEASUREMENT INTERVAL ENDING DETECTION TESTS ***\n");
printf("***************************************************\n");
- test_is_meas_overdue();
test_is_meas_complete();
test_lchan_meas_process_measurement(false, false);
test_lchan_meas_process_measurement(true, false);
diff --git a/tests/meas/meas_test.ok b/tests/meas/meas_test.ok
index 3d4f4308..e62bb42f 100644
--- a/tests/meas/meas_test.ok
+++ b/tests/meas/meas_test.ok
@@ -714,10 +714,6 @@ meas.ul_res.full.rx_qual | 0 | 0
===========================================================
-Testing is_meas_overdue()
-
-
-===========================================================
Testing is_meas_complete()