issue #23 - unit test coverage
Unit test coverage / pytest (push) Failing after 3m17s

This commit is contained in:
Stanislav Hejny
2025-05-29 01:43:21 +01:00
parent 5261b1f959
commit 8db2ad0b64
2 changed files with 154 additions and 7 deletions
+13 -6
View File
@@ -107,10 +107,7 @@ def _instantiate(
TypeError: If instantiation fails
"""
# Handle JSON payload first
try:
json_payload = json.loads(payload) if is_json and isinstance(payload, str) else None
except Exception:
json_payload = None
json_payload = json.loads(payload) if is_json and isinstance(payload, str) else None
# Handle basic types
if type_string == "str":
@@ -143,12 +140,22 @@ def _instantiate(
if type_string.startswith("typing.Set"):
if json_payload is not None:
return set(json_payload)
return set(payload if isinstance(payload, list) else payload.split(","))
_set_type = _extract_type_of(type_string)
return set(
payload
if isinstance(payload, list)
else [_instantiate(_set_type, p) for p in payload.split(",")]
)
if type_string.startswith("typing.Tuple"):
if json_payload is not None:
return tuple(json_payload)
return tuple(payload if isinstance(payload, list) else payload.split(","))
_tuple_type = _extract_type_of(type_string)
return tuple(
payload
if isinstance(payload, list)
else [_instantiate(_tuple_type, p) for p in payload.split(",")]
)
if type_string.startswith("typing.Optional"):
inner_type = _extract_type_of(type_string)