Files
Erik Montnemery 4e1d5fbeb0 Add WS command to help reset custom entity_id (#145504)
* Add WS command to help reset custom entity_id

* Calculate suggested object id from entity properties

* Fix logic and add additional tests

* Adjust test

* Update folder_watcher test

* Handle current entity id matches the automatic entity id

* Don't store calculated_object_id

* Update snapshots

* Update snapshots

* Update test

* Tweak logic for reusing current entity_id

* Improve test

* Don't assign same entity_id to several entities

* Prioritize custom entity name

* Update snapshots

* Update snapshots
2025-05-26 19:28:27 +02:00

518 lines
12 KiB
Plaintext

# serializer version: 1
# name: test_color_palette_state[rgb-select.wled_rgb_light_live_override-2-live-called_with1]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'WLED RGB Light Live override',
'options': list([
'0',
'1',
'2',
]),
}),
'context': <ANY>,
'entity_id': 'select.wled_rgb_light_live_override',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '0',
})
# ---
# name: test_color_palette_state[rgb-select.wled_rgb_light_live_override-2-live-called_with1].1
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'options': list([
'0',
'1',
'2',
]),
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'select',
'entity_category': <EntityCategory.CONFIG: 'config'>,
'entity_id': 'select.wled_rgb_light_live_override',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Live override',
'platform': 'wled',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'live_override',
'unique_id': 'aabbccddeeff_live_override',
'unit_of_measurement': None,
})
# ---
# name: test_color_palette_state[rgb-select.wled_rgb_light_live_override-2-live-called_with1].2
DeviceRegistryEntrySnapshot({
'area_id': None,
'config_entries': <ANY>,
'config_entries_subentries': <ANY>,
'configuration_url': 'http://127.0.0.1',
'connections': set({
tuple(
'mac',
'aa:bb:cc:dd:ee:ff',
),
}),
'disabled_by': None,
'entry_type': None,
'hw_version': 'esp32',
'id': <ANY>,
'identifiers': set({
tuple(
'wled',
'aabbccddeeff',
),
}),
'is_new': False,
'labels': set({
}),
'manufacturer': 'WLED',
'model': 'FOSS',
'model_id': None,
'name': 'WLED RGB Light',
'name_by_user': None,
'primary_config_entry': <ANY>,
'serial_number': None,
'suggested_area': None,
'sw_version': '0.14.4',
'via_device_id': None,
})
# ---
# name: test_color_palette_state[rgb-select.wled_rgb_light_segment_1_color_palette-Icefire-segment-called_with0]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'WLED RGB Light Segment 1 color palette',
'options': list([
'* Color 1',
'* Color Gradient',
'* Colors 1&2',
'* Colors Only',
'* Random Cycle',
'Analogous',
'April Night',
'Aqua Flash',
'Atlantica',
'Aurora',
'Aurora 2',
'Autumn',
'Beach',
'Beech',
'Blink Red',
'Breeze',
'C9',
'C9 2',
'C9 New',
'Candy',
'Candy2',
'Cloud',
'Cyane',
'Default',
'Departure',
'Drywet',
'Fairy Reaf',
'Fire',
'Forest',
'Grintage',
'Hult',
'Hult 64',
'Icefire',
'Jul',
'Landscape',
'Lava',
'Light Pink',
'Lite Light',
'Magenta',
'Magred',
'Ocean',
'Orange & Teal',
'Orangery',
'Party',
'Pastel',
'Pink Candy',
'Rainbow',
'Rainbow Bands',
'Red & Blue',
'Red Flash',
'Red Reaf',
'Red Shift',
'Red Tide',
'Retro Clown',
'Rewhi',
'Rivendell',
'Sakura',
'Semi Blue',
'Sherbet',
'Splash',
'Sunset',
'Sunset 2',
'Temperature',
'Tertiary',
'Tiamat',
'Toxy Reaf',
'Vintage',
'Yelblu',
'Yelblu Hot',
'Yellowout',
'Yelmag',
]),
}),
'context': <ANY>,
'entity_id': 'select.wled_rgb_light_segment_1_color_palette',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': '* Random Cycle',
})
# ---
# name: test_color_palette_state[rgb-select.wled_rgb_light_segment_1_color_palette-Icefire-segment-called_with0].1
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'options': list([
'* Color 1',
'* Color Gradient',
'* Colors 1&2',
'* Colors Only',
'* Random Cycle',
'Analogous',
'April Night',
'Aqua Flash',
'Atlantica',
'Aurora',
'Aurora 2',
'Autumn',
'Beach',
'Beech',
'Blink Red',
'Breeze',
'C9',
'C9 2',
'C9 New',
'Candy',
'Candy2',
'Cloud',
'Cyane',
'Default',
'Departure',
'Drywet',
'Fairy Reaf',
'Fire',
'Forest',
'Grintage',
'Hult',
'Hult 64',
'Icefire',
'Jul',
'Landscape',
'Lava',
'Light Pink',
'Lite Light',
'Magenta',
'Magred',
'Ocean',
'Orange & Teal',
'Orangery',
'Party',
'Pastel',
'Pink Candy',
'Rainbow',
'Rainbow Bands',
'Red & Blue',
'Red Flash',
'Red Reaf',
'Red Shift',
'Red Tide',
'Retro Clown',
'Rewhi',
'Rivendell',
'Sakura',
'Semi Blue',
'Sherbet',
'Splash',
'Sunset',
'Sunset 2',
'Temperature',
'Tertiary',
'Tiamat',
'Toxy Reaf',
'Vintage',
'Yelblu',
'Yelblu Hot',
'Yellowout',
'Yelmag',
]),
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'select',
'entity_category': <EntityCategory.CONFIG: 'config'>,
'entity_id': 'select.wled_rgb_light_segment_1_color_palette',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Segment 1 color palette',
'platform': 'wled',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'segment_color_palette',
'unique_id': 'aabbccddeeff_palette_1',
'unit_of_measurement': None,
})
# ---
# name: test_color_palette_state[rgb-select.wled_rgb_light_segment_1_color_palette-Icefire-segment-called_with0].2
DeviceRegistryEntrySnapshot({
'area_id': None,
'config_entries': <ANY>,
'config_entries_subentries': <ANY>,
'configuration_url': 'http://127.0.0.1',
'connections': set({
tuple(
'mac',
'aa:bb:cc:dd:ee:ff',
),
}),
'disabled_by': None,
'entry_type': None,
'hw_version': 'esp32',
'id': <ANY>,
'identifiers': set({
tuple(
'wled',
'aabbccddeeff',
),
}),
'is_new': False,
'labels': set({
}),
'manufacturer': 'WLED',
'model': 'FOSS',
'model_id': None,
'name': 'WLED RGB Light',
'name_by_user': None,
'primary_config_entry': <ANY>,
'serial_number': None,
'suggested_area': None,
'sw_version': '0.14.4',
'via_device_id': None,
})
# ---
# name: test_color_palette_state[rgbw-select.wled_rgbw_light_playlist-Playlist 2-playlist-called_with2]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'WLED RGBW Light Playlist',
'options': list([
'Playlist 1',
'Playlist 2',
]),
}),
'context': <ANY>,
'entity_id': 'select.wled_rgbw_light_playlist',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unknown',
})
# ---
# name: test_color_palette_state[rgbw-select.wled_rgbw_light_playlist-Playlist 2-playlist-called_with2].1
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'options': list([
'Playlist 1',
'Playlist 2',
]),
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'select',
'entity_category': None,
'entity_id': 'select.wled_rgbw_light_playlist',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Playlist',
'platform': 'wled',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'playlist',
'unique_id': 'aabbccddeeff_playlist',
'unit_of_measurement': None,
})
# ---
# name: test_color_palette_state[rgbw-select.wled_rgbw_light_playlist-Playlist 2-playlist-called_with2].2
DeviceRegistryEntrySnapshot({
'area_id': None,
'config_entries': <ANY>,
'config_entries_subentries': <ANY>,
'configuration_url': 'http://127.0.0.1',
'connections': set({
tuple(
'mac',
'aa:bb:cc:dd:ee:ff',
),
}),
'disabled_by': None,
'entry_type': None,
'hw_version': 'esp32',
'id': <ANY>,
'identifiers': set({
tuple(
'wled',
'aabbccddeeff',
),
}),
'is_new': False,
'labels': set({
}),
'manufacturer': 'WLED',
'model': 'FOSS',
'model_id': None,
'name': 'WLED RGBW Light',
'name_by_user': None,
'primary_config_entry': <ANY>,
'serial_number': None,
'suggested_area': None,
'sw_version': '0.99.0b1',
'via_device_id': None,
})
# ---
# name: test_color_palette_state[rgbw-select.wled_rgbw_light_preset-Preset 2-preset-called_with3]
StateSnapshot({
'attributes': ReadOnlyDict({
'friendly_name': 'WLED RGBW Light Preset',
'options': list([
'Preset 1',
'Preset 2',
]),
}),
'context': <ANY>,
'entity_id': 'select.wled_rgbw_light_preset',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
'state': 'unknown',
})
# ---
# name: test_color_palette_state[rgbw-select.wled_rgbw_light_preset-Preset 2-preset-called_with3].1
EntityRegistryEntrySnapshot({
'aliases': set({
}),
'area_id': None,
'capabilities': dict({
'options': list([
'Preset 1',
'Preset 2',
]),
}),
'config_entry_id': <ANY>,
'config_subentry_id': <ANY>,
'device_class': None,
'device_id': <ANY>,
'disabled_by': None,
'domain': 'select',
'entity_category': None,
'entity_id': 'select.wled_rgbw_light_preset',
'has_entity_name': True,
'hidden_by': None,
'icon': None,
'id': <ANY>,
'labels': set({
}),
'name': None,
'options': dict({
}),
'original_device_class': None,
'original_icon': None,
'original_name': 'Preset',
'platform': 'wled',
'previous_unique_id': None,
'suggested_object_id': None,
'supported_features': 0,
'translation_key': 'preset',
'unique_id': 'aabbccddeeff_preset',
'unit_of_measurement': None,
})
# ---
# name: test_color_palette_state[rgbw-select.wled_rgbw_light_preset-Preset 2-preset-called_with3].2
DeviceRegistryEntrySnapshot({
'area_id': None,
'config_entries': <ANY>,
'config_entries_subentries': <ANY>,
'configuration_url': 'http://127.0.0.1',
'connections': set({
tuple(
'mac',
'aa:bb:cc:dd:ee:ff',
),
}),
'disabled_by': None,
'entry_type': None,
'hw_version': 'esp32',
'id': <ANY>,
'identifiers': set({
tuple(
'wled',
'aabbccddeeff',
),
}),
'is_new': False,
'labels': set({
}),
'manufacturer': 'WLED',
'model': 'FOSS',
'model_id': None,
'name': 'WLED RGBW Light',
'name_by_user': None,
'primary_config_entry': <ANY>,
'serial_number': None,
'suggested_area': None,
'sw_version': '0.99.0b1',
'via_device_id': None,
})
# ---