Fix clean. Test it.

squeeze-backports
Victor Seva 12 years ago
parent c735d1692e
commit 746e5bbe2f

@ -43,8 +43,17 @@ NGCPPeerPrefs_MT = { __index = NGCPPeerPrefs }
con:close()
end
function NGCPPeerPrefs:clean()
sr.pv.unset("$xavp(peer)")
function NGCPPeerPrefs:clean(vtype)
local xavp
if not vtype then
sr.pv.unset("$xavp(peer)")
elseif vtype == 'callee' then
xavp = NGCPXAvp:new('callee','peer',{})
xavp:clean()
elseif vtype == 'caller' then
xavp = NGCPXAvp:new('caller','peer',{})
xavp:clean()
end
end
-- class
--EOF

@ -48,8 +48,17 @@ NGCPUserPrefs_MT = { __index = NGCPUserPrefs }
return keys
end
function NGCPUserPrefs:clean(...)
sr.pv.unset("$xavp(user)")
function NGCPUserPrefs:clean(vtype)
local xavp
if not vtype then
sr.pv.unset("$xavp(user)")
elseif vtype == 'callee' then
xavp = NGCPXAvp:new('callee','user',{})
xavp:clean()
elseif vtype == 'caller' then
xavp = NGCPXAvp:new('caller','user',{})
xavp:clean()
end
end
-- class
--EOF

@ -102,6 +102,63 @@ TestNGCPPeerPrefs = {} --class
assertEquals(sr.pv.get("$xavp(domain[1]=>sst_refresh_method)"), "UPDATE_FALLBACK_INVITE")
assertIsNil(self.d.xavp("error_key"))
end
function TestNGCPPeerPrefs:test_clean()
local xavp = NGCPXAvp:new('callee','peer',{})
xavp("testid",1)
xavp("foo","foo")
assertEquals(sr.pv.get("$xavp(peer[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(peer[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(peer[0]=>dummy)"),"caller")
self.d:clean()
assertFalse(sr.pv.get("$xavp(peer[0]=>dummy)"))
assertFalse(sr.pv.get("$xavp(peer[1]=>dummy)"))
assertFalse(sr.pv.get("$xavp(peer)"))
end
function TestNGCPPeerPrefs:test_callee_clean()
local callee_xavp = NGCPXAvp:new('callee','peer',{})
callee_xavp("testid",1)
callee_xavp("foo","foo")
local caller_xavp = NGCPXAvp:new('caller','peer',{})
caller_xavp("other",1)
caller_xavp("otherfoo","foo")
assertEquals(sr.pv.get("$xavp(peer[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(peer[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(peer[0]=>dummy)"),"caller")
assertEquals(sr.pv.get("$xavp(peer[0]=>other)"),1)
assertEquals(sr.pv.get("$xavp(peer[0]=>otherfoo)"),"foo")
assertEquals(sr.pv.get("$xavp(peer[1]=>dummy)"),"callee")
self.d:clean('callee')
assertEquals(sr.pv.get("$xavp(peer[0]=>dummy)"),'caller')
assertFalse(sr.pv.get("$xavp(peer[1]=>testid)"))
assertFalse(sr.pv.get("$xavp(peer[1]=>foo)"))
assertEquals(sr.pv.get("$xavp(peer[0]=>other)"),1)
assertEquals(sr.pv.get("$xavp(peer[0]=>otherfoo)"),"foo")
assertEquals(sr.pv.get("$xavp(peer[1]=>dummy)"),"callee")
end
function TestNGCPPeerPrefs:test_caller_clean()
local callee_xavp = NGCPXAvp:new('callee','peer',{})
callee_xavp("testid",1)
callee_xavp("foo","foo")
local caller_xavp = NGCPXAvp:new('caller','peer',{})
caller_xavp("other",1)
caller_xavp("otherfoo","foo")
assertEquals(sr.pv.get("$xavp(peer[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(peer[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(peer[0]=>dummy)"),"caller")
assertEquals(sr.pv.get("$xavp(peer[0]=>other)"),1)
assertEquals(sr.pv.get("$xavp(peer[0]=>otherfoo)"),"foo")
assertEquals(sr.pv.get("$xavp(peer[1]=>dummy)"),"callee")
self.d:clean('caller')
assertEquals(sr.pv.get("$xavp(peer[0]=>dummy)"),'caller')
assertFalse(sr.pv.get("$xavp(peer[0]=>other)"))
assertFalse(sr.pv.get("$xavp(peer[0]=>otherfoo)"))
assertEquals(sr.pv.get("$xavp(peer[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(peer[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(peer[1]=>dummy)"),"callee")
end
-- class TestNGCPPeerPrefs
---- Control test output:

