Skip to content

Commit d6dbf16

Browse files
committed
fix(q10): normalize status names to canonical values
1 parent 24e3a92 commit d6dbf16

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

roborock/data/b01_q10/b01_q10_code_mappings.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -166,13 +166,13 @@ class YXDeviceState(RoborockModeEnum):
166166
UNKNOWN = "unknown", -1
167167
SLEEP_STATE = "sleepstate", 2
168168
STANDBY_STATE = "standbystate", 3
169-
CLEANING_STATE = "cleaningstate", 5
169+
CLEANING_STATE = "cleaning", 5
170170
TO_CHARGE_STATE = "tochargestate", 6
171171
REMOTEING_STATE = "remoteingstate", 7
172-
CHARGING_STATE = "chargingstate", 8
172+
CHARGING_STATE = "charging", 8
173173
PAUSE_STATE = "pausestate", 10
174174
FAULT_STATE = "faultstate", 12
175-
UPGRADE_STATE = "upgradestate", 14
175+
UPGRADE_STATE = "updating", 14
176176
DUSTING = "dusting", 22
177177
CREATING_MAP_STATE = "creatingmapstate", 29
178178
MAP_SAVE_STATE = "mapsavestate", 99
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
"""Test cases for B01 Q10 containers."""
2+
3+
from roborock.data.b01_q10 import YXDeviceState
4+
5+
6+
def test_q10_status_values_are_canonical() -> None:
7+
"""Q10 status enum values should expose canonical names."""
8+
assert YXDeviceState.CLEANING_STATE.value == "cleaning"
9+
assert YXDeviceState.CHARGING_STATE.value == "charging"
10+
assert YXDeviceState.UPGRADE_STATE.value == "updating"
11+
12+
13+
def test_q10_status_codes_map_to_canonical_values() -> None:
14+
"""Code-based mapping should return canonical status values."""
15+
assert YXDeviceState.from_code(5) is YXDeviceState.CLEANING_STATE
16+
assert YXDeviceState.from_code(8) is YXDeviceState.CHARGING_STATE
17+
assert YXDeviceState.from_code(14) is YXDeviceState.UPGRADE_STATE

0 commit comments

Comments
 (0)