Skip to content

Commit 7206757

Browse files
Rename Target and TargetDict to ImageTarget and ImageTargetDict (#2964)
* Rename Target and TargetDict classes to ImageTarget and ImageTargetDict Rename class Target → ImageTarget and class TargetDict → ImageTargetDict throughout the codebase. Updates all imports and usages in source code and tests. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com> * Update docs to reference ImageTarget instead of Target Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
1 parent f3079ae commit 7206757

9 files changed

Lines changed: 31 additions & 28 deletions

File tree

docs/source/mock-api-reference.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ API Reference
2424
:members:
2525
:undoc-members:
2626

27-
.. autoclass:: mock_vws.target.Target
27+
.. autoclass:: mock_vws.target.ImageTarget
2828

2929
Image matchers
3030
--------------

src/mock_vws/_flask_server/target_manager.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
from mock_vws.database import VuforiaDatabase
1616
from mock_vws.states import States
17-
from mock_vws.target import Target
17+
from mock_vws.target import ImageTarget
1818
from mock_vws.target_manager import TargetManager
1919
from mock_vws.target_raters import (
2020
BrisqueTargetTrackingRater,
@@ -202,7 +202,7 @@ def create_target(database_name: str) -> Response:
202202
settings = TargetManagerSettings.model_validate(obj={})
203203
target_tracking_rater = settings.target_rater.to_target_rater()
204204

205-
target = Target(
205+
target = ImageTarget(
206206
name=request_json["name"],
207207
width=request_json["width"],
208208
image_value=image_bytes,

src/mock_vws/_flask_server/vws.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
ImageMatcher,
4343
StructuralSimilarityMatcher,
4444
)
45-
from mock_vws.target import Target
45+
from mock_vws.target import ImageTarget
4646
from mock_vws.target_raters import (
4747
HardcodedTargetTrackingRater,
4848
)
@@ -192,7 +192,7 @@ def add_target() -> Response:
192192
# This rater is not used.
193193
target_tracking_rater = HardcodedTargetTrackingRater(rating=1)
194194

195-
new_target = Target(
195+
new_target = ImageTarget(
196196
name=name,
197197
width=request_json["width"],
198198
image_value=base64.b64decode(s=request_json["image"]),

src/mock_vws/_requests_mock_server/mock_web_services_api.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
ValidatorError,
3838
)
3939
from mock_vws.image_matchers import ImageMatcher
40-
from mock_vws.target import Target
40+
from mock_vws.target import ImageTarget
4141
from mock_vws.target_manager import TargetManager
4242
from mock_vws.target_raters import TargetTrackingRater
4343

@@ -187,7 +187,7 @@ def add_target(self, request: PreparedRequest) -> _ResponseType:
187187

188188
application_metadata = request_json.get("application_metadata")
189189

190-
new_target = Target(
190+
new_target = ImageTarget(
191191
name=request_json["name"],
192192
width=request_json["width"],
193193
image_value=base64.b64decode(s=request_json["image"]),

src/mock_vws/database.py

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
from mock_vws._constants import TargetStatuses
1111
from mock_vws.states import States
12-
from mock_vws.target import Target, TargetDict
12+
from mock_vws.target import ImageTarget, ImageTargetDict
1313

1414

1515
@beartype
@@ -22,7 +22,7 @@ class DatabaseDict(TypedDict):
2222
client_access_key: str
2323
client_secret_key: str
2424
state_name: str
25-
targets: Iterable[TargetDict]
25+
targets: Iterable[ImageTargetDict]
2626

2727

2828
@beartype
@@ -61,7 +61,10 @@ class VuforiaDatabase:
6161
# ``frozen=True`` while still being able to keep the interface we want.
6262
# In particular, we might want to inspect the ``database`` object's targets
6363
# as they change via API requests.
64-
targets: set[Target] = field(default_factory=set[Target], hash=False)
64+
targets: set[ImageTarget] = field(
65+
default_factory=set[ImageTarget],
66+
hash=False,
67+
)
6568
state: States = States.WORKING
6669

6770
request_quota: int = 100000
@@ -84,7 +87,7 @@ def to_dict(self) -> DatabaseDict:
8487
"targets": targets,
8588
}
8689

87-
def get_target(self, target_id: str) -> Target:
90+
def get_target(self, target_id: str) -> ImageTarget:
8891
"""Return a target from the database with the given ID."""
8992
(target,) = (
9093
target for target in self.targets if target.target_id == target_id
@@ -102,18 +105,18 @@ def from_dict(cls, database_dict: DatabaseDict) -> Self:
102105
client_secret_key=database_dict["client_secret_key"],
103106
state=States[database_dict["state_name"]],
104107
targets={
105-
Target.from_dict(target_dict=target_dict)
108+
ImageTarget.from_dict(target_dict=target_dict)
106109
for target_dict in database_dict["targets"]
107110
},
108111
)
109112

110113
@property
111-
def not_deleted_targets(self) -> set[Target]:
114+
def not_deleted_targets(self) -> set[ImageTarget]:
112115
"""All targets which have not been deleted."""
113116
return {target for target in self.targets if not target.delete_date}
114117

115118
@property
116-
def active_targets(self) -> set[Target]:
119+
def active_targets(self) -> set[ImageTarget]:
117120
"""All active targets."""
118121
return {
119122
target
@@ -123,7 +126,7 @@ def active_targets(self) -> set[Target]:
123126
}
124127

125128
@property
126-
def inactive_targets(self) -> set[Target]:
129+
def inactive_targets(self) -> set[ImageTarget]:
127130
"""All inactive targets."""
128131
return {
129132
target
@@ -133,7 +136,7 @@ def inactive_targets(self) -> set[Target]:
133136
}
134137

135138
@property
136-
def failed_targets(self) -> set[Target]:
139+
def failed_targets(self) -> set[ImageTarget]:
137140
"""All failed targets."""
138141
return {
139142
target
@@ -142,7 +145,7 @@ def failed_targets(self) -> set[Target]:
142145
}
143146

144147
@property
145-
def processing_targets(self) -> set[Target]:
148+
def processing_targets(self) -> set[ImageTarget]:
146149
"""All processing targets."""
147150
return {
148151
target

src/mock_vws/target.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
)
2020

2121

22-
class TargetDict(TypedDict):
22+
class ImageTargetDict(TypedDict):
2323
"""A dictionary type which represents a target."""
2424

2525
name: str
@@ -50,7 +50,7 @@ def _time_now() -> datetime.datetime:
5050

5151
@beartype(conf=BeartypeConf(is_pep484_tower=True))
5252
@dataclass(frozen=True, eq=True)
53-
class Target:
53+
class ImageTarget:
5454
"""
5555
A Vuforia Target as managed in
5656
https://developer.vuforia.com/target-manager.
@@ -145,7 +145,7 @@ def tracking_rating(self) -> int:
145145
return self._post_processing_target_rating
146146

147147
@classmethod
148-
def from_dict(cls, target_dict: TargetDict) -> Self:
148+
def from_dict(cls, target_dict: ImageTargetDict) -> Self:
149149
"""Load a target from a dictionary."""
150150
timezone = ZoneInfo(key="GMT")
151151
name = target_dict["name"]
@@ -187,7 +187,7 @@ def from_dict(cls, target_dict: TargetDict) -> Self:
187187
target_tracking_rater=target_tracking_rater,
188188
)
189189

190-
def to_dict(self) -> TargetDict:
190+
def to_dict(self) -> ImageTargetDict:
191191
"""Dump a target to a dictionary which can be loaded as JSON."""
192192
delete_date: str | None = None
193193
if self.delete_date:

tests/mock_vws/fixtures/vuforia_backends.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
from mock_vws._flask_server.vws import VWS_FLASK_APP
2222
from mock_vws.database import VuforiaDatabase
2323
from mock_vws.states import States
24-
from mock_vws.target import Target
24+
from mock_vws.target import ImageTarget
2525
from mock_vws.target_raters import HardcodedTargetTrackingRater
2626
from tests.mock_vws.fixtures.credentials import VuMarkVuforiaDatabase
2727
from tests.mock_vws.utils import make_image_file
@@ -67,7 +67,7 @@ def _vumark_database(
6767
vumark_vuforia_database: VuMarkVuforiaDatabase,
6868
) -> VuforiaDatabase:
6969
"""Return a database with a target for VuMark instance generation."""
70-
vumark_target = Target(
70+
vumark_target = ImageTarget(
7171
active_flag=True,
7272
application_metadata=None,
7373
image_value=make_image_file(

tests/mock_vws/test_requests_mock_usage.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
from mock_vws import MissingSchemeError, MockVWS
1919
from mock_vws.database import VuforiaDatabase
2020
from mock_vws.image_matchers import ExactMatcher, StructuralSimilarityMatcher
21-
from mock_vws.target import Target
21+
from mock_vws.target import ImageTarget
2222
from tests.mock_vws.utils import Endpoint
2323
from tests.mock_vws.utils.usage_test_helpers import (
2424
processing_time_seconds,
@@ -400,7 +400,7 @@ def test_to_dict(high_quality_image: io.BytesIO) -> None:
400400
# The dictionary is JSON dump-able
401401
assert json.dumps(obj=target_dict)
402402

403-
new_target = Target.from_dict(target_dict=target_dict)
403+
new_target = ImageTarget.from_dict(target_dict=target_dict)
404404
assert new_target == target
405405

406406
@staticmethod
@@ -436,7 +436,7 @@ def test_to_dict_deleted(high_quality_image: io.BytesIO) -> None:
436436
# The dictionary is JSON dump-able
437437
assert json.dumps(obj=target_dict)
438438

439-
new_target = Target.from_dict(target_dict=target_dict)
439+
new_target = ImageTarget.from_dict(target_dict=target_dict)
440440
assert new_target.delete_date == target.delete_date
441441

442442

tests/mock_vws/test_target_validators.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@
1010
validate_target_id_exists,
1111
)
1212
from mock_vws.database import VuforiaDatabase
13-
from mock_vws.target import Target
13+
from mock_vws.target import ImageTarget
1414
from mock_vws.target_raters import HardcodedTargetTrackingRater
1515
from tests.mock_vws.utils import make_image_file
1616

1717

1818
def _database_with_target(*, target_id: str) -> VuforiaDatabase:
1919
"""Create a database containing one target with the given ID."""
20-
target = Target(
20+
target = ImageTarget(
2121
active_flag=True,
2222
application_metadata=None,
2323
image_value=make_image_file(

0 commit comments

Comments
 (0)