aboutsummaryrefslogtreecommitdiffstats
path: root/tests/amr
diff options
context:
space:
mode:
authorVadim Yanitskiy <vyanitskiy@sysmocom.de>2022-11-01 01:09:11 +0700
committerVadim Yanitskiy <vyanitskiy@sysmocom.de>2022-11-01 01:09:20 +0700
commit8ec66a7f58d51f3d607403b3a4e82d62533e7a2d (patch)
treea993f16dad2aab4be54acb295eeaf8698dab600f /tests/amr
parentc33ff98d39b00c50dfef8def65f161a87e7f96c6 (diff)
osmo-bts-trx: drop ul_amr_fn_is_cmi() / dl_amr_fn_is_cmi()
The scheduler is now using the lookup tables instead of these functions. The only part using them is the AMR unit test. Change-Id: I1a9c80dd12252e7befe9c9bc8e8f7ee8648b5465
Diffstat (limited to 'tests/amr')
-rw-r--r--tests/amr/amr_test.c122
-rw-r--r--tests/amr/amr_test.ok152
2 files changed, 1 insertions, 273 deletions
diff --git a/tests/amr/amr_test.c b/tests/amr/amr_test.c
index 480ff73d..0fc58e76 100644
--- a/tests/amr/amr_test.c
+++ b/tests/amr/amr_test.c
@@ -27,126 +27,7 @@
#include <stdlib.h>
#include <stdio.h>
-#include "../../src/osmo-bts-trx/sched_utils.h"
-
-struct amr_cmi_test_data {
- /* Frame number that marks the beginning of the voice block */
- uint32_t gsm_fn;
- /* In uplink: True, when the voice block is a CMI block, false otherwise. */
- /* In downlink: False, when the voice block is a CMI block, true otherwise. */
- bool is_cmi;
-};
-
-/* The behavior of AHS in subslot 0 and AFS is the same */
-static const struct amr_cmi_test_data testvec_ahs_h0_and_afs[] = {
- { 0, true },
- { 4, false },
- { 8, true },
- { 13, false },
- { 17, true },
- { 21, false },
- { 26, true },
- { 30, false },
- { 34, true },
- { 39, false },
- { 43, true },
- { 47, false },
- { 52, true },
- { 56, false },
- { 60, true },
- { 65, false },
- { 69, true },
- { 73, false },
- { 78, true },
- { 82, false },
- { 86, true },
- { 91, false },
- { 95, true },
- { 99, false },
-};
-
-static const struct amr_cmi_test_data testvec_ahs_h1[] = {
- { 1, true },
- { 5, false },
- { 9, true },
- { 14, false },
- { 18, true },
- { 22, false },
- { 27, true },
- { 31, false },
- { 35, true },
- { 40, false },
- { 44, true },
- { 48, false },
- { 53, true },
- { 57, false },
- { 61, true },
- { 66, false },
- { 70, true },
- { 74, false },
- { 79, true },
- { 83, false },
- { 87, true },
- { 92, false },
- { 96, true },
- { 100, false },
-};
-
-static void test_amr_cmi_sched(void)
-{
- unsigned int i;
- bool res;
-
- printf("AMR transmission phase (CMI) in relation to GSM FN:\n");
-
- for (i = 0; i < ARRAY_SIZE(testvec_ahs_h0_and_afs); i++) {
- res = ul_amr_fn_is_cmi(testvec_ahs_h0_and_afs[i].gsm_fn);
- printf("Uplink, AMR AHS on HR subslot 0: fn_begin=%u, CMI=%u\n", testvec_ahs_h0_and_afs[i].gsm_fn, res);
- OSMO_ASSERT(res == testvec_ahs_h0_and_afs[i].is_cmi);
- }
-
- printf("\n");
-
- for (i = 0; i < ARRAY_SIZE(testvec_ahs_h0_and_afs); i++) {
- res = dl_amr_fn_is_cmi(testvec_ahs_h0_and_afs[i].gsm_fn);
- printf("Downlink, AMR AHS on HR subslot 0: fn_begin=%u, CMI=%u\n", testvec_ahs_h0_and_afs[i].gsm_fn, res);
- OSMO_ASSERT(res == !testvec_ahs_h0_and_afs[i].is_cmi);
- }
-
- printf("\n");
- printf("\n");
-
- for (i = 0; i < ARRAY_SIZE(testvec_ahs_h1); i++) {
- res = ul_amr_fn_is_cmi(testvec_ahs_h1[i].gsm_fn);
- printf("Uplink, AMR AHS on HR subslot 1: fn_begin=%u, CMI=%u\n", testvec_ahs_h1[i].gsm_fn, res);
- OSMO_ASSERT(res == testvec_ahs_h1[i].is_cmi);
- }
-
- printf("\n");
-
- for (i = 0; i < ARRAY_SIZE(testvec_ahs_h1); i++) {
- res = dl_amr_fn_is_cmi(testvec_ahs_h1[i].gsm_fn);
- printf("Downlink, AMR AHS on HR subslot 1: fn_begin=%u, CMI=%u\n", testvec_ahs_h1[i].gsm_fn, res);
- OSMO_ASSERT(res == !testvec_ahs_h1[i].is_cmi);
- }
-
- printf("\n");
- printf("\n");
-
- for (i = 0; i < ARRAY_SIZE(testvec_ahs_h0_and_afs); i++) {
- res = ul_amr_fn_is_cmi(testvec_ahs_h0_and_afs[i].gsm_fn);
- printf("Uplink, AMR AFS: fn_begin=%u, CMI=%u\n", testvec_ahs_h0_and_afs[i].gsm_fn, res);
- OSMO_ASSERT(res == testvec_ahs_h0_and_afs[i].is_cmi);
- }
-
- printf("\n");
-
- for (i = 0; i < ARRAY_SIZE(testvec_ahs_h0_and_afs); i++) {
- res = dl_amr_fn_is_cmi(testvec_ahs_h0_and_afs[i].gsm_fn);
- printf("Downlink, AMR AFS: fn_begin=%u, CMI=%u\n", testvec_ahs_h0_and_afs[i].gsm_fn, res);
- OSMO_ASSERT(res == !testvec_ahs_h0_and_afs[i].is_cmi);
- }
-}
+#include <errno.h>
static void test_amr_parse_mr_conf(void)
{
@@ -185,7 +66,6 @@ int main(int argc, char **argv)
log_set_print_level(osmo_stderr_target, 1);
log_set_use_color(osmo_stderr_target, 0);
- test_amr_cmi_sched();
test_amr_parse_mr_conf();
return EXIT_SUCCESS;
}
diff --git a/tests/amr/amr_test.ok b/tests/amr/amr_test.ok
index f0d1830e..921e8b9e 100644
--- a/tests/amr/amr_test.ok
+++ b/tests/amr/amr_test.ok
@@ -1,155 +1,3 @@
-AMR transmission phase (CMI) in relation to GSM FN:
-Uplink, AMR AHS on HR subslot 0: fn_begin=0, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=4, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=8, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=13, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=17, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=21, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=26, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=30, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=34, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=39, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=43, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=47, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=52, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=56, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=60, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=65, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=69, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=73, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=78, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=82, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=86, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=91, CMI=0
-Uplink, AMR AHS on HR subslot 0: fn_begin=95, CMI=1
-Uplink, AMR AHS on HR subslot 0: fn_begin=99, CMI=0
-
-Downlink, AMR AHS on HR subslot 0: fn_begin=0, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=4, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=8, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=13, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=17, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=21, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=26, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=30, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=34, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=39, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=43, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=47, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=52, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=56, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=60, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=65, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=69, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=73, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=78, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=82, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=86, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=91, CMI=1
-Downlink, AMR AHS on HR subslot 0: fn_begin=95, CMI=0
-Downlink, AMR AHS on HR subslot 0: fn_begin=99, CMI=1
-
-
-Uplink, AMR AHS on HR subslot 1: fn_begin=1, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=5, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=9, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=14, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=18, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=22, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=27, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=31, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=35, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=40, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=44, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=48, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=53, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=57, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=61, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=66, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=70, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=74, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=79, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=83, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=87, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=92, CMI=0
-Uplink, AMR AHS on HR subslot 1: fn_begin=96, CMI=1
-Uplink, AMR AHS on HR subslot 1: fn_begin=100, CMI=0
-
-Downlink, AMR AHS on HR subslot 1: fn_begin=1, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=5, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=9, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=14, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=18, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=22, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=27, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=31, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=35, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=40, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=44, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=48, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=53, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=57, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=61, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=66, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=70, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=74, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=79, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=83, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=87, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=92, CMI=1
-Downlink, AMR AHS on HR subslot 1: fn_begin=96, CMI=0
-Downlink, AMR AHS on HR subslot 1: fn_begin=100, CMI=1
-
-
-Uplink, AMR AFS: fn_begin=0, CMI=1
-Uplink, AMR AFS: fn_begin=4, CMI=0
-Uplink, AMR AFS: fn_begin=8, CMI=1
-Uplink, AMR AFS: fn_begin=13, CMI=0
-Uplink, AMR AFS: fn_begin=17, CMI=1
-Uplink, AMR AFS: fn_begin=21, CMI=0
-Uplink, AMR AFS: fn_begin=26, CMI=1
-Uplink, AMR AFS: fn_begin=30, CMI=0
-Uplink, AMR AFS: fn_begin=34, CMI=1
-Uplink, AMR AFS: fn_begin=39, CMI=0
-Uplink, AMR AFS: fn_begin=43, CMI=1
-Uplink, AMR AFS: fn_begin=47, CMI=0
-Uplink, AMR AFS: fn_begin=52, CMI=1
-Uplink, AMR AFS: fn_begin=56, CMI=0
-Uplink, AMR AFS: fn_begin=60, CMI=1
-Uplink, AMR AFS: fn_begin=65, CMI=0
-Uplink, AMR AFS: fn_begin=69, CMI=1
-Uplink, AMR AFS: fn_begin=73, CMI=0
-Uplink, AMR AFS: fn_begin=78, CMI=1
-Uplink, AMR AFS: fn_begin=82, CMI=0
-Uplink, AMR AFS: fn_begin=86, CMI=1
-Uplink, AMR AFS: fn_begin=91, CMI=0
-Uplink, AMR AFS: fn_begin=95, CMI=1
-Uplink, AMR AFS: fn_begin=99, CMI=0
-
-Downlink, AMR AFS: fn_begin=0, CMI=0
-Downlink, AMR AFS: fn_begin=4, CMI=1
-Downlink, AMR AFS: fn_begin=8, CMI=0
-Downlink, AMR AFS: fn_begin=13, CMI=1
-Downlink, AMR AFS: fn_begin=17, CMI=0
-Downlink, AMR AFS: fn_begin=21, CMI=1
-Downlink, AMR AFS: fn_begin=26, CMI=0
-Downlink, AMR AFS: fn_begin=30, CMI=1
-Downlink, AMR AFS: fn_begin=34, CMI=0
-Downlink, AMR AFS: fn_begin=39, CMI=1
-Downlink, AMR AFS: fn_begin=43, CMI=0
-Downlink, AMR AFS: fn_begin=47, CMI=1
-Downlink, AMR AFS: fn_begin=52, CMI=0
-Downlink, AMR AFS: fn_begin=56, CMI=1
-Downlink, AMR AFS: fn_begin=60, CMI=0
-Downlink, AMR AFS: fn_begin=65, CMI=1
-Downlink, AMR AFS: fn_begin=69, CMI=0
-Downlink, AMR AFS: fn_begin=73, CMI=1
-Downlink, AMR AFS: fn_begin=78, CMI=0
-Downlink, AMR AFS: fn_begin=82, CMI=1
-Downlink, AMR AFS: fn_begin=86, CMI=0
-Downlink, AMR AFS: fn_begin=91, CMI=1
-Downlink, AMR AFS: fn_begin=95, CMI=0
-Downlink, AMR AFS: fn_begin=99, CMI=1
amr_parse_mr_conf() <- 20 a5 0d 46 52 54
amr_parse_mr_conf() -> num_modes=4
Mode[0] = 0/13/4