return keys when in load functions.

Don't use internal key for xavp
squeeze-backports
Victor Seva 13 years ago
parent f0e78c415e
commit d93e7d2a04

@ -4,7 +4,7 @@ require 'ngcp.xavp'
-- class NGCPDomainPrefs
NGCPDomainPrefs = {
__class__ = 'NGCPDomainPrefs'
}
}
NGCPDomainPrefs_MT = { __index = NGCPDomainPrefs }
function NGCPDomainPrefs:new(config)
@ -16,37 +16,40 @@ NGCPDomainPrefs_MT = { __index = NGCPDomainPrefs }
end
function NGCPDomainPrefs:caller_load(uuid)
NGCPDomainPrefs._load(self,"caller",uuid)
return NGCPDomainPrefs._load(self,"caller",uuid)
end
function NGCPDomainPrefs:callee_load(uuid)
NGCPDomainPrefs._load(self,"callee",uuid)
return NGCPDomainPrefs._load(self,"callee",uuid)
end
function NGCPDomainPrefs:_load(level, uuid)
local con = assert (self.config:getDBConnection())
local query = "SELECT * FROM " .. self.db_table .. " WHERE domain ='" .. uuid .."'"
local cur = assert (con:execute(query))
local keys = {}
local result = {}
local row = cur:fetch({}, "a")
local xavp
if row then
while row do
--sr.log("info", string.format("result:%s row:%s", table.tostring(result), table.tostring(row)))
table.insert(result, row)
table.insert(keys, row.attribute)
row = cur:fetch({}, "a")
end
self.xavp = NGCPXAvp:new(level,'domain',result)
xavp = NGCPXAvp:new(level,'domain',result)
else
sr.log("dbg", string.format("no results for query:%s", query))
end
cur:close()
con:close()
return keys
end
function NGCPDomainPrefs:clean(...)
if self.xavp then
self.xavp:clean()
end
function NGCPDomainPrefs:clean()
sr.pv.unset("$xavp(domain)")
end
-- class
--EOF

@ -16,37 +16,40 @@ NGCPUserPrefs_MT = { __index = NGCPUserPrefs }
end
function NGCPUserPrefs:caller_load(uuid)
NGCPUserPrefs._load(self,"caller",uuid)
return NGCPUserPrefs._load(self,"caller",uuid)
end
function NGCPUserPrefs:callee_load(uuid)
NGCPUserPrefs._load(self,"callee",uuid)
return NGCPUserPrefs._load(self,"callee",uuid)
end
function NGCPUserPrefs:_load(level, uuid)
local con = assert (self.config:getDBConnection())
local query = "SELECT * FROM " .. self.db_table .. " WHERE uuid ='" .. uuid .. "'"
local cur = assert (con:execute(query))
local keys = {}
local result = {}
local row = cur:fetch({}, "a")
local xavp
if row then
while row do
--sr.log("info", string.format("result:%s row:%s", table.tostring(result), table.tostring(row)))
table.insert(result, row)
table.insert(keys, row.attribute)
row = cur:fetch({}, "a")
end
self.xavp = NGCPXAvp:new(level,'user',result)
xavp = NGCPXAvp:new(level,'user',result)
else
sr.log("dbg", string.format("no results for query:%s", query))
end
cur:close()
con:close()
return keys
end
function NGCPUserPrefs:clean(...)
if self.xavp then
self.xavp:clean()
end
sr.pv.unset("$xavp(user)")
end
-- class
--EOF

@ -68,14 +68,12 @@ TestNGCPDomainPrefs = {} --class
self.con:close()
mc:replay()
self.d:caller_load("192.168.51.56")
local keys = self.d:caller_load("192.168.51.56")
mc:verify()
assertTrue(self.d.xavp)
assertEquals(self.d.xavp("sst_enable"),"no")
assertEquals(sr.pv.get("$xavp(domain[0]=>sst_enable)"),"no")
assertEquals(sr.pv.get("$xavp(domain[0]=>sst_refresh_method)"), "UPDATE_FALLBACK_INVITE")
assertIsNil(self.d.xavp("error_key"))
assertItemsEquals(keys, {"sst_enable", "sst_refresh_method"})
end
function TestNGCPDomainPrefs:test_callee_load()
@ -89,14 +87,12 @@ TestNGCPDomainPrefs = {} --class
self.con:close()
mc:replay()
self.d:callee_load("192.168.51.56")
local keys = self.d:callee_load("192.168.51.56")
mc:verify()
assertTrue(self.d.xavp)
assertEquals(self.d.xavp("sst_enable"),"no")
assertEquals(sr.pv.get("$xavp(domain[1]=>sst_enable)"),"no")
assertEquals(sr.pv.get("$xavp(domain[1]=>sst_refresh_method)"), "UPDATE_FALLBACK_INVITE")
assertIsNil(self.d.xavp("error_key"))
assertItemsEquals(keys, {"sst_enable", "sst_refresh_method"})
end
-- class TestNGCPDomainPrefs

@ -70,16 +70,14 @@ TestNGCPUserPrefs = {} --class
self.con:close()
mc:replay()
self.d:caller_load("ae736f72-21d1-4ea6-a3ea-4d7f56b3887c")
local keys = self.d:caller_load("ae736f72-21d1-4ea6-a3ea-4d7f56b3887c")
mc:verify()
assertTrue(self.d.xavp)
assertEquals(self.d.xavp("cli"),"4311001")
assertEquals(sr.pv.get("$xavp(user[0]=>account_id)"),2)
assertEquals(sr.pv.get("$xavp(user[0]=>cli)"),"4311001")
assertEquals(self.d.xavp("cc"),"43")
assertEquals(sr.pv.get("$xavp(user[0]=>cc)"),"43")
assertEquals(self.d.xavp("ac"),"1")
assertEquals(sr.pv.get("$xavp(user[0]=>ac)"),"1")
assertItemsEquals(keys, {"account_id", "cli", "cc", "ac"})
end
function TestNGCPUserPrefs:test_callee_load()
@ -95,17 +93,14 @@ TestNGCPUserPrefs = {} --class
self.con:close()
mc:replay()
self.d:callee_load("ae736f72-21d1-4ea6-a3ea-4d7f56b3887c")
local keys = self.d:callee_load("ae736f72-21d1-4ea6-a3ea-4d7f56b3887c")
mc:verify()
assertTrue(self.d.xavp)
assertEquals(self.d.xavp("cli"),"4311001")
assertEquals(sr.pv.get("$xavp(user[1]=>account_id)"),2)
assertEquals(sr.pv.get("$xavp(user[1]=>cli)"),"4311001")
assertEquals(self.d.xavp("cc"),"43")
assertEquals(sr.pv.get("$xavp(user[1]=>cc)"),"43")
assertEquals(self.d.xavp("ac"),"1")
assertEquals(sr.pv.get("$xavp(user[1]=>ac)"),"1")
assertItemsEquals(keys, {"account_id", "cli", "cc", "ac"})
end
-- class TestNGCPUserPrefs

Loading…
Cancel
Save