Update camera retrieval method (no more homescreen use)
This commit is contained in:
+7
-6
@@ -141,15 +141,16 @@ class Blink:
|
||||
def setup_camera_list(self):
|
||||
"""Create camera list for onboarded networks."""
|
||||
all_cameras = {}
|
||||
response = api.request_homescreen(self)
|
||||
response = api.request_camera_usage(self)
|
||||
try:
|
||||
for camera in response["cameras"]:
|
||||
camera_network = str(camera["network_id"])
|
||||
for network in response["networks"]:
|
||||
camera_network = str(network["network_id"])
|
||||
if camera_network not in all_cameras:
|
||||
all_cameras[camera_network] = []
|
||||
all_cameras[camera_network].append(
|
||||
{"name": camera["name"], "id": camera["id"]}
|
||||
)
|
||||
for camera in network["cameras"]:
|
||||
all_cameras[camera_network].append(
|
||||
{"name": camera["name"], "id": camera["id"]}
|
||||
)
|
||||
return all_cameras
|
||||
except (KeyError, TypeError):
|
||||
_LOGGER.error("Unable to retrieve cameras from response %s", response)
|
||||
|
||||
+13
-8
@@ -81,14 +81,19 @@ class TestBlinkSetup(unittest.TestCase):
|
||||
self.assertEqual(self.blink.sync["TEST"], 1234)
|
||||
self.assertEqual(self.blink.sync["tEsT"], 1234)
|
||||
|
||||
@mock.patch("blinkpy.api.request_homescreen")
|
||||
def test_setup_cameras(self, mock_home):
|
||||
@mock.patch("blinkpy.api.request_camera_usage")
|
||||
def test_setup_cameras(self, mock_req):
|
||||
"""Check retrieval of camera information."""
|
||||
mock_home.return_value = {
|
||||
"cameras": [
|
||||
{"name": "foo", "network_id": 1234, "id": 5678},
|
||||
{"name": "bar", "network_id": 1234, "id": 5679},
|
||||
{"name": "test", "network_id": 4321, "id": 0000},
|
||||
mock_req.return_value = {
|
||||
"networks": [
|
||||
{
|
||||
"network_id": 1234,
|
||||
"cameras": [
|
||||
{"id": 5678, "name": "foo"},
|
||||
{"id": 5679, "name": "bar"},
|
||||
],
|
||||
},
|
||||
{"network_id": 4321, "cameras": [{"id": 0000, "name": "test"}]},
|
||||
]
|
||||
}
|
||||
result = self.blink.setup_camera_list()
|
||||
@@ -100,7 +105,7 @@ class TestBlinkSetup(unittest.TestCase):
|
||||
},
|
||||
)
|
||||
|
||||
@mock.patch("blinkpy.api.request_homescreen")
|
||||
@mock.patch("blinkpy.api.request_camera_usage")
|
||||
def test_setup_cameras_failure(self, mock_home):
|
||||
"""Check that on failure we raise a setup error."""
|
||||
mock_home.return_value = {}
|
||||
|
||||
Reference in New Issue
Block a user