summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax <msuraev@sysmocom.de>2016-05-11 13:05:13 +0200
committerHolger Freyther <holger@freyther.de>2016-05-17 16:14:06 +0000
commit9a7e25b9c3491416b8c41e4a7caeb86ba2167b78 (patch)
tree6798456863a36e87f313bc04fc695b69d4aa934d
parenta8d8e93086580904aded88ffb957a6e7e3660cbe (diff)
Cleanup db test
Move copy-pasted code into separate function to make writing more tests easier. Related: OS#1658 Change-Id: I9e39af85718514dd0f081d41c234c9dda77c4b27 Reviewed-on: https://gerrit.osmocom.org/43 Tested-by: Jenkins Builder Reviewed-by: Holger Freyther <holger@freyther.de>
-rw-r--r--openbsc/tests/db/db_test.c87
1 files changed, 34 insertions, 53 deletions
diff --git a/openbsc/tests/db/db_test.c b/openbsc/tests/db/db_test.c
index fb159a5b1..ee0cbca5b 100644
--- a/openbsc/tests/db/db_test.c
+++ b/openbsc/tests/db/db_test.c
@@ -159,10 +159,41 @@ static void test_sms_migrate(void)
subscr_put(rcv_subscr);
}
-int main()
+static void test_subs(const char *alice_imsi, char *imei1, char *imei2)
{
+ struct gsm_subscriber *alice = NULL, *alice_db;
char scratch_str[256];
+ alice = db_create_subscriber(alice_imsi);
+ db_subscriber_assoc_imei(alice, imei1);
+ if (imei2)
+ db_subscriber_assoc_imei(alice, imei2);
+ db_subscriber_alloc_tmsi(alice);
+ alice->lac=42;
+ db_sync_subscriber(alice);
+ /* Get by TMSI */
+ snprintf(scratch_str, sizeof(scratch_str), "%"PRIu32, alice->tmsi);
+ alice_db = db_get_subscriber(GSM_SUBSCRIBER_TMSI, scratch_str);
+ COMPARE(alice, alice_db);
+ SUBSCR_PUT(alice_db);
+ /* Get by IMSI */
+ alice_db = db_get_subscriber(GSM_SUBSCRIBER_IMSI, alice_imsi);
+ COMPARE(alice, alice_db);
+ SUBSCR_PUT(alice_db);
+ /* Get by id */
+ snprintf(scratch_str, sizeof(scratch_str), "%llu", alice->id);
+ alice_db = db_get_subscriber(GSM_SUBSCRIBER_ID, scratch_str);
+ COMPARE(alice, alice_db);
+ SUBSCR_PUT(alice_db);
+ /* Get by extension */
+ alice_db = db_get_subscriber(GSM_SUBSCRIBER_EXTENSION, alice->extension);
+ COMPARE(alice, alice_db);
+ SUBSCR_PUT(alice_db);
+ SUBSCR_PUT(alice);
+}
+
+int main()
+{
printf("Testing subscriber database code.\n");
osmo_init_logging(&log_info);
log_set_print_filename(osmo_stderr_target, 0);
@@ -193,58 +224,8 @@ int main()
SUBSCR_PUT(alice_db);
SUBSCR_PUT(alice);
- alice_imsi = "3693245423445";
- alice = db_create_subscriber(alice_imsi);
- db_subscriber_assoc_imei(alice, "1234567890");
- db_subscriber_alloc_tmsi(alice);
- alice->lac=42;
- db_sync_subscriber(alice);
- /* Get by TMSI */
- snprintf(scratch_str, sizeof(scratch_str), "%"PRIu32, alice->tmsi);
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_TMSI, scratch_str);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- /* Get by IMSI */
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_IMSI, alice_imsi);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- /* Get by id */
- snprintf(scratch_str, sizeof(scratch_str), "%llu", alice->id);
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_ID, scratch_str);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- /* Get by extension */
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_EXTENSION, alice->extension);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- SUBSCR_PUT(alice);
-
- alice_imsi = "9993245423445";
- alice = db_create_subscriber(alice_imsi);
- db_subscriber_alloc_tmsi(alice);
- alice->lac=42;
- db_sync_subscriber(alice);
- db_subscriber_assoc_imei(alice, "1234567890");
- db_subscriber_assoc_imei(alice, "6543560920");
- /* Get by TMSI */
- snprintf(scratch_str, sizeof(scratch_str), "%"PRIu32, alice->tmsi);
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_TMSI, scratch_str);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- /* Get by IMSI */
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_IMSI, alice_imsi);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- /* Get by id */
- snprintf(scratch_str, sizeof(scratch_str), "%llu", alice->id);
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_ID, scratch_str);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- /* Get by extension */
- alice_db = db_get_subscriber(GSM_SUBSCRIBER_EXTENSION, alice->extension);
- COMPARE(alice, alice_db);
- SUBSCR_PUT(alice_db);
- SUBSCR_PUT(alice);
+ test_subs("3693245423445", "1234567890", NULL);
+ test_subs("9993245423445", "1234567890", "6543560920");
/* create it again and see it fails */
alice = db_create_subscriber(alice_imsi);