Added case handling on camera dict
This commit is contained in:
@@ -6,6 +6,7 @@ A list of changes between each release
|
||||
0.7.0.dev (development version)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
- Fixed style errors for bumped pydocstring and pylint versions
|
||||
- Changed Blink.cameras dictionary to be case-insensitive (fixes #35)
|
||||
|
||||
0.6.0 (2017-05-12)
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
+2
-1
@@ -16,6 +16,7 @@ import json
|
||||
import getpass
|
||||
from shutil import copyfileobj
|
||||
import requests
|
||||
from requests.structures import CaseInsensitiveDict
|
||||
import helpers.errors as ERROR
|
||||
from helpers.constants import (BLINK_URL, LOGIN_URL,
|
||||
LOGIN_BACKUP_URL,
|
||||
@@ -186,7 +187,7 @@ class Blink(object):
|
||||
self.region_id = None
|
||||
self._host = None
|
||||
self._events = []
|
||||
self.cameras = {}
|
||||
self.cameras = CaseInsensitiveDict({})
|
||||
self._idlookup = {}
|
||||
self.urls = None
|
||||
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
"""Init file for blinkpy helper functions."""
|
||||
from helpers import constants
|
||||
from helpers import errors
|
||||
from helpers import errors
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
import unittest
|
||||
from unittest import mock
|
||||
import random
|
||||
import blinkpy
|
||||
import tests.mock_responses as mresp
|
||||
|
||||
@@ -120,6 +121,26 @@ class TestBlinkFunctions(unittest.TestCase):
|
||||
camera.urls.home_url = "use_bad_response"
|
||||
self.assertEqual(camera.image_refresh(), None)
|
||||
|
||||
@mock.patch('blinkpy.blinkpy.requests.post',
|
||||
side_effect=mresp.mocked_requests_post)
|
||||
@mock.patch('blinkpy.blinkpy.requests.get',
|
||||
side_effect=mresp.mocked_requests_get)
|
||||
def test_camera_random_case(self, mock_get, mock_post):
|
||||
"""Checks for case of camera name."""
|
||||
self.blink.setup_system()
|
||||
for camera_name in self.blink.cameras:
|
||||
|
||||
rand_name = camera_name
|
||||
# Make sure we never pass this test if rand_name = camera_name
|
||||
while rand_name == camera_name:
|
||||
rand_name = ''.join(
|
||||
random.choice(
|
||||
(str.upper, str.lower)
|
||||
)(x) for x in camera_name)
|
||||
|
||||
self.assertEqual(self.blink.cameras[camera_name].name,
|
||||
self.blink.cameras[rand_name].name)
|
||||
|
||||
def test_camera_update(self):
|
||||
"""Checks that the update function is doing the right thing."""
|
||||
self.test_urls = blinkpy.BlinkURLHandler('test')
|
||||
|
||||
Reference in New Issue
Block a user