@ -102,6 +102,63 @@ TestNGCPUserPrefs = {} --class
assertEquals(sr.pv.get("$xavp(user[1]=>ac)"),"1")
assertItemsEquals(keys, {"account_id", "cli", "cc", "ac"})
end
function TestNGCPUserPrefs:test_clean()
local xavp = NGCPXAvp:new('callee','user',{})
xavp("testid",1)
xavp("foo","foo")
assertEquals(sr.pv.get("$xavp(user[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(user[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(user[0]=>dummy)"),"caller")
self.d:clean()
assertFalse(sr.pv.get("$xavp(user[0]=>dummy)"))
assertFalse(sr.pv.get("$xavp(user[1]=>dummy)"))
assertFalse(sr.pv.get("$xavp(user)"))
end
function TestNGCPUserPrefs:test_callee_clean()
local callee_xavp = NGCPXAvp:new('callee','user',{})
callee_xavp("testid",1)
callee_xavp("foo","foo")
local caller_xavp = NGCPXAvp:new('caller','user',{})
caller_xavp("other",1)
caller_xavp("otherfoo","foo")
assertEquals(sr.pv.get("$xavp(user[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(user[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(user[0]=>dummy)"),"caller")
assertEquals(sr.pv.get("$xavp(user[0]=>other)"),1)
assertEquals(sr.pv.get("$xavp(user[0]=>otherfoo)"),"foo")
assertEquals(sr.pv.get("$xavp(user[1]=>dummy)"),"callee")
self.d:clean('callee')
assertEquals(sr.pv.get("$xavp(user[0]=>dummy)"),'caller')
assertFalse(sr.pv.get("$xavp(user[1]=>testid)"))
assertFalse(sr.pv.get("$xavp(user[1]=>foo)"))
assertEquals(sr.pv.get("$xavp(user[0]=>other)"),1)
assertEquals(sr.pv.get("$xavp(user[0]=>otherfoo)"),"foo")
assertEquals(sr.pv.get("$xavp(user[1]=>dummy)"),"callee")
end
function TestNGCPUserPrefs:test_caller_clean()
local callee_xavp = NGCPXAvp:new('callee','user',{})
callee_xavp("testid",1)
callee_xavp("foo","foo")
local caller_xavp = NGCPXAvp:new('caller','user',{})
caller_xavp("other",1)
caller_xavp("otherfoo","foo")
assertEquals(sr.pv.get("$xavp(user[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(user[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(user[0]=>dummy)"),"caller")
assertEquals(sr.pv.get("$xavp(user[0]=>other)"),1)
assertEquals(sr.pv.get("$xavp(user[0]=>otherfoo)"),"foo")
assertEquals(sr.pv.get("$xavp(user[1]=>dummy)"),"callee")
self.d:clean('caller')
assertEquals(sr.pv.get("$xavp(user[0]=>dummy)"),'caller')
assertFalse(sr.pv.get("$xavp(user[0]=>other)"))
assertFalse(sr.pv.get("$xavp(user[0]=>otherfoo)"))
assertEquals(sr.pv.get("$xavp(user[1]=>testid)"),1)
assertEquals(sr.pv.get("$xavp(user[1]=>foo)"),"foo")
assertEquals(sr.pv.get("$xavp(user[1]=>dummy)"),"callee")
end
-- class TestNGCPUserPrefs
---- Control test output:

Loading…
Cancel
Save