1
0
mirror of https://github.com/home-assistant/core.git synced 2025-12-24 12:59:34 +00:00

Sleepiq single sleeper crash (#24941)

* Update sleepyq to 0.7

Fixes crash when working with a single sleeper.

* sleepiq: Handle null side definitions

These happen if no sleeper is defined for a side of the bed. Don't
create sensors for null sides; they'll crash every time we try to use
them.

* sleepiq: Fix urls mocked to match sleepyq 0.7

* sleepi: Fix test_sensor.TestSleepIQSensorSetup

Sleepyq 0.7 throws on empty strings, so we have to specify them.

* sleepiq: Test for ValueError thrown by sleepyq 0.7

* sleepiq: Drop no longer used HTTPError import

* sleepiq: Add tests for single sleeper case

* sleepiq: Shorten comments to not overflow line length

* sleepiq: Use formatted string literals for adding suffixes to test files

* sleepiq: Use str.format() for test suffixing
This commit is contained in:
David Winn
2019-07-06 23:40:02 -07:00
committed by Pascal Vizeli
parent adbec5bffc
commit 628e12c944
11 changed files with 103 additions and 18 deletions

View File

@@ -30,6 +30,7 @@ class TestSleepIQSensorSetup(unittest.TestCase):
'username': self.username,
'password': self.password,
}
self.DEVICES = []
def tearDown(self): # pylint: disable=invalid-name
"""Stop everything that was started."""
@@ -41,10 +42,7 @@ class TestSleepIQSensorSetup(unittest.TestCase):
mock_responses(mock)
assert setup_component(self.hass, 'sleepiq', {
'sleepiq': {
'username': '',
'password': '',
}
'sleepiq': self.config
})
sleepiq.setup_platform(self.hass,
@@ -60,3 +58,22 @@ class TestSleepIQSensorSetup(unittest.TestCase):
right_side = self.DEVICES[0]
assert 'SleepNumber ILE Test2 SleepNumber' == right_side.name
assert 80 == right_side.state
@requests_mock.Mocker()
def test_setup_sigle(self, mock):
"""Test for successfully setting up the SleepIQ platform."""
mock_responses(mock, single=True)
assert setup_component(self.hass, 'sleepiq', {
'sleepiq': self.config
})
sleepiq.setup_platform(self.hass,
self.config,
self.add_entities,
MagicMock())
assert 1 == len(self.DEVICES)
right_side = self.DEVICES[0]
assert 'SleepNumber ILE Test1 SleepNumber' == right_side.name
assert 40 == right_side.state