From eb0953f60e74945a8cead48428f13baa91b09a7e Mon Sep 17 00:00:00 2001 From: Noah Negin-Ulster Date: Fri, 30 Dec 2022 12:48:14 -0500 Subject: [PATCH] chore: py3.7 compatibility --- src/syrupy/report.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/syrupy/report.py b/src/syrupy/report.py index 00347122..b41911a2 100644 --- a/src/syrupy/report.py +++ b/src/syrupy/report.py @@ -4,7 +4,6 @@ dataclass, field, ) -from functools import cached_property from gettext import ( gettext, ngettext, @@ -70,6 +69,9 @@ class SnapshotReport: used: "SnapshotFossils" = field(default_factory=SnapshotFossils) _provided_test_paths: Dict[str, List[str]] = field(default_factory=dict) _keyword_expressions: Set["Expression"] = field(default_factory=set) + _collected_items_by_nodeid: Dict[str, "pytest.Item"] = field( + default_factory=dict, init=False + ) @property def update_snapshots(self) -> bool: @@ -83,14 +85,11 @@ def warn_unused_snapshots(self) -> bool: def include_snapshot_details(self) -> bool: return bool(self.options.include_snapshot_details) - @cached_property - def _collected_items_by_nodeid(self) -> Dict[str, "pytest.Item"]: - return { - getattr(item, "nodeid"): item for item in self.collected_items # noqa: B009 - } - def __post_init__(self) -> None: self.__parse_invocation_args() + self._collected_items_by_nodeid = { + getattr(item, "nodeid"): item for item in self.collected_items # noqa: B009 + } # We only need to discover snapshots once per test file, not once per assertion. locations_discovered: DefaultDict[str, Set[Any]] = defaultdict(set)