test_simple_switch_with_timer.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. """Tests for a simple switch with timer"""
  2. from homeassistant.components.switch import SwitchDeviceClass
  3. from homeassistant.const import UnitOfTime
  4. from ..const import TIMED_SOCKET_PAYLOAD
  5. from ..mixins.number import BasicNumberTests
  6. from ..mixins.switch import SwitchableTests
  7. from .base_device_tests import TuyaDeviceTestCase
  8. SWITCH_DPS = "1"
  9. TIMER_DPS = "11"
  10. class TestTimedSwitch(BasicNumberTests, SwitchableTests, TuyaDeviceTestCase):
  11. __test__ = True
  12. def setUp(self):
  13. self.setUpForConfig("simple_switch_timer.yaml", TIMED_SOCKET_PAYLOAD)
  14. self.subject = self.entities.get("switch")
  15. self.setUpSwitchable(SWITCH_DPS, self.subject)
  16. self.setUpBasicNumber(
  17. TIMER_DPS,
  18. self.entities.get("number_timer"),
  19. max=1440,
  20. scale=60,
  21. unit=UnitOfTime.MINUTES,
  22. )
  23. self.mark_secondary(["number_timer"])
  24. def test_device_class_is_outlet(self):
  25. self.assertEqual(self.subject.device_class, SwitchDeviceClass.OUTLET)
  26. def test_extra_state_attributes_set(self):
  27. self.assertDictEqual(
  28. self.subject.extra_state_attributes,
  29. {},
  30. )