Merge pull request #2671 from home-assistant/deflake-discovery-tests

Try to deflake discovery tests
This commit is contained in:
Paulus Schoutsen 2016-07-30 22:05:22 -07:00 committed by GitHub
commit b35c44ce04

View File

@ -1,15 +1,10 @@
"""Test discovery helpers.""" """Test discovery helpers."""
import os
from unittest.mock import patch from unittest.mock import patch
from homeassistant import loader, bootstrap, config as config_util from homeassistant import loader, bootstrap
from homeassistant.helpers import discovery from homeassistant.helpers import discovery
from tests.common import (get_test_home_assistant, get_test_config_dir, from tests.common import get_test_home_assistant, MockModule, MockPlatform
MockModule, MockPlatform)
VERSION_PATH = os.path.join(get_test_config_dir(), config_util.VERSION_FILE)
class TestHelpersDiscovery: class TestHelpersDiscovery:
@ -17,15 +12,12 @@ class TestHelpersDiscovery:
def setup_method(self, method): def setup_method(self, method):
"""Setup things to be run when tests are started.""" """Setup things to be run when tests are started."""
self.hass = get_test_home_assistant() self.hass = get_test_home_assistant(1)
def teardown_method(self, method): def teardown_method(self, method):
"""Stop everything that was started.""" """Stop everything that was started."""
self.hass.stop() self.hass.stop()
if os.path.isfile(VERSION_PATH):
os.remove(VERSION_PATH)
@patch('homeassistant.bootstrap.setup_component') @patch('homeassistant.bootstrap.setup_component')
def test_listen(self, mock_setup_component): def test_listen(self, mock_setup_component):
"""Test discovery listen/discover combo.""" """Test discovery listen/discover combo."""
@ -105,14 +97,15 @@ class TestHelpersDiscovery:
def component_setup(hass, config): def component_setup(hass, config):
"""Setup mock component.""" """Setup mock component."""
discovery.load_platform(hass, 'switch', 'test_circular') discovery.load_platform(hass, 'switch', 'test_circular', 'disc',
config)
component_calls.append(1) component_calls.append(1)
return True return True
def setup_platform(hass, config, add_devices_callback, def setup_platform(hass, config, add_devices_callback,
discovery_info=None): discovery_info=None):
"""Setup mock platform.""" """Setup mock platform."""
platform_calls.append(1) platform_calls.append('disc' if discovery_info else 'component')
loader.set_component( loader.set_component(
'test_component', 'test_component',
@ -123,13 +116,12 @@ class TestHelpersDiscovery:
MockPlatform(setup_platform, MockPlatform(setup_platform,
dependencies=['test_component'])) dependencies=['test_component']))
bootstrap.from_config_dict({ bootstrap.setup_component(self.hass, 'test_component', {
'test_component': None, 'test_component': None,
'switch': [{ 'switch': [{
'platform': 'test_circular', 'platform': 'test_circular',
}], }],
}, self.hass) })
self.hass.pool.block_till_done() self.hass.pool.block_till_done()
assert 'test_component' in self.hass.config.components assert 'test_component' in self.hass.config.components