From e4cb93f3f707ad14d08da5bfad3e9de8250097d0 Mon Sep 17 00:00:00 2001 From: Marcelo Moreira de Mello Date: Tue, 21 Nov 2017 23:23:59 -0500 Subject: [PATCH 1/2] Bump version to 0.1.9 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index e22de38e..6311805e 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ setup( name='ring_doorbell', packages=['ring_doorbell'], - version='0.1.8', + version='0.1.9', description='A Python library to communicate with Ring' + ' Door Bell (https://ring.com/)', author='Marcelo Moreira de Mello', From db91b9f5589bbb6b9db6947150f05297fd58ac4c Mon Sep 17 00:00:00 2001 From: Marcelo Moreira de Mello Date: Wed, 29 Nov 2017 04:13:45 -0500 Subject: [PATCH 2/2] Created generic update method for all devices on Ring top-parent object --- ring_doorbell/__init__.py | 9 +++++++++ tests/test_base.py | 2 ++ 2 files changed, 11 insertions(+) diff --git a/ring_doorbell/__init__.py b/ring_doorbell/__init__.py index cdb90044..9e18f0a2 100644 --- a/ring_doorbell/__init__.py +++ b/ring_doorbell/__init__.py @@ -253,3 +253,12 @@ def stickup_cams(self): def doorbells(self): """Return a list of RingDoorBell objects.""" return self.__devices('doorbells') + + def update(self): + """Refreshes attributes for all linked devices.""" + for device_lst in self.devices.values(): + for device in device_lst: + if hasattr(device, "update"): + _LOGGER.debug("Updating attributes from %s", device.name) + getattr(device, "update") + return True diff --git a/tests/test_base.py b/tests/test_base.py index dcb4979f..8a18f8cf 100644 --- a/tests/test_base.py +++ b/tests/test_base.py @@ -28,6 +28,8 @@ def setUp(self, mock): self.ring_persistent = \ Ring(USERNAME, PASSWORD, cache_file=CACHE, persist_token=True) + self.assertTrue(hasattr(self.ring, "update")) + def cleanup(self): """Cleanup any data created from the tests.""" self.ring = None