mirror of
https://github.com/home-assistant/core.git
synced 2025-07-09 22:37:11 +00:00
Minor improvements to homeassistant.remote tests
This commit is contained in:
parent
006310c883
commit
cfae4c667a
@ -124,7 +124,8 @@ class HomeAssistant(ha.HomeAssistant):
|
|||||||
# pylint: disable=too-many-format-args
|
# pylint: disable=too-many-format-args
|
||||||
random_password = '%030x'.format(random.randrange(16**30))
|
random_password = '%030x'.format(random.randrange(16**30))
|
||||||
|
|
||||||
http.setup(self, random_password)
|
http.setup(
|
||||||
|
self, {http.DOMAIN: {http.CONF_API_PASSWORD: random_password}})
|
||||||
|
|
||||||
ha.Timer(self)
|
ha.Timer(self)
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ Tests Home Assistant remote methods and classes.
|
|||||||
"""
|
"""
|
||||||
# pylint: disable=protected-access,too-many-public-methods
|
# pylint: disable=protected-access,too-many-public-methods
|
||||||
import unittest
|
import unittest
|
||||||
|
import json
|
||||||
|
|
||||||
import homeassistant as ha
|
import homeassistant as ha
|
||||||
import homeassistant.remote as remote
|
import homeassistant.remote as remote
|
||||||
@ -35,19 +36,15 @@ def setUpModule(): # pylint: disable=invalid-name
|
|||||||
hass.states.set('test.test', 'a_state')
|
hass.states.set('test.test', 'a_state')
|
||||||
|
|
||||||
http.setup(hass,
|
http.setup(hass,
|
||||||
{http.DOMAIN: {http.CONF_API_PASSWORD: API_PASSWORD}})
|
{http.DOMAIN: {http.CONF_API_PASSWORD: API_PASSWORD,
|
||||||
|
http.CONF_SERVER_PORT: 8122}})
|
||||||
|
|
||||||
hass.start()
|
hass.start()
|
||||||
|
|
||||||
master_api = remote.API("127.0.0.1", API_PASSWORD)
|
master_api = remote.API("127.0.0.1", API_PASSWORD, 8122)
|
||||||
|
|
||||||
# Start slave
|
# Start slave
|
||||||
local_api = remote.API("127.0.0.1", API_PASSWORD, 8124)
|
slave = remote.HomeAssistant(master_api)
|
||||||
slave = remote.HomeAssistant(master_api, local_api)
|
|
||||||
|
|
||||||
http.setup(slave,
|
|
||||||
{http.DOMAIN: {http.CONF_API_PASSWORD: API_PASSWORD,
|
|
||||||
http.CONF_SERVER_PORT: 8124}})
|
|
||||||
|
|
||||||
slave.start()
|
slave.start()
|
||||||
|
|
||||||
@ -71,6 +68,10 @@ class TestRemoteMethods(unittest.TestCase):
|
|||||||
remote.validate_api(
|
remote.validate_api(
|
||||||
remote.API("127.0.0.1", API_PASSWORD + "A")))
|
remote.API("127.0.0.1", API_PASSWORD + "A")))
|
||||||
|
|
||||||
|
self.assertEqual(remote.APIStatus.CANNOT_CONNECT,
|
||||||
|
remote.validate_api(
|
||||||
|
remote.API("127.0.0.1", API_PASSWORD, 8125)))
|
||||||
|
|
||||||
def test_get_event_listeners(self):
|
def test_get_event_listeners(self):
|
||||||
""" Test Python API get_event_listeners. """
|
""" Test Python API get_event_listeners. """
|
||||||
local_data = hass.bus.listeners
|
local_data = hass.bus.listeners
|
||||||
@ -156,10 +157,16 @@ class TestRemoteClasses(unittest.TestCase):
|
|||||||
|
|
||||||
def test_home_assistant_init(self):
|
def test_home_assistant_init(self):
|
||||||
""" Test HomeAssistant init. """
|
""" Test HomeAssistant init. """
|
||||||
|
# Wrong password
|
||||||
self.assertRaises(
|
self.assertRaises(
|
||||||
ha.HomeAssistantError, remote.HomeAssistant,
|
ha.HomeAssistantError, remote.HomeAssistant,
|
||||||
remote.API('127.0.0.1', API_PASSWORD + 'A', 8124))
|
remote.API('127.0.0.1', API_PASSWORD + 'A', 8124))
|
||||||
|
|
||||||
|
# Wrong port
|
||||||
|
self.assertRaises(
|
||||||
|
ha.HomeAssistantError, remote.HomeAssistant,
|
||||||
|
remote.API('127.0.0.1', API_PASSWORD, 8125))
|
||||||
|
|
||||||
def test_statemachine_init(self):
|
def test_statemachine_init(self):
|
||||||
""" Tests if remote.StateMachine copies all states on init. """
|
""" Tests if remote.StateMachine copies all states on init. """
|
||||||
self.assertEqual(len(hass.states.all()),
|
self.assertEqual(len(hass.states.all()),
|
||||||
@ -199,3 +206,13 @@ class TestRemoteClasses(unittest.TestCase):
|
|||||||
hass._pool.block_till_done()
|
hass._pool.block_till_done()
|
||||||
|
|
||||||
self.assertEqual(1, len(test_value))
|
self.assertEqual(1, len(test_value))
|
||||||
|
|
||||||
|
def test_json_encoder(self):
|
||||||
|
""" Test the JSON Encoder. """
|
||||||
|
ha_json_enc = remote.JSONEncoder()
|
||||||
|
state = hass.states.get('test.test')
|
||||||
|
|
||||||
|
self.assertEqual(state.as_dict(), ha_json_enc.default(state))
|
||||||
|
|
||||||
|
# Default method raises TypeError if non HA object
|
||||||
|
self.assertRaises(TypeError, ha_json_enc.default, 1)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user