From 6cae76bde108047d913daa4ed3a858a2a1e886e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mose=20M=C3=BCller?= Date: Mon, 22 Apr 2024 19:10:50 +0200 Subject: [PATCH] adds tests for parse_keyed_attribute --- tests/utils/test_helpers.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/utils/test_helpers.py b/tests/utils/test_helpers.py index 36f539e..e911944 100644 --- a/tests/utils/test_helpers.py +++ b/tests/utils/test_helpers.py @@ -1,7 +1,9 @@ +from typing import Any import pytest from pydase.utils.helpers import ( is_property_attribute, + parse_keyed_attribute, ) @@ -29,3 +31,18 @@ def test_is_property_attribute(attr_name: str, expected: bool) -> None: dummy = DummyClass() assert is_property_attribute(dummy, attr_name) == expected + + +@pytest.mark.parametrize( + "attr_name, expected", + [ + ("attr_name", ("attr_name", None)), + ("list_attr[2]", ("list_attr", 2)), + ('dict_attr["2"]', ("dict_attr", "2")), + ('dict_attr["some_key"]', ("dict_attr", "some_key")), + ("dict_attr[2]", ("dict_attr", 2)), + ("dict_attr[2.1]", ("dict_attr", 2.1)), + ], +) +def test_parse_keyed_attributes(attr_name: str, expected: tuple[str, Any]) -> None: + assert parse_keyed_attribute(attr_name) == expected