diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/db/db_test.c | 39 | ||||
-rw-r--r-- | tests/db/db_test.err | 144 |
2 files changed, 183 insertions, 0 deletions
diff --git a/tests/db/db_test.c b/tests/db/db_test.c index 250b363..30de51d 100644 --- a/tests/db/db_test.c +++ b/tests/db/db_test.c @@ -244,6 +244,45 @@ static void test_subscr_create_update_sel_delete() ASSERT_RC(db_subscr_update_msisdn_by_imsi(dbc, "foobar", "99"), -ENOENT); ASSERT_SEL(msisdn, "99", -ENOENT); + comment("Set / unset nam_cs and nam_ps"); + + /* nam_val, is_ps */ + ASSERT_RC(db_subscr_nam(dbc, imsi0, false, true), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, false, false), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, true, false), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, true, true), 0); + ASSERT_SEL(imsi, imsi0, 0); + + comment("Set / unset nam_cs and nam_ps *again*"); + ASSERT_RC(db_subscr_nam(dbc, imsi0, false, true), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, false, true), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, false, false), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, false, false), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, true, true), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, true, true), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, true, false), 0); + ASSERT_SEL(imsi, imsi0, 0); + ASSERT_RC(db_subscr_nam(dbc, imsi0, true, false), 0); + ASSERT_SEL(imsi, imsi0, 0); + + comment("Set nam_cs and nam_ps on non-existent / invalid IMSI"); + + ASSERT_RC(db_subscr_nam(dbc, unknown_imsi, false, true), -ENOENT); + ASSERT_RC(db_subscr_nam(dbc, unknown_imsi, false, false), -ENOENT); + ASSERT_SEL(imsi, unknown_imsi, -ENOENT); + + ASSERT_RC(db_subscr_nam(dbc, "foobar", false, true), -ENOENT); + ASSERT_RC(db_subscr_nam(dbc, "foobar", false, false), -ENOENT); + comment("Delete non-existent / invalid IDs"); ASSERT_RC(db_subscr_delete_by_id(dbc, 999), -ENOENT); diff --git a/tests/db/db_test.err b/tests/db/db_test.err index 17323b5..f7c03d9 100644 --- a/tests/db/db_test.err +++ b/tests/db/db_test.err @@ -232,6 +232,150 @@ db_subscr_get_by_msisdn(dbc, "99", &g_subscr) --> -ENOENT DAUC Cannot read subscriber from db: MSISDN='99': No such subscriber +--- Set / unset nam_cs and nam_ps + +db_subscr_nam(dbc, imsi0, false, true) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_ps = false, +} + +db_subscr_nam(dbc, imsi0, false, false) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_cs = false, + .nam_ps = false, +} + +db_subscr_nam(dbc, imsi0, true, false) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_ps = false, +} + +db_subscr_nam(dbc, imsi0, true, true) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', +} + + +--- Set / unset nam_cs and nam_ps *again* + +db_subscr_nam(dbc, imsi0, false, true) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_ps = false, +} + +db_subscr_nam(dbc, imsi0, false, true) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_ps = false, +} + +db_subscr_nam(dbc, imsi0, false, false) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_cs = false, + .nam_ps = false, +} + +db_subscr_nam(dbc, imsi0, false, false) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_cs = false, + .nam_ps = false, +} + +db_subscr_nam(dbc, imsi0, true, true) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_cs = false, +} + +db_subscr_nam(dbc, imsi0, true, true) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', + .nam_cs = false, +} + +db_subscr_nam(dbc, imsi0, true, false) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', +} + +db_subscr_nam(dbc, imsi0, true, false) --> 0 + +db_subscr_get_by_imsi(dbc, imsi0, &g_subscr) --> 0 +struct hlr_subscriber { + .id = 1, + .imsi = '123456789000000', + .msisdn = '543210123456789', +} + + +--- Set nam_cs and nam_ps on non-existent / invalid IMSI + +db_subscr_nam(dbc, unknown_imsi, false, true) --> -ENOENT +DAUC Cannot disable PS: no such subscriber: IMSI='999999999' + +db_subscr_nam(dbc, unknown_imsi, false, false) --> -ENOENT +DAUC Cannot disable CS: no such subscriber: IMSI='999999999' + +db_subscr_get_by_imsi(dbc, unknown_imsi, &g_subscr) --> -ENOENT +DAUC Cannot read subscriber from db: IMSI='999999999': No such subscriber + +db_subscr_nam(dbc, "foobar", false, true) --> -ENOENT +DAUC Cannot disable PS: no such subscriber: IMSI='foobar' + +db_subscr_nam(dbc, "foobar", false, false) --> -ENOENT +DAUC Cannot disable CS: no such subscriber: IMSI='foobar' + + --- Delete non-existent / invalid IDs db_subscr_delete_by_id(dbc, 999) --> -ENOENT |