Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 9 additions & 4 deletions test/actions/cores/base_core/test_base_core_on_ready.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ class TestBaseCoreOnReady(unittest.TestCase):
@patch.object(BaseCore, "_create_event_assigner")
@patch.object(BaseCore, "_load_domains")
@patch.object(BaseCore, "_load_entities")
def test_on_read_no_entity(self, load_entities_mock, load_domains_mock, _, __):
@patch('HomeAssistantPlugin.actions.cores.base_core.base_core.migrate_settings')
def test_on_read_no_entity(self, migrate_settings_mock, load_entities_mock, load_domains_mock, _, __):
track_entity = True

settings_implementation = Mock()
Expand All @@ -28,6 +29,7 @@ def test_on_read_no_entity(self, load_entities_mock, load_domains_mock, _, __):
instance = BaseCore(settings_implementation, track_entity)
instance.on_ready()

migrate_settings_mock.assert_called_once_with(instance)
instance.plugin_base.backend.add_action_ready_callback.assert_called_once_with(instance.on_ready)
settings_implementation.get_entity.assert_called_once()
instance.plugin_base.backend.add_tracked_entity.assert_not_called()
Expand All @@ -38,7 +40,8 @@ def test_on_read_no_entity(self, load_entities_mock, load_domains_mock, _, __):
@patch.object(BaseCore, "_create_event_assigner")
@patch.object(BaseCore, "_load_domains")
@patch.object(BaseCore, "_load_entities")
def test_on_read_entity_not_tracked(self, load_entities_mock, load_domains_mock, _, __):
@patch('HomeAssistantPlugin.actions.cores.base_core.base_core.migrate_settings')
def test_on_read_entity_not_tracked(self, migrate_settings_mock, load_entities_mock, load_domains_mock, _, __):
track_entity = False

