summaryrefslogtreecommitdiffstats
path: root/openbsc/tests/ctrl_test_runner.py
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2014-03-23 14:01:08 +0100
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2014-03-23 14:05:49 +0100
commit2d99eeb7f2c7978e9d96f5df61e462e6feb05973 (patch)
treeffe29fa00874ddb3aade11d773c49b8ea35f32e3 /openbsc/tests/ctrl_test_runner.py
parent9dbc3f8db7ca2c95ad6b986cdc4cd6c7a602a8b4 (diff)
nitb/ctrl: Implement creating and deleting subscribers
Sadly there is no proper foreign key relationship on the tables that related to the Subscriber. This means we can't use a DELETE with Cascade and need to delete everything by hand. To make things worse maybe the SMS/Paging code is still using the subscriber making the operation more dangerous. I had added NULL checks for sender_id/receiver_id at 30C3 so we should not crash in this situation. Fixes: SYS#274
Diffstat (limited to 'openbsc/tests/ctrl_test_runner.py')
-rw-r--r--openbsc/tests/ctrl_test_runner.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/openbsc/tests/ctrl_test_runner.py b/openbsc/tests/ctrl_test_runner.py
index 07a005d83..56e95144a 100644
--- a/openbsc/tests/ctrl_test_runner.py
+++ b/openbsc/tests/ctrl_test_runner.py
@@ -319,7 +319,7 @@ class TestCtrlNITB(TestCtrlBase):
def ctrl_app(self):
return (4249, "./src/osmo-nitb/osmo-nitb", "OsmoBSC", "nitb")
- def testSubscriberAdd(self):
+ def testSubscriberAddRemove(self):
r = self.do_set('subscriber-modify-v1', '2620345,445566')
self.assertEquals(r['mtype'], 'SET_REPLY')
self.assertEquals(r['var'], 'subscriber-modify-v1')
@@ -333,6 +333,14 @@ class TestCtrlNITB(TestCtrlBase):
# TODO. verify that the entry has been created and modified? Invoke
# the sqlite3 CLI or do it through the DB libraries?
+ r = self.do_set('subscriber-delete-v1', '2620345')
+ self.assertEquals(r['mtype'], 'SET_REPLY')
+ self.assertEquals(r['value'], 'Removed')
+
+ r = self.do_set('subscriber-delete-v1', '2620345')
+ self.assertEquals(r['mtype'], 'ERROR')
+ self.assertEquals(r['error'], 'Failed to find subscriber')
+
class TestCtrlNAT(TestCtrlBase):
def ctrl_command(self):