Skip to content

Commit ed5fca1

Browse files
committed
refactor: move spy name and id into single data field
1 parent 864aad7 commit ed5fca1

20 files changed

+788
-743
lines changed

decoy/core.py

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
from .call_handler import CallHandler
55
from .spy import SpyCreator
6-
from .spy_events import WhenRehearsal, PropAccessType, SpyEvent, SpyPropAccess
6+
from .spy_events import WhenRehearsal, PropAccessType, SpyEvent, SpyInfo, SpyPropAccess
77
from .spy_log import SpyLog
88
from .stub_store import StubBehavior, StubStore
99
from .types import ContextValueT, ReturnT
@@ -65,20 +65,15 @@ def verify(
6565
count=len(_rehearsals),
6666
ignore_extra_args=ignore_extra_args,
6767
)
68-
calls = self._spy_log.get_calls_to_verify([r.spy_id for r in rehearsals])
68+
calls = self._spy_log.get_calls_to_verify([r.spy.id for r in rehearsals])
6969

7070
self._verifier.verify(rehearsals=rehearsals, calls=calls, times=times)
7171

7272
def prop(self, _rehearsal: ReturnT) -> "PropCore":
7373
"""Get a property setter/deleter rehearser."""
74-
spy_id, spy_name, payload = self._spy_log.consume_prop_rehearsal()
74+
spy, payload = self._spy_log.consume_prop_rehearsal()
7575

76-
return PropCore(
77-
spy_id=spy_id,
78-
spy_name=spy_name,
79-
prop_name=payload.prop_name,
80-
spy_log=self._spy_log,
81-
)
76+
return PropCore(spy=spy, prop_name=payload.prop_name, spy_log=self._spy_log)
8277

8378
def reset(self) -> None:
8479
"""Reset and remove all stored spies and stubs."""
@@ -134,21 +129,18 @@ class PropCore:
134129

135130
def __init__(
136131
self,
137-
spy_id: int,
138-
spy_name: str,
132+
spy: SpyInfo,
139133
prop_name: str,
140134
spy_log: SpyLog,
141135
) -> None:
142-
self._spy_id = spy_id
143-
self._spy_name = spy_name
136+
self._spy = spy
144137
self._prop_name = prop_name
145138
self._spy_log = spy_log
146139

147140
def set(self, value: Any) -> None:
148141
"""Create a property setter rehearsal."""
149142
event = SpyEvent(
150-
spy_id=self._spy_id,
151-
spy_name=self._spy_name,
143+
spy=self._spy,
152144
payload=SpyPropAccess(
153145
prop_name=self._prop_name,
154146
access_type=PropAccessType.SET,
@@ -160,8 +152,7 @@ def set(self, value: Any) -> None:
160152
def delete(self) -> None:
161153
"""Create a property deleter rehearsal."""
162154
event = SpyEvent(
163-
spy_id=self._spy_id,
164-
spy_name=self._spy_name,
155+
spy=self._spy,
165156
payload=SpyPropAccess(
166157
prop_name=self._prop_name,
167158
access_type=PropAccessType.DELETE,

decoy/spec.py

Lines changed: 0 additions & 167 deletions
This file was deleted.

0 commit comments

Comments
 (0)