Exemple #1
0
    def test_set_hold(self):
        """Test setting the hold mode."""
        assert setup_component(self.hass, climate.DOMAIN, DEFAULT_CONFIG)

        state = self.hass.states.get(ENTITY_CLIMATE)
        self.assertEqual(None, state.attributes.get('hold_mode'))
        common.set_hold_mode(self.hass, 'on', ENTITY_CLIMATE)
        self.hass.block_till_done()
        self.mock_publish.async_publish.assert_called_once_with(
            'hold-topic', 'on', 0, False)
        self.mock_publish.async_publish.reset_mock()
        state = self.hass.states.get(ENTITY_CLIMATE)
        self.assertEqual('on', state.attributes.get('hold_mode'))

        common.set_hold_mode(self.hass, 'off', ENTITY_CLIMATE)
        self.hass.block_till_done()
        self.mock_publish.async_publish.assert_called_once_with(
            'hold-topic', 'off', 0, False)
        state = self.hass.states.get(ENTITY_CLIMATE)
        self.assertEqual('off', state.attributes.get('hold_mode'))
    def test_set_hold(self):
        """Test setting the hold mode."""
        assert setup_component(self.hass, climate.DOMAIN, DEFAULT_CONFIG)

        state = self.hass.states.get(ENTITY_CLIMATE)
        assert state.attributes.get('hold_mode') is None
        common.set_hold_mode(self.hass, 'on', ENTITY_CLIMATE)
        self.hass.block_till_done()
        self.mock_publish.async_publish.assert_called_once_with(
            'hold-topic', 'on', 0, False)
        self.mock_publish.async_publish.reset_mock()
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert 'on' == state.attributes.get('hold_mode')

        common.set_hold_mode(self.hass, 'off', ENTITY_CLIMATE)
        self.hass.block_till_done()
        self.mock_publish.async_publish.assert_called_once_with(
            'hold-topic', 'off', 0, False)
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert 'off' == state.attributes.get('hold_mode')
    def test_set_hold_pessimistic(self):
        """Test setting the hold mode in pessimistic mode."""
        config = copy.deepcopy(DEFAULT_CONFIG)
        config['climate']['hold_state_topic'] = 'hold-state'
        assert setup_component(self.hass, CLIMATE_DOMAIN, config)

        state = self.hass.states.get(ENTITY_CLIMATE)
        assert state.attributes.get('hold_mode') is None

        common.set_hold_mode(self.hass, 'on', ENTITY_CLIMATE)
        self.hass.block_till_done()
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert state.attributes.get('hold_mode') is None

        fire_mqtt_message(self.hass, 'hold-state', 'on')
        self.hass.block_till_done()
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert 'on' == state.attributes.get('hold_mode')

        fire_mqtt_message(self.hass, 'hold-state', 'off')
        self.hass.block_till_done()
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert 'off' == state.attributes.get('hold_mode')
    def test_set_hold_pessimistic(self):
        """Test setting the hold mode in pessimistic mode."""
        config = copy.deepcopy(DEFAULT_CONFIG)
        config['climate']['hold_state_topic'] = 'hold-state'
        assert setup_component(self.hass, climate.DOMAIN, config)

        state = self.hass.states.get(ENTITY_CLIMATE)
        assert state.attributes.get('hold_mode') is None

        common.set_hold_mode(self.hass, 'on', ENTITY_CLIMATE)
        self.hass.block_till_done()
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert state.attributes.get('hold_mode') is None

        fire_mqtt_message(self.hass, 'hold-state', 'on')
        self.hass.block_till_done()
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert 'on' == state.attributes.get('hold_mode')

        fire_mqtt_message(self.hass, 'hold-state', 'off')
        self.hass.block_till_done()
        state = self.hass.states.get(ENTITY_CLIMATE)
        assert 'off' == state.attributes.get('hold_mode')
Exemple #5
0
 def test_set_hold_mode_none(self):
     """Test setting the hold mode off/false."""
     common.set_hold_mode(self.hass, 'off', ENTITY_ECOBEE)
     self.hass.block_till_done()
     state = self.hass.states.get(ENTITY_ECOBEE)
     assert 'off' == state.attributes.get('hold_mode')
Exemple #6
0
 def test_set_hold_mode_away(self):
     """Test setting the hold mode away."""
     common.set_hold_mode(self.hass, 'away', ENTITY_ECOBEE)
     self.hass.block_till_done()
     state = self.hass.states.get(ENTITY_ECOBEE)
     assert 'away' == state.attributes.get('hold_mode')
Exemple #7
0
 def test_set_hold_mode_home(self):
     """Test setting the hold mode home."""
     common.set_hold_mode(self.hass, 'home', ENTITY_ECOBEE)
     self.hass.block_till_done()
     state = self.hass.states.get(ENTITY_ECOBEE)
     self.assertEqual('home', state.attributes.get('hold_mode'))
 def test_set_hold_mode_none(self):
     """Test setting the hold mode off/false."""
     common.set_hold_mode(self.hass, 'off', ENTITY_ECOBEE)
     self.hass.block_till_done()
     state = self.hass.states.get(ENTITY_ECOBEE)
     assert 'off' == state.attributes.get('hold_mode')
 def test_set_hold_mode_away(self):
     """Test setting the hold mode away."""
     common.set_hold_mode(self.hass, 'away', ENTITY_ECOBEE)
     self.hass.block_till_done()
     state = self.hass.states.get(ENTITY_ECOBEE)
     assert 'away' == state.attributes.get('hold_mode')
Exemple #10
0
 def test_set_hold_mode_home(self):
     """Test setting the hold mode home."""
     common.set_hold_mode(self.hass, 'home', ENTITY_ECOBEE)
     self.hass.block_till_done()
     state = self.hass.states.get(ENTITY_ECOBEE)
     self.assertEqual('home', state.attributes.get('hold_mode'))