diff options
Diffstat (limited to 'tests/meas')
-rw-r--r-- | tests/meas/meas_test.c | 583 | ||||
-rw-r--r-- | tests/meas/meas_test.ok | 4 |
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() |