Fixed load preferences from DDBB.

Added logging.
Fixed test
squeeze-backports
Victor Seva 13 years ago
parent 78147d6c18
commit d10eb3a14b

@ -30,10 +30,10 @@ NGCPDomainPrefs_MT = { __index = NGCPDomainPrefs }
local result = {} local result = {}
local row = cur:fetch(result, "a") local row = cur:fetch(result, "a")
if row then if row then
sr.log("info", string.format("result:%s", table.tostring(result)))
while row do while row do
row = cur:fetch(result, "a") sr.log("info", string.format("result:%s row:%s", table.tostring(result), table.tostring(row)))
sr.log("info", string.format("result:%s", table.tostring(result))) table.insert(result, row)
row = cur:fetch({}, "a")
end end
sr.log("dbg",string.format("adding xavp %s[%d]", 'domain', level)) sr.log("dbg",string.format("adding xavp %s[%d]", 'domain', level))
self.xavp = NGCPXAvp:new(level,'domain',result) self.xavp = NGCPXAvp:new(level,'domain',result)

@ -28,9 +28,18 @@ NGCPPeerPrefs_MT = { __index = NGCPPeerPrefs }
local con = self.config:getDBConnection() local con = self.config:getDBConnection()
local query = "SELECT * FROM " .. self.db_table .. " WHERE uuid = '" .. uuid .. "'" local query = "SELECT * FROM " .. self.db_table .. " WHERE uuid = '" .. uuid .. "'"
local cur = assert (con:execute(query)) local cur = assert (con:execute(query))
local row = cur:fetch({}, "a") local result = {}
local row = cur:fetch(result, "a")
if row then if row then
self.xavp = NGCPXAvp:new(level,'peer',row) while row do
sr.log("info", string.format("result:%s row:%s", table.tostring(result), table.tostring(row)))
table.insert(result, row)
row = cur:fetch({}, "a")
end
sr.log("dbg",string.format("adding xavp %s[%d]", 'domain', level))
self.xavp = NGCPXAvp:new(level,'domain',result)
else
sr.log("dbg", string.format("no results for query:%s", query))
end end
cur:close() cur:close()
con:close() con:close()

@ -28,9 +28,18 @@ NGCPUserPrefs_MT = { __index = NGCPUserPrefs }
local con = self.config:getDBConnection() local con = self.config:getDBConnection()
local query = "SELECT * FROM " .. self.db_table .. " WHERE uuid ='" .. uuid .. "'" local query = "SELECT * FROM " .. self.db_table .. " WHERE uuid ='" .. uuid .. "'"
local cur = assert (con:execute(query)) local cur = assert (con:execute(query))
local row = cur:fetch({}, "a") local result = {}
local row = cur:fetch(result, "a")
if row then if row then
self.xavp = NGCPXAvp:new(level,'usr',row) while row do
sr.log("info", string.format("result:%s row:%s", table.tostring(result), table.tostring(row)))
table.insert(result, row)
row = cur:fetch({}, "a")
end
sr.log("dbg",string.format("adding xavp %s[%d]", 'domain', level))
self.xavp = NGCPXAvp:new(level,'domain',result)
else
sr.log("dbg", string.format("no results for query:%s", query))
end end
cur:close() cur:close()
con:close() con:close()

