Fix transposed Normal/Express 60 dishwasher cycle labels (issue #226)
'83' and '86' were swapped in the dishwasher_cycle catalog. Both the original DW9000F-class fixture this table was built from and the issue #226 reporter's board share the identical DeviceType_0812, and the original fixture's own editCourseList puts the two codes back to back (positions 4-5) -- a plausible adjacent-pair transcription slip. The reporter's live confirmation (selecting 'Normal' ran the physical Express 60 program and vice versa) settles which way: '86' is Express 60, '83' is Normal. The energy-sensor part of the same issue was already resolved per the issue thread (the device genuinely doesn't report usage, so the sensor's removal was correct) -- not touched here.
This commit is contained in:
@@ -48,6 +48,18 @@ DISHWASHER_SETTINGS = Capability(
|
||||
# boolean-toggle contract washer's bubble-soak/pre-wash/intensive switches
|
||||
# use). Course display names live in translations under
|
||||
# entity.select.dishwasher_cycle (see laundry.cycle_select).
|
||||
#
|
||||
# '83'/'86' were transposed in that catalog until issue #226: both the
|
||||
# original DW9000F-class fixture this table was built from and the issue
|
||||
# #226 reporter's board report the identical DeviceType_0812 (a real
|
||||
# per-board-generation id also seen on unrelated washer/dryer fixtures, so
|
||||
# this is one shared course table, not a Table_02/Table_03-style generation
|
||||
# split), and the original fixture's own live editCourseList
|
||||
# ('EditCourseList_0E07908683848D808E8F') puts '86' and '83' back to back at
|
||||
# positions 4-5 -- exactly the kind of adjacent pair a manual screenshot
|
||||
# transcription slips on. The reporter's live confirmation (selecting
|
||||
# 'Normal' ran the physical Express 60 program and vice versa) settles
|
||||
# which way: '86' is Express 60, '83' is Normal.
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
CYCLE_OPTIONS = Capability(
|
||||
|
||||
@@ -278,9 +278,9 @@
|
||||
"name": "Cyklus",
|
||||
"state": {
|
||||
"80": "Jemné",
|
||||
"83": "Express 60",
|
||||
"83": "Normální",
|
||||
"84": "Intenzivní",
|
||||
"86": "Normální",
|
||||
"86": "Express 60",
|
||||
"90": "Samočištění",
|
||||
"0e": "AI mytí",
|
||||
"07": "Předoplach",
|
||||
|
||||
@@ -278,9 +278,9 @@
|
||||
"name": "Cycle",
|
||||
"state": {
|
||||
"80": "Delicate",
|
||||
"83": "Express 60",
|
||||
"83": "Normal",
|
||||
"84": "Heavy",
|
||||
"86": "Normal",
|
||||
"86": "Express 60",
|
||||
"90": "Self clean",
|
||||
"0e": "AI Wash",
|
||||
"07": "Pre blast",
|
||||
|
||||
@@ -392,9 +392,9 @@
|
||||
"name": "Ciclo",
|
||||
"state": {
|
||||
"80": "Delicado",
|
||||
"83": "Express 60",
|
||||
"83": "Normal",
|
||||
"84": "Intenso",
|
||||
"86": "Normal",
|
||||
"86": "Express 60",
|
||||
"90": "Autolimpieza",
|
||||
"0e": "Lavado IA",
|
||||
"07": "Prelavado intenso",
|
||||
|
||||
@@ -278,9 +278,9 @@
|
||||
"name": "Ciclo",
|
||||
"state": {
|
||||
"80": "Delicato",
|
||||
"83": "Express 60",
|
||||
"83": "Normale",
|
||||
"84": "Intenso",
|
||||
"86": "Normale",
|
||||
"86": "Express 60",
|
||||
"90": "Autopulizia",
|
||||
"0e": "AI Wash",
|
||||
"07": "Prelavaggio intenso",
|
||||
|
||||
@@ -278,9 +278,9 @@
|
||||
"name": "Programma",
|
||||
"state": {
|
||||
"80": "Delicaat",
|
||||
"83": "Express 60",
|
||||
"83": "Normaal",
|
||||
"84": "Intensief",
|
||||
"86": "Normaal",
|
||||
"86": "Express 60",
|
||||
"90": "Zelfreiniging",
|
||||
"0e": "AI Wash",
|
||||
"07": "Voorspoelen",
|
||||
|
||||
@@ -33,6 +33,17 @@ class TestCycleOptions:
|
||||
assert body == {"x.com.samsung.da.options": ["Course_90"]}
|
||||
|
||||
|
||||
def test_normal_and_express_60_labels_are_not_transposed():
|
||||
"""Issue #226: '83'/'86' were swapped in the shipped catalog -- '86' is
|
||||
Express 60, '83' is Normal (see dishwasher.py's CYCLE_OPTIONS comment for
|
||||
how this was confirmed)."""
|
||||
from custom_components.localthings.catalog import _ENTITY_CATALOG
|
||||
|
||||
state = _ENTITY_CATALOG["select"]["dishwasher_cycle"]["state"]
|
||||
assert state["83"] == "Normal"
|
||||
assert state["86"] == "Express 60"
|
||||
|
||||
|
||||
class TestDishwasherOptions:
|
||||
def test_storm_wash_read_and_write(self):
|
||||
desc = next(
|
||||
|
||||
Reference in New Issue
Block a user