diff --git a/homeassistant/components/vicare/button.py b/homeassistant/components/vicare/button.py index 9c30a9e68ee1c..a1a7768ba3c61 100644 --- a/homeassistant/components/vicare/button.py +++ b/homeassistant/components/vicare/button.py @@ -42,6 +42,13 @@ class ViCareButtonEntityDescription( value_getter=lambda api: api.getOneTimeCharge(), value_setter=lambda api: api.activateOneTimeCharge(), ), + ViCareButtonEntityDescription( + key="deactivate_onetimecharge", + translation_key="deactivate_onetimecharge", + entity_category=EntityCategory.CONFIG, + value_getter=lambda api: api.getOneTimeCharge(), + value_setter=lambda api: api.deactivateOneTimeCharge(), + ), ) diff --git a/homeassistant/components/vicare/icons.json b/homeassistant/components/vicare/icons.json index c5db81ae15a57..59093b04d28d4 100644 --- a/homeassistant/components/vicare/icons.json +++ b/homeassistant/components/vicare/icons.json @@ -35,6 +35,9 @@ "button": { "activate_onetimecharge": { "default": "mdi:shower-head" + }, + "deactivate_onetimecharge": { + "default": "mdi:shower-head" } }, "number": { diff --git a/homeassistant/components/vicare/strings.json b/homeassistant/components/vicare/strings.json index 80d5f5932257a..d90adaa7fb535 100644 --- a/homeassistant/components/vicare/strings.json +++ b/homeassistant/components/vicare/strings.json @@ -83,6 +83,9 @@ "button": { "activate_onetimecharge": { "name": "Activate one-time charge" + }, + "deactivate_onetimecharge": { + "name": "Deactivate one-time charge" } }, "climate": { diff --git a/tests/components/vicare/snapshots/test_button.ambr b/tests/components/vicare/snapshots/test_button.ambr index 445af36452022..c1026e48b7f4b 100644 --- a/tests/components/vicare/snapshots/test_button.ambr +++ b/tests/components/vicare/snapshots/test_button.ambr @@ -47,3 +47,51 @@ 'state': 'unknown', }) # --- +# name: test_all_entities[button.model0_deactivate_one_time_charge-entry] + EntityRegistryEntrySnapshot({ + 'aliases': set({ + }), + 'area_id': None, + 'capabilities': None, + 'config_entry_id': , + 'config_subentry_id': , + 'device_class': None, + 'device_id': , + 'disabled_by': None, + 'domain': 'button', + 'entity_category': , + 'entity_id': 'button.model0_deactivate_one_time_charge', + 'has_entity_name': True, + 'hidden_by': None, + 'icon': None, + 'id': , + 'labels': set({ + }), + 'name': None, + 'options': dict({ + }), + 'original_device_class': None, + 'original_icon': None, + 'original_name': 'Deactivate one-time charge', + 'platform': 'vicare', + 'previous_unique_id': None, + 'suggested_object_id': None, + 'supported_features': 0, + 'translation_key': 'deactivate_onetimecharge', + 'unique_id': 'gateway0_deviceSerialVitodens300W-deactivate_onetimecharge', + 'unit_of_measurement': None, + }) +# --- +# name: test_all_entities[button.model0_deactivate_one_time_charge-state] + StateSnapshot({ + 'attributes': ReadOnlyDict({ + 'friendly_name': 'model0 Deactivate one-time charge', + }), + 'context': , + 'entity_id': 'button.model0_deactivate_one_time_charge', + 'last_changed': , + 'last_reported': , + 'last_updated': , + 'state': 'unknown', + }) +# ---