diff --git a/tmt/result.py b/tmt/result.py index 39bae5f8ce..c807f5e817 100644 --- a/tmt/result.py +++ b/tmt/result.py @@ -205,7 +205,7 @@ class Result(BaseResult): CheckResult.from_serialized(check) for check in serialized] ) data_path: Optional[Path] = field( - default=None, + default=cast(Optional[Path], None), serialize=lambda path: None if path is None else str(path), unserialize=lambda value: None if value is None else Path(value) ) diff --git a/tmt/utils/__init__.py b/tmt/utils/__init__.py index 942039e09f..919b01dc40 100644 --- a/tmt/utils/__init__.py +++ b/tmt/utils/__init__.py @@ -5522,7 +5522,8 @@ def dataclass_normalize_field( value = raw_value if dataclasses.is_dataclass(container): - _, _, _, _, metadata = container_field(type(container), keyname) + _, _, _, _, metadata = container_field( + type(container) if not isinstance(container, type) else container, keyname) if metadata.normalize_callback: value = metadata.normalize_callback(key_address, raw_value, logger)