settings_implementation = Mock()
Expand All @@ -48,6 +51,7 @@ def test_on_read_entity_not_tracked(self, load_entities_mock, load_domains_mock,
instance = BaseCore(settings_implementation, track_entity)
instance.on_ready()

migrate_settings_mock.assert_called_once_with(instance)
instance.plugin_base.backend.add_action_ready_callback.assert_called_once_with(instance.on_ready)
settings_implementation.get_entity.assert_called_once()
instance.plugin_base.backend.add_tracked_entity.assert_not_called()
Expand All @@ -58,7 +62,8 @@ def test_on_read_entity_not_tracked(self, load_entities_mock, load_domains_mock,
@patch.object(BaseCore, "_create_event_assigner")
@patch.object(BaseCore, "_load_domains")
@patch.object(BaseCore, "_load_entities")
def test_on_read_success(self, load_entities_mock, load_domains_mock, _, __):
@patch('HomeAssistantPlugin.actions.cores.base_core.base_core.migrate_settings')
def test_on_read_success(self, migrate_settings_mock, load_entities_mock, load_domains_mock, _, __):
track_entity = True

settings_implementation = Mock()
Expand All @@ -68,9 +73,9 @@ def test_on_read_success(self, load_entities_mock, load_domains_mock, _, __):
instance = BaseCore(settings_implementation, track_entity)
instance.on_ready()

migrate_settings_mock.assert_called_once_with(instance)
instance.plugin_base.backend.add_action_ready_callback.assert_called_once_with(instance.on_ready)
settings_implementation.get_entity.assert_called_once()
instance.plugin_base.backend.add_tracked_entity.assert_called_once_with("entity", instance.refresh)
load_entities_mock.assert_called_once()
load_domains_mock.assert_called_once()

10 changes: 8 additions & 2 deletions test/actions/show_icon/test_icon_action.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
sys.path.insert(0, absolute_plugin_path)

from HomeAssistantPlugin.actions.show_icon import icon_const
from HomeAssistantPlugin.actions.show_icon import icon_helper
from HomeAssistantPlugin.actions.show_icon.icon_action import ShowIcon
from HomeAssistantPlugin.actions.show_icon.icon_customization import IconCustomization
from HomeAssistantPlugin.actions.show_icon.icon_row import IconRow
Expand Down Expand Up @@ -68,9 +69,12 @@ def test_get_config_rows(self):
@patch('HomeAssistantPlugin.actions.show_icon.icon_action.EntryRow')
@patch('HomeAssistantPlugin.actions.show_icon.icon_action.ColorButtonRow')
@patch('HomeAssistantPlugin.actions.show_icon.icon_action.ScaleRow')
def testcreate_ui_elements(self, scale_row_mock, color_button_row_mock, entry_row_mock, super_create_ui_elements_mock):
@patch('HomeAssistantPlugin.actions.show_icon.icon_action.Button')
def testcreate_ui_elements(self, button_mock, scale_row_mock, color_button_row_mock, entry_row_mock, super_create_ui_elements_mock):
instance = ShowIcon.__new__(ShowIcon)
instance._reload = Mock()
instance.lm = Mock()
instance.lm.get.return_value = "Browse"

instance.create_ui_elements()

Expand Down Expand Up @@ -162,10 +166,12 @@ def test_set_enabled_disabled_success(self, super_set_enabled_disabled_mock):
instance.settings = Mock()
instance.settings.get_domain.return_value = "domain"
instance.settings.get_entity.return_value = "entity"
instance.settings.get_icon.return_value = next(iter(icon_helper.MDI_ICONS))
instance.icon = Mock()
instance.color = Mock()
instance.scale = Mock()
instance.opacity = Mock()
instance.lm = Mock()

instance.set_enabled_disabled()

Expand Down Expand Up @@ -273,4 +279,4 @@ def test_get_domains(self):
result = instance._get_domains()

instance.plugin_base.backend.get_domains_for_entities.assert_called_once()
self.assertEqual(result, ["domain1", "domain2"])
self.assertEqual(result, ["domain1", "domain2"])
10 changes: 5 additions & 5 deletions test/actions/show_icon/test_icon_window.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ class TestIconWindow(unittest.TestCase):
@patch.object(IconWindow, "_create_scale")
@patch.object(IconWindow, "_create_scale_entry")
@patch.object(IconWindow, "_create_label")
def test_init(self, create_label_mock, create_scale_entry_mock, create_scale_mock, create_color_button_mock,
@patch('HomeAssistantPlugin.actions.show_icon.icon_window.Button')
def test_init(self, button_mock, create_label_mock, create_scale_entry_mock, create_scale_mock, create_color_button_mock,
create_entry_mock, create_check_button_mock, after_init_mock, set_title_mock,
customization_window_init_mock):
lm = Mock()
Expand All @@ -51,7 +52,7 @@ def super_init(instance, lm, *args, **kwargs):
customization_window_init_mock.assert_called_once_with(instance, lm, attributes, callback, current,
index) # with instance because of autospec
set_title_mock.assert_called_once_with("Test Title")
self.assertEqual(14, instance.grid_fields.attach.call_count)
self.assertEqual(15, instance.grid_fields.attach.call_count)
after_init_mock.assert_called_once()

@patch(
Expand Down Expand Up @@ -132,15 +133,14 @@ def test_on_add_button_super_false(self, super_on_add_button_mock):

@patch(
'HomeAssistantPlugin.actions.cores.customization_core.customization_window.CustomizationWindow.on_add_button')
def test_on_add_button_icon_not_valid(self, super_on_add_button_mock):
def test_on_add_button_icon_checked_but_empty(self, super_on_add_button_mock):
super_on_add_button_mock.return_value = True

instance = IconWindow.__new__(IconWindow)
instance.check_icon = Mock()
instance.check_icon.get_active.return_value = True
instance.icon = Mock()
instance.icon.get_text.return_value = "mdi:home"
instance.icons = ["not_home"]
instance.icon.get_text.return_value = ""
instance.on_add_button()

super_on_add_button_mock.assert_called_once()
Expand Down
Loading