diff options
author | Max <msuraev@sysmocom.de> | 2016-06-07 15:32:16 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2016-06-14 22:20:40 +0000 |
commit | 0fcd2e2fec966ac4e17222e7f53f2d0e5a7bf0ba (patch) | |
tree | 49bb94bc7ad856f277a72fd62c650a16d21e76ea /openbsc/tests | |
parent | e152ffe14d1dfe2ffb4892ada5eede6ccb429338 (diff) |
Make random extension range configurable
Previously if subscriber was automatically created it got assigned
random MSISDN number between 20000 and 49999. Make it configurable with
new vty command "subscriber-create-on-demand random" and expand vty
tests to check it.
Change-Id: I040a1d227b0c7a1601dc7c33eccb0007941408a6
Related: OS#1658
Diffstat (limited to 'openbsc/tests')
-rw-r--r-- | openbsc/tests/db/db_test.c | 6 | ||||
-rw-r--r-- | openbsc/tests/vty_test_runner.py | 21 |
2 files changed, 24 insertions, 3 deletions
diff --git a/openbsc/tests/db/db_test.c b/openbsc/tests/db/db_test.c index ee0cbca5b..dc814813d 100644 --- a/openbsc/tests/db/db_test.c +++ b/openbsc/tests/db/db_test.c @@ -164,7 +164,7 @@ 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); + alice = db_create_subscriber(alice_imsi, GSM_MIN_EXTEN, GSM_MAX_EXTEN); db_subscriber_assoc_imei(alice, imei1); if (imei2) db_subscriber_assoc_imei(alice, imei2); @@ -217,7 +217,7 @@ int main() struct gsm_subscriber *alice_db; char *alice_imsi = "3243245432345"; - alice = db_create_subscriber(alice_imsi); + alice = db_create_subscriber(alice_imsi, GSM_MIN_EXTEN, GSM_MAX_EXTEN); db_sync_subscriber(alice); alice_db = db_get_subscriber(GSM_SUBSCRIBER_IMSI, alice->imsi); COMPARE(alice, alice_db); @@ -228,7 +228,7 @@ int main() test_subs("9993245423445", "1234567890", "6543560920"); /* create it again and see it fails */ - alice = db_create_subscriber(alice_imsi); + alice = db_create_subscriber(alice_imsi, GSM_MIN_EXTEN, GSM_MAX_EXTEN); OSMO_ASSERT(!alice); test_sms(); diff --git a/openbsc/tests/vty_test_runner.py b/openbsc/tests/vty_test_runner.py index c264328a9..9ea988d62 100644 --- a/openbsc/tests/vty_test_runner.py +++ b/openbsc/tests/vty_test_runner.py @@ -424,11 +424,13 @@ class TestVTYNITB(TestVTYGenericBSC): self.vty.enable() imsi = "204300854013739" + imsi2 = "204301824913769" wrong_imsi = "204300999999999" # Lets create one res = self.vty.command('subscriber create imsi '+imsi) self.assert_(res.find(" IMSI: "+imsi) > 0) + self.assert_(res.find("Extension") > 0) self.vty.verify('subscriber imsi '+wrong_imsi+' name wrong', ['% No subscriber found for imsi '+wrong_imsi]) res = self.vty.command('subscriber imsi '+imsi+' name '+('X' * 160)) @@ -442,9 +444,28 @@ class TestVTYNITB(TestVTYGenericBSC): self.vty.verify('subscriber imsi '+imsi+' extension '+('1' * 14), ['']) + # With narrow random interval + self.vty.command("configure terminal") + self.vty.command("nitb") + self.assertTrue(self.vty.verify("subscriber-create-on-demand", [''])) + # wrong interval + res = self.vty.command("subscriber-create-on-demand random 221 122") + self.assert_(res.find("122") > 0) + self.assert_(res.find("221") > 0) + # correct interval + self.assertTrue(self.vty.verify("subscriber-create-on-demand random 221 222", [''])) + self.vty.command("end") + + res = self.vty.command('subscriber create imsi ' + imsi2) + self.assert_(res.find(" IMSI: " + imsi2) > 0) + self.assert_(res.find("221") > 0 or res.find("222") > 0) + self.assert_(res.find(" Extension: ") > 0) + # Delete it res = self.vty.command('subscriber delete imsi '+imsi) self.assert_(res != "") + res = self.vty.command('subscriber delete imsi ' + imsi2) + self.assert_(res != "") def testShowPagingGroup(self): res = self.vty.command("show paging-group 255 1234567") |