Skip to content

Commit a335ab2

Browse files
committed
Progress
1 parent 040c21b commit a335ab2

File tree

3 files changed

+14
-23
lines changed

3 files changed

+14
-23
lines changed

src/mock_vws/_flask_server/target_manager.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import base64
66
import dataclasses
77
import datetime
8-
import random
98
from http import HTTPStatus
109
from zoneinfo import ZoneInfo
1110

@@ -212,12 +211,6 @@ def update_target(database_name: str, target_id: str) -> tuple[str, int]:
212211
if "image" in request.json:
213212
image_value = base64.b64decode(s=request.json["image"])
214213

215-
# In the real implementation, the tracking rating can stay the same.
216-
# However, for demonstration purposes, the tracking rating changes but
217-
# when the target is updated.
218-
available_values = list(set(range(6)) - {target.tracking_rating})
219-
processed_tracking_rating = random.choice(available_values)
220-
221214
gmt = ZoneInfo("GMT")
222215
last_modified_date = datetime.datetime.now(tz=gmt)
223216

@@ -228,7 +221,6 @@ def update_target(database_name: str, target_id: str) -> tuple[str, int]:
228221
active_flag=active_flag,
229222
application_metadata=application_metadata,
230223
image_value=image_value,
231-
processed_tracking_rating=processed_tracking_rating,
232224
last_modified_date=last_modified_date,
233225
)
234226

src/mock_vws/_requests_mock_server/mock_web_services_api.py

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
import dataclasses
1212
import datetime
1313
import email.utils
14-
import random
1514
import uuid
1615
from http import HTTPStatus
1716
from typing import TYPE_CHECKING
@@ -590,11 +589,7 @@ def update_target(
590589
context.status_code = fail_exception.status_code
591590
return fail_exception.response_text
592591

593-
# In the real implementation, the tracking rating can stay the same.
594-
# However, for demonstration purposes, the tracking rating changes but
595-
# when the target is updated.
596-
available_values = list(set(range(6)) - {target.tracking_rating})
597-
processed_tracking_rating = random.choice(available_values)
592+
# TODO: Consider the case of the code that was here
598593

599594
gmt = ZoneInfo("GMT")
600595
last_modified_date = datetime.datetime.now(tz=gmt)
@@ -606,7 +601,6 @@ def update_target(
606601
active_flag=active_flag,
607602
application_metadata=application_metadata,
608603
image_value=image_value,
609-
processed_tracking_rating=processed_tracking_rating,
610604
last_modified_date=last_modified_date,
611605
)
612606

src/mock_vws/target.py

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ class TargetDict(TypedDict):
2828
image_base64: str
2929
active_flag: bool
3030
processing_time_seconds: int | float
31+
processed_tracking_rating: int
3132
application_metadata: str | None
3233
target_id: str
3334
last_modified_date: str
@@ -50,6 +51,13 @@ def _time_now() -> datetime.datetime:
5051
return datetime.datetime.now(tz=gmt)
5152

5253

54+
def _random_tracking_rating() -> int:
55+
"""
56+
Return a random tracking rating.
57+
"""
58+
return random.randint(0, 5)
59+
60+
5361
@dataclass(frozen=True, eq=True)
5462
class Target:
5563
"""
@@ -67,18 +75,14 @@ class Target:
6775
delete_date: datetime.datetime | None = None
6876
last_modified_date: datetime.datetime = field(default_factory=_time_now)
6977
previous_month_recos: int = 0
78+
processed_tracking_rating: int = field(
79+
default_factory=_random_tracking_rating,
80+
)
7081
reco_rating: str = ""
7182
target_id: str = field(default_factory=_random_hex)
7283
total_recos: int = 0
7384
upload_date: datetime.datetime = field(default_factory=_time_now)
7485

75-
@staticmethod
76-
def _tracking_rater(image_content: bytes) -> int:
77-
"""
78-
Return a random tracking rating.
79-
"""
80-
return random.randint(0, 5)
81-
8286
@property
8387
def _post_processing_status(self) -> TargetStatuses:
8488
"""
@@ -154,7 +158,7 @@ def tracking_rating(self) -> int:
154158
return -1
155159

156160
if self._post_processing_status == TargetStatuses.SUCCESS:
157-
return self._tracking_rater(image_content=self.image_value)
161+
return self.processed_tracking_rating
158162

159163
return 0
160164

@@ -215,6 +219,7 @@ def to_dict(self) -> TargetDict:
215219
"image_base64": image_base64,
216220
"active_flag": self.active_flag,
217221
"processing_time_seconds": self.processing_time_seconds,
222+
"processed_tracking_rating": self.processed_tracking_rating,
218223
"application_metadata": self.application_metadata,
219224
"target_id": self.target_id,
220225
"last_modified_date": self.last_modified_date.isoformat(),

0 commit comments

Comments
 (0)