mirror of https://github.com/koreader/koreader
network(fix): automaticallly obtain IP if network is already authenticated
parent
8a9811804d
commit
efae2ed16f
@ -1 +1 @@
|
||||
Subproject commit 0f7eceea34b5c64a7ac968eb0ce208740930891c
|
||||
Subproject commit df6a7168074685fd216a9b07d785adcc50a0132d
|
@ -0,0 +1,68 @@
|
||||
describe("NetworkSetting module", function()
|
||||
local NetworkSetting, NetworkMgr
|
||||
setup(function()
|
||||
require("commonrequire")
|
||||
NetworkSetting = require("ui/widget/networksetting")
|
||||
NetworkMgr = require("ui/network/manager")
|
||||
end)
|
||||
|
||||
it("should initilize properly with empty network list", function()
|
||||
local ns = NetworkSetting:new{network_list = {}}
|
||||
assert.is.falsy(ns.connected_item)
|
||||
end)
|
||||
|
||||
it("should call connect_callback after disconnect", function()
|
||||
stub(NetworkMgr, "disconnectNetwork")
|
||||
stub(NetworkMgr, "releaseIP")
|
||||
|
||||
local called = false
|
||||
local network_list = {
|
||||
{
|
||||
ssid = "foo",
|
||||
signal_level = -58,
|
||||
flags = "[WPA2-PSK-CCMP][ESS]",
|
||||
signal_quality = 84,
|
||||
password = "123abc",
|
||||
connected = true,
|
||||
},
|
||||
}
|
||||
local ns = NetworkSetting:new{
|
||||
network_list = network_list,
|
||||
connect_callback = function() called = true end
|
||||
}
|
||||
ns.connected_item:disconnect()
|
||||
assert.truthy(called)
|
||||
|
||||
NetworkMgr.disconnectNetwork:revert()
|
||||
NetworkMgr.releaseIP:revert()
|
||||
end)
|
||||
|
||||
it("should set connected_item to nil after disconnect", function()
|
||||
stub(NetworkMgr, "disconnectNetwork")
|
||||
stub(NetworkMgr, "releaseIP")
|
||||
|
||||
local network_list = {
|
||||
{
|
||||
ssid = "foo",
|
||||
signal_level = -58,
|
||||
flags = "[WPA2-PSK-CCMP][ESS]",
|
||||
signal_quality = 84,
|
||||
password = "123abc",
|
||||
connected = true,
|
||||
},
|
||||
{
|
||||
ssid = "bar",
|
||||
signal_level = -258,
|
||||
signal_quality = 44,
|
||||
flags = "[WEP][ESS]",
|
||||
},
|
||||
}
|
||||
local ns = NetworkSetting:new{network_list = network_list}
|
||||
assert.is.same("foo", ns.connected_item.info.ssid)
|
||||
ns.connected_item:disconnect()
|
||||
assert.is.falsy(ns.connected_item)
|
||||
|
||||
NetworkMgr.disconnectNetwork:revert()
|
||||
NetworkMgr.releaseIP:revert()
|
||||
end)
|
||||
end)
|
Loading…
Reference in New Issue