@ -61,7 +61,8 @@ TestNGCPDomainPrefs = {} --class
assertTrue(self.d.config) assertTrue(self.d.config)
self.config:getDBConnection() ;mc :returns(self.con) self.config:getDBConnection() ;mc :returns(self.con)
self.con:execute("SELECT * FROM dom_preferences WHERE domain ='192.168.51.56'") ;mc :returns(self.cur) self.con:execute("SELECT * FROM dom_preferences WHERE domain ='192.168.51.56'") ;mc :returns(self.cur)
self.cur:fetch(mc.ANYARGS) ;mc :returns(self.dp_vars:val("d_192_168_51_56")) :times(#dp_vars["d_192_168_51_56"]) self.cur:fetch(mc.ANYARGS) ;mc :returns(self.dp_vars:val("d_192_168_51_56"))
self.cur:fetch(mc.ANYARGS) ;mc :returns(self.dp_vars:val("d_192_168_51_56"))
self.cur:fetch(mc.ANYARGS) ;mc :returns(nil) self.cur:fetch(mc.ANYARGS) ;mc :returns(nil)
self.cur:close() self.cur:close()
self.con:close() self.con:close()
@ -75,15 +76,16 @@ TestNGCPDomainPrefs = {} --class
assertEquals(sr.pv.vars["$xavp(domain[0]=>dummy)"], "") assertEquals(sr.pv.vars["$xavp(domain[0]=>dummy)"], "")
assertEquals(self.d.xavp("dummy"),"") assertEquals(self.d.xavp("dummy"),"")
assertEquals(sr.pv.vars["$xavp(domain[0]=>sst_enable)"],"no") assertEquals(sr.pv.vars["$xavp(domain[0]=>sst_enable)"],"no")
assertFalse(self.d.xavp("error_key")) assertEquals(sr.pv.vars["$xavp(domain[0]=>sst_refresh_method)"], "UPDATE_FALLBACK_INVITE")
assertIsNil(self.d.xavp("error_key"))
end end
function TestNGCPDomainPrefs:test_callee_load() function TestNGCPDomainPrefs:test_callee_load()
assertTrue(self.d.config) assertTrue(self.d.config)
self.config:getDBConnection() ;mc :returns(self.con) self.config:getDBConnection() ;mc :returns(self.con)
self.con:execute("SELECT * FROM dom_preferences WHERE domain ='192.168.51.56'") ;mc :returns(self.cur) self.con:execute("SELECT * FROM dom_preferences WHERE domain ='192.168.51.56'") ;mc :returns(self.cur)
local i = 1 self.cur:fetch(mc.ANYARGS) ;mc :returns(self.dp_vars:val("d_192_168_51_56"))
self.cur:fetch({},"a") ;mc :returns(self.dp_vars:val("d_192_168_51_56")) :times(#dp_vars["d_192_168_51_56"]) self.cur:fetch(mc.ANYARGS) ;mc :returns(self.dp_vars:val("d_192_168_51_56"))
self.cur:fetch(mc.ANYARGS) ;mc :returns(nil) self.cur:fetch(mc.ANYARGS) ;mc :returns(nil)
self.cur:close() self.cur:close()
self.con:close() self.con:close()
@ -97,7 +99,8 @@ TestNGCPDomainPrefs = {} --class
--print(table.tostring(sr.pv.vars)) --print(table.tostring(sr.pv.vars))
assertFalse(sr.pv.vars["$xavp(domain[1]=>dummy)"]) assertFalse(sr.pv.vars["$xavp(domain[1]=>dummy)"])
assertEquals(sr.pv.vars["$xavp(domain[1]=>sst_enable)"],"no") assertEquals(sr.pv.vars["$xavp(domain[1]=>sst_enable)"],"no")
assertFalse(self.d.xavp("error_key")) assertEquals(sr.pv.vars["$xavp(domain[1]=>sst_refresh_method)"], "UPDATE_FALLBACK_INVITE")
assertIsNil(self.d.xavp("error_key"))
end end
-- class TestNGCPDomainPrefs -- class TestNGCPDomainPrefs

@ -7,6 +7,24 @@ require 'tests_v.pp_vars'
sr = srMock:new() sr = srMock:new()
local mc = nil local mc = nil
PPFetch = {
__class__ = 'PPFetch',
_i = 1
}
function PPFetch:new()
t = {}
return setmetatable(t, { __index = PPFetch })
end
function PPFetch:val(uuid)
self._i = self._i + 1
return pp_vars[uuid][self._i-1]
end
function PPFetch:reset()
self._i = 1
end
TestNGCPPeerPrefs = {} --class TestNGCPPeerPrefs = {} --class
function TestNGCPPeerPrefs:setUp() function TestNGCPPeerPrefs:setUp()
@ -27,6 +45,7 @@ TestNGCPPeerPrefs = {} --class
require 'ngcp.pp' require 'ngcp.pp'
self.d = NGCPPeerPrefs:new(self.config) self.d = NGCPPeerPrefs:new(self.config)
self.pp_vars = PPFetch:new()
end end
function TestNGCPPeerPrefs:tearDown() function TestNGCPPeerPrefs:tearDown()
@ -42,7 +61,9 @@ TestNGCPPeerPrefs = {} --class
assertTrue(self.d.config) assertTrue(self.d.config)
self.config:getDBConnection() ;mc :returns(self.con) self.config:getDBConnection() ;mc :returns(self.con)
self.con:execute("SELECT * FROM peer_preferences WHERE uuid = '2'") ;mc :returns(self.cur) self.con:execute("SELECT * FROM peer_preferences WHERE uuid = '2'") ;mc :returns(self.cur)
self.cur:fetch(mc.ANYARGS) ;mc :returns(pp_vars["p_2"]) self.cur:fetch(mc.ANYARGS) ;mc :returns(self.pp_vars:val("p_2"))
self.cur:fetch(mc.ANYARGS) ;mc :returns(self.pp_vars:val("p_2"))
self.cur:fetch(mc.ANYARGS) ;mc :returns(nil)
self.cur:close() self.cur:close()
self.con:close() self.con:close()
@ -52,16 +73,20 @@ TestNGCPPeerPrefs = {} --class
assertTrue(self.d.xavp) assertTrue(self.d.xavp)
assertEquals(self.d.xavp("sst_enable"),"no") assertEquals(self.d.xavp("sst_enable"),"no")
assertFalse(self.d.xavp("cc"),"43") assertEquals(sr.pv.vars["$xavp(domain[0]=>dummy)"], "")
assertEquals(self.d.xavp("use_rtpproxy"),"ice_strip_candidates") assertEquals(self.d.xavp("dummy"),"")
assertEquals(self.d.xavp("rewrite_caller_in_dpid"),1) assertEquals(sr.pv.vars["$xavp(domain[0]=>sst_enable)"],"no")
assertEquals(sr.pv.vars["$xavp(domain[0]=>sst_refresh_method)"], "UPDATE_FALLBACK_INVITE")
assertIsNil(self.d.xavp("error_key"))
end end
function TestNGCPPeerPrefs:test_callee_load() function TestNGCPPeerPrefs:test_callee_load()
assertTrue(self.d.config) assertTrue(self.d.config)
self.config:getDBConnection() ;mc :returns(self.con) self.config:getDBConnection() ;mc :returns(self.con)
self.con:execute("SELECT * FROM peer_preferences WHERE uuid = '2'") ;mc :returns(self.cur) self.con:execute("SELECT * FROM peer_preferences WHERE uuid = '2'") ;mc :returns(self.cur)
self.cur:fetch(mc.ANYARGS) ;mc :returns(pp_vars["p_2"]) self.cur:fetch(mc.ANYARGS) ;mc :returns(self.pp_vars:val("p_2"))
self.cur:fetch(mc.ANYARGS) ;mc :returns(self.pp_vars:val("p_2"))
self.cur:fetch(mc.ANYARGS) ;mc :returns(nil)
self.cur:close() self.cur:close()
self.con:close() self.con:close()
@ -71,9 +96,11 @@ TestNGCPPeerPrefs = {} --class
assertTrue(self.d.xavp) assertTrue(self.d.xavp)
assertEquals(self.d.xavp("sst_enable"),"no") assertEquals(self.d.xavp("sst_enable"),"no")
assertFalse(self.d.xavp("cc"),"43") --print(table.tostring(sr.pv.vars))
assertEquals(self.d.xavp("use_rtpproxy"),"ice_strip_candidates") assertFalse(sr.pv.vars["$xavp(domain[1]=>dummy)"])
assertEquals(self.d.xavp("rewrite_caller_in_dpid"),1) assertEquals(sr.pv.vars["$xavp(domain[1]=>sst_enable)"],"no")
assertEquals(sr.pv.vars["$xavp(domain[1]=>sst_refresh_method)"], "UPDATE_FALLBACK_INVITE")
assertIsNil(self.d.xavp("error_key"))
end end
-- class TestNGCPPeerPrefs -- class TestNGCPPeerPrefs

@ -7,6 +7,24 @@ require 'tests_v.up_vars'
sr = srMock:new() sr = srMock:new()
local mc = nil local mc = nil
UPFetch = {
__class__ = 'UPFetch',
_i = 1
}
function UPFetch:new()
t = {}
return setmetatable(t, { __index = UPFetch })
end
function UPFetch:val(uuid)
self._i = self._i + 1
return up_vars[uuid][self._i-1]
end
function UPFetch:reset()
self._i = 1
end
TestNGCPUserPrefs = {} --class TestNGCPUserPrefs = {} --class
function TestNGCPUserPrefs:setUp() function TestNGCPUserPrefs:setUp()
@ -27,6 +45,7 @@ TestNGCPUserPrefs = {} --class
require 'ngcp.up' require 'ngcp.up'
self.d = NGCPUserPrefs:new(self.config) self.d = NGCPUserPrefs:new(self.config)
self.up_vars = UPFetch:new()
end end
function TestNGCPUserPrefs:tearDown() function TestNGCPUserPrefs:tearDown()
@ -42,7 +61,11 @@ TestNGCPUserPrefs = {} --class
assertTrue(self.d.config) assertTrue(self.d.config)
self.config:getDBConnection() ;mc :returns(self.con) self.config:getDBConnection() ;mc :returns(self.con)
self.con:execute("SELECT * FROM usr_preferences WHERE uuid ='ae736f72-21d1-4ea6-a3ea-4d7f56b3887c'") ;mc :returns(self.cur) 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(up_vars["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.cur:close()
self.con:close() self.con:close()
@ -61,7 +84,11 @@ TestNGCPUserPrefs = {} --class
assertTrue(self.d.config) assertTrue(self.d.config)
self.config:getDBConnection() ;mc :returns(self.con) self.config:getDBConnection() ;mc :returns(self.con)
self.con:execute("SELECT * FROM usr_preferences WHERE uuid ='ae736f72-21d1-4ea6-a3ea-4d7f56b3887c'") ;mc :returns(self.cur) 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(up_vars["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.cur:close()
self.con:close() self.con:close()
@ -74,6 +101,7 @@ TestNGCPUserPrefs = {} --class
assertEquals(self.d.xavp("cc"),"43") assertEquals(self.d.xavp("cc"),"43")
assertEquals(self.d.xavp("ac"),"1") assertEquals(self.d.xavp("ac"),"1")
assertEquals(self.d.xavp("cli"),"4311001") assertEquals(self.d.xavp("cli"),"4311001")
assertIsNil(self.d.xavp("error_key"))
end end
-- class TestNGCPUserPrefs -- class TestNGCPUserPrefs

Loading…
Cancel
Save