diff --git a/src/pgpro_pytest_html_merger/__main__.py b/src/pgpro_pytest_html_merger/__main__.py
index 17cd4d0..2bb4390 100644
--- a/src/pgpro_pytest_html_merger/__main__.py
+++ b/src/pgpro_pytest_html_merger/__main__.py
@@ -140,7 +140,8 @@ def __lt__(self, other: PytestReportEnvPropID) -> bool:
"""
Comparison logic for sorting:
1. Compare part1
- 2. If part1 is equal, compare part2 (treating None as smaller than any int)
+ 2. If part1 is equal, compare part2 (treating None as smaller
+ than any int)
"""
assert type(other) is PytestReportEnvPropID
@@ -173,7 +174,12 @@ class PytestReportEnvProp:
_id: PytestReportEnvPropID
_value: typing.Any
- def __init__(self, name: str, id: PytestReportEnvPropID, value: typing.Any):
+ def __init__(
+ self,
+ name: str,
+ id: PytestReportEnvPropID,
+ value: typing.Any,
+ ):
assert type(name) is str
assert type(id) is PytestReportEnvPropID
assert value is not None
@@ -228,7 +234,9 @@ def create(
assert type(n) is str
if v is None:
- raise RuntimeError(ErrMsgGenerator.gen_msg__env_prop_is_none(n))
+ raise RuntimeError(
+ ErrMsgGenerator.gen_msg__env_prop_is_none(n),
+ )
if type(v) is str:
v2 = v
@@ -275,21 +283,25 @@ def __init__(self):
def helper__build_ids(self, ctx: tagBuildCtx) -> None:
assert type(ctx) is __class__.tagBuildCtx
for prop in self.m_items:
- # For stable numbering, we'll sort them in build_dict before assigning numbers
+ # For stable numbering, we'll sort them in build_dict
+ # before assigning numbers
ctx.ids[prop.id] = 0
if type(prop.value) is PytestReportEnvPropList:
prop.value.helper__build_ids(ctx)
continue
return
- def helper__build_dict(self, ctx: tagBuildCtx) -> typing.Dict[str, typing.Any]:
+ def helper__build_dict(
+ self,
+ ctx: tagBuildCtx,
+ ) -> typing.Dict[str, typing.Any]:
assert type(ctx) is __class__.tagBuildCtx
names: typing.Dict[str, typing.Set[PytestReportEnvPropID]] = {}
for prop in self.m_items:
assert type(prop) is PytestReportEnvProp
- entries: typing.Set[PytestReportEnvPropID] = names.get(prop.name, set())
+ entries = names.get(prop.name, set())
assert type(entries) is set
entries.add(prop.id)
names[prop.name] = entries
@@ -324,7 +336,9 @@ def helper__build_dict(self, ctx: tagBuildCtx) -> typing.Dict[str, typing.Any]:
return result
@staticmethod
- def helper__parse_identity(text: str) -> typing.Tuple[str, typing.Optional[int]]:
+ def helper__parse_identity(
+ text: str,
+ ) -> typing.Tuple[str, typing.Optional[int]]:
"""
Parses a string in the format 'name {123}'.
The id must be a numeric value.
@@ -335,7 +349,7 @@ def helper__parse_identity(text: str) -> typing.Tuple[str, typing.Optional[int]]
# ^(?P.+?) - Capture 'name' (non-greedy)
# \s* - Optional whitespace before the bracket
# \{ - Open bracket
- # \s*(?P\d+)\s* - Capture only digits, allowing optional spaces inside {}
+ # \s*(?P\d+)\s* - Capture only digits and optional spaces inside {}
# \} - Close bracket
# $ - End of string
pattern = r"^(?P.+?)\s*\{\s*(?P\d+)\s*\}$"
@@ -362,7 +376,10 @@ def helper_add(
class PytestReportEnvAggregator:
_result: PytestReportEnvPropList
- _index: typing.Dict[str, typing.List[typing.Tuple[int, PytestReportEnvProp]]]
+ _index: typing.Dict[
+ str,
+ typing.List[typing.Tuple[int, PytestReportEnvProp]],
+ ]
# --------------------------------------------------------------------
def __init__(self):
@@ -423,8 +440,11 @@ def helper__add_prop(self, prop: PytestReportEnvProp) -> None:
sub_aggregator = PytestReportEnvAggregator()
sub_aggregator.add(cp.value)
sub_aggregator.add(prop.value)
- # This updates the object both in index and in _result.m_items
- new_p = PytestReportEnvProp(cp.name, cp.id, sub_aggregator._result)
+ new_p = PytestReportEnvProp(
+ cp.name,
+ cp.id,
+ sub_aggregator._result,
+ )
entries[i_entry] = (entry[0], new_p)
self._result.m_items[entry[0]] = new_p
return