Skip to content

Commit 53890c2

Browse files
authored
Add CC specific utility functions (#270)
* Add CC specific utility functions * fix typing * Add helper type for meter scale types * remove unused imports * Remove guards, we will see what happens * remove unused type * Raise an error when we get an invalid enum value * Add typing * Add artificial tests to test when ccSpecific meterType or scale are invalid values
1 parent 0633cf9 commit 53890c2

File tree

6 files changed

+1466
-8
lines changed

6 files changed

+1466
-8
lines changed

test/conftest.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ def partial_and_full_parameter_state_fixture():
7575
return json.loads(load_fixture("partial_and_full_parameter_state.json"))
7676

7777

78+
@pytest.fixture(name="invalid_multilevel_sensor_type_state", scope="session")
79+
def invalid_multilevel_sensor_type_state_fixture():
80+
"""Load the node that has an invalid multilevel sensor type state fixture data."""
81+
return json.loads(load_fixture("invalid_multilevel_sensor_type_state.json"))
82+
83+
7884
@pytest.fixture(name="client_session")
7985
def client_session_fixture(ws_client):
8086
"""Mock an aiohttp client session."""
@@ -455,3 +461,13 @@ def partial_and_full_parameter_fixture(driver, partial_and_full_parameter_state)
455461
node = Node(driver.client, partial_and_full_parameter_state)
456462
driver.controller.nodes[node.node_id] = node
457463
return node
464+
465+
466+
@pytest.fixture(name="invalid_multilevel_sensor_type")
467+
def invalid_multilevel_sensor_type_fixture(
468+
driver, invalid_multilevel_sensor_type_state
469+
):
470+
"""Mock a node that has invalid multilevel sensor type."""
471+
node = Node(driver.client, invalid_multilevel_sensor_type_state)
472+
driver.controller.nodes[node.node_id] = node
473+
return node

0 commit comments

Comments
 (0)