diff --git a/ngcp/ngcp.lua b/ngcp/ngcp.lua index ab00266..3a2d5fd 100644 --- a/ngcp/ngcp.lua +++ b/ngcp/ngcp.lua @@ -160,6 +160,7 @@ end {"caller_ring_group_policy", "ring_group_policy"} }, caller_real_prefs = { + {"caller_no_nat_sipping", "no_nat_sipping"}, {"caller_reject_emergency", "reject_emergency"}, {"caller_ncos_id", "ncos_id"}, {"caller_inbound_upn", "inbound_upn"}, diff --git a/tests/ngcp.lua b/tests/ngcp.lua index 28bbe08..ee4d7c0 100644 --- a/tests/ngcp.lua +++ b/tests/ngcp.lua @@ -92,6 +92,35 @@ TestNGCP = {} --class assertEquals(self.ngcp:caller_usr_load(), {}) end + function TestNGCP:test_caller_usr_load_empty_dom() + local c = self.ngcp.config + env:connect(c.db_database, c.db_username, c.db_pass, c.db_host, c.db_port) ;mc :returns(self.con) + self.con:execute("SELECT * FROM usr_preferences WHERE uuid ='ae736f72-21d1-4ea6-a3ea-4d7f56b3887c'") ;mc :returns(self.cur) + self.cur:fetch(mc.ANYARGS) ;mc :returns(self.up_vars:val("ae736f72_21d1_4ea6_a3ea_4d7f56b3887c")) + self.cur:fetch(mc.ANYARGS) ;mc :returns(self.up_vars:val("ae736f72_21d1_4ea6_a3ea_4d7f56b3887c")) + self.cur:fetch(mc.ANYARGS) ;mc :returns(self.up_vars:val("ae736f72_21d1_4ea6_a3ea_4d7f56b3887c")) + self.cur:fetch(mc.ANYARGS) ;mc :returns(self.up_vars:val("ae736f72_21d1_4ea6_a3ea_4d7f56b3887c")) + self.cur:fetch(mc.ANYARGS) ;mc :returns(self.up_vars:val("ae736f72_21d1_4ea6_a3ea_4d7f56b3887c")) + self.cur:fetch(mc.ANYARGS) ;mc :returns(nil) + self.cur:close() + self.con:close() + + mc:replay() + local keys = self.ngcp:caller_usr_load("ae736f72-21d1-4ea6-a3ea-4d7f56b3887c") + mc:verify() + + assertEquals(sr.pv.get("$xavp(caller_usr_prefs=>dummy)"), "caller") + assertEquals(sr.pv.get("$xavp(caller_real_prefs=>account_id)"), 2) + assertEquals(sr.pv.get("$avp(s:caller_account_id)"), 2) + assertEquals(sr.pv.get("$xavp(caller_real_prefs=>cli)"), "4311001") + assertEquals(sr.pv.get("$xavp(caller_real_prefs=>cc)"), "43") + assertEquals(sr.pv.get("$avp(s:caller_cc)"), "43") + assertEquals(sr.pv.get("$xavp(caller_real_prefs=>ac)"), "1") + assertEquals(sr.pv.get("$avp(s:caller_ac)"), "1") + assertEquals(sr.pv.get("$xavp(caller_real_prefs=>no_nat_sipping)"), "no") + assertEquals(sr.pv.get("$avp(s:caller_no_nat_sipping)"), "no") + end + function TestNGCP:test_caller_usr_load() local c = self.ngcp.config env:connect(c.db_database, c.db_username, c.db_pass, c.db_host, c.db_port) ;mc :returns(self.con) diff --git a/tests_v/up_vars.lua b/tests_v/up_vars.lua index 9e32bc6..b60d5e9 100644 --- a/tests_v/up_vars.lua +++ b/tests_v/up_vars.lua @@ -39,6 +39,16 @@ up_vars = { type = 0, value = "1", last_modified = "1900-01-01 00:00:01" + }, + { + id = 10, + uuid = "ae736f72-21d1-4ea6-a3ea-4d7f56b3887c", + username = "testuser1", + domain = "192.168.51.56", + attribute = "no_nat_sipping", + type = 0, + value = "no", + last_modified = "1900-01-01 00:00:01" } }, _94023caf_dfba_4f33_8bdb_b613ce627613 = {