Skip to content

Commit 1a10c92

Browse files
Merge pull request #1546 from VWS-Python/wemake
Satisfy some wemake rules
2 parents 268042d + 60e343c commit 1a10c92

34 files changed

+147
-142
lines changed

docs/source/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@
8181
linkcheck_retries = 5
8282
linkcheck_ignore = [
8383
# Requires login.
84-
r"https://developer.vuforia.com/targetmanager",
84+
"https://developer.vuforia.com/targetmanager",
8585
]
8686

8787
spelling_word_list_filename = "../../spelling_private_dict.txt"

src/mock_vws/_base64_decoding.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ def decode_base64(encoded_data: str) -> bytes:
1313
1414
Raises:
1515
binascii.Error: Vuforia would consider this encoded data as an
16-
"UNPROCESSABLE_ENTITY".
16+
"UNPROCESSABLE_ENTITY".
1717
1818
Returns:
1919
The given data, decoded as base64.
@@ -23,13 +23,13 @@ def decode_base64(encoded_data: str) -> bytes:
2323
if character not in acceptable_characters:
2424
raise binascii.Error
2525

26-
mod_4_result_to_modified_encoded_data = {
26+
mod_four_result_to_modified_encoded_data = {
2727
0: encoded_data,
2828
1: encoded_data[:-1],
29-
2: encoded_data + "==",
30-
3: encoded_data + "=",
29+
2: f"{encoded_data}==",
30+
3: f"{encoded_data}=",
3131
}
32-
modified_encoded_data = mod_4_result_to_modified_encoded_data[
32+
modified_encoded_data = mod_four_result_to_modified_encoded_data[
3333
len(encoded_data) % 4
3434
]
3535
return base64.b64decode(modified_encoded_data)

src/mock_vws/_flask_server/target_manager.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -179,11 +179,11 @@ def create_target(database_name: str) -> Response:
179179
"""
180180
Create a new target in a given database.
181181
"""
182-
[database] = [
182+
(database,) = (
183183
database
184184
for database in TARGET_MANAGER.databases
185185
if database.database_name == database_name
186-
]
186+
)
187187
request_json = json.loads(request.data)
188188
image_base64 = request_json["image_base64"]
189189
image_bytes = base64.b64decode(s=image_base64)
@@ -216,11 +216,11 @@ def delete_target(database_name: str, target_id: str) -> Response:
216216
"""
217217
Delete a target.
218218
"""
219-
[database] = [
219+
(database,) = (
220220
database
221221
for database in TARGET_MANAGER.databases
222222
if database.database_name == database_name
223-
]
223+
)
224224
target = database.get_target(target_id=target_id)
225225
now = datetime.datetime.now(tz=target.upload_date.tzinfo)
226226
new_target = dataclasses.replace(target, delete_date=now)
@@ -240,11 +240,11 @@ def update_target(database_name: str, target_id: str) -> Response:
240240
"""
241241
Update a target.
242242
"""
243-
[database] = [
243+
(database,) = (
244244
database
245245
for database in TARGET_MANAGER.databases
246246
if database.database_name == database_name
247-
]
247+
)
248248
target = database.get_target(target_id=target_id)
249249

250250
request_json = json.loads(request.data)
@@ -285,4 +285,4 @@ def update_target(database_name: str, target_id: str) -> Response:
285285

286286
if __name__ == "__main__": # pragma: no cover
287287
SETTINGS = TargetManagerSettings.parse_obj(obj={})
288-
TARGET_MANAGER_FLASK_APP.run(debug=True, host=SETTINGS.target_manager_host)
288+
TARGET_MANAGER_FLASK_APP.run(host=SETTINGS.target_manager_host)

src/mock_vws/_flask_server/vwq.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,4 +162,4 @@ def query() -> Response:
162162

163163
if __name__ == "__main__": # pragma: no cover
164164
SETTINGS = VWQSettings.parse_obj(obj={})
165-
CLOUDRECO_FLASK_APP.run(debug=True, host=SETTINGS.vwq_host)
165+
CLOUDRECO_FLASK_APP.run(host=SETTINGS.vwq_host)

src/mock_vws/_flask_server/vws.py

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,10 @@ def get_all_databases() -> set[VuforiaDatabase]:
7878
Get all database objects from the task manager back-end.
7979
"""
8080
settings = VWSSettings.parse_obj(obj={})
81+
timeout_seconds = 30
8182
response = requests.get(
8283
url=f"{settings.target_manager_base_url}/databases",
83-
timeout=30,
84+
timeout=timeout_seconds,
8485
)
8586
return {
8687
VuforiaDatabase.from_dict(database_dict=database_dict)
@@ -182,10 +183,11 @@ def add_target() -> Response:
182183
)
183184

184185
databases_url = f"{settings.target_manager_base_url}/databases"
186+
timeout_seconds = 30
185187
requests.post(
186188
url=f"{databases_url}/{database.database_name}/targets",
187189
json=new_target.to_dict(),
188-
timeout=30,
190+
timeout=timeout_seconds,
189191
)
190192

191193
date = email.utils.formatdate(None, localtime=False, usegmt=True)
@@ -230,9 +232,9 @@ def get_target(target_id: str) -> Response:
230232
)
231233

232234
assert isinstance(database, VuforiaDatabase)
233-
[target] = [
235+
(target,) = (
234236
target for target in database.targets if target.target_id == target_id
235-
]
237+
)
236238

237239
target_record = {
238240
"target_id": target.target_id,
@@ -285,9 +287,9 @@ def delete_target(target_id: str) -> Response:
285287
)
286288

287289
assert isinstance(database, VuforiaDatabase)
288-
[target] = [
290+
(target,) = (
289291
target for target in database.targets if target.target_id == target_id
290-
]
292+
)
291293

292294
if target.status == TargetStatuses.PROCESSING.value:
293295
raise TargetStatusProcessing
@@ -390,9 +392,9 @@ def target_summary(target_id: str) -> Response:
390392
)
391393

392394
assert isinstance(database, VuforiaDatabase)
393-
[target] = [
395+
(target,) = (
394396
target for target in database.targets if target.target_id == target_id
395-
]
397+
)
396398
body = {
397399
"status": target.status,
398400
"transaction_id": uuid.uuid4().hex,
@@ -443,9 +445,9 @@ def get_duplicates(target_id: str) -> Response:
443445
image_match_checker = settings.duplicates_image_matcher.to_image_matcher()
444446

445447
assert isinstance(database, VuforiaDatabase)
446-
[target] = [
448+
(target,) = (
447449
target for target in database.targets if target.target_id == target_id
448-
]
450+
)
449451
other_targets = database.targets - {target}
450452

451453
similar_targets: list[str] = [
@@ -455,7 +457,7 @@ def get_duplicates(target_id: str) -> Response:
455457
first_image_content=target.image_value,
456458
second_image_content=other.image_value,
457459
)
458-
and TargetStatuses.FAILED.value not in (target.status, other.status)
460+
and TargetStatuses.FAILED.value not in {target.status, other.status}
459461
and TargetStatuses.PROCESSING.value != other.status
460462
and other.active_flag
461463
]
@@ -546,9 +548,9 @@ def update_target(target_id: str) -> Response:
546548
)
547549

548550
assert isinstance(database, VuforiaDatabase)
549-
[target] = [
551+
(target,) = (
550552
target for target in database.targets if target.target_id == target_id
551-
]
553+
)
552554

553555
if target.status != TargetStatuses.SUCCESS.value:
554556
raise TargetStatusNotSuccess
@@ -590,8 +592,8 @@ def update_target(target_id: str) -> Response:
590592
update_values["image"] = image
591593

592594
put_url = (
593-
f"{settings.target_manager_base_url}/databases/{database.database_name}/"
594-
f"targets/{target_id}"
595+
f"{settings.target_manager_base_url}/databases/"
596+
f"{database.database_name}/targets/{target_id}"
595597
)
596598
requests.put(url=put_url, json=update_values, timeout=30)
597599

@@ -618,4 +620,4 @@ def update_target(target_id: str) -> Response:
618620

619621
if __name__ == "__main__": # pragma: no cover
620622
SETTINGS = VWSSettings.parse_obj(obj={})
621-
VWS_FLASK_APP.run(debug=True, host=SETTINGS.vws_host)
623+
VWS_FLASK_APP.run(host=SETTINGS.vws_host)

src/mock_vws/_query_tools.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ def get_query_match_response_text(
145145
raise ActiveMatchingTargetsDeleteProcessing
146146

147147
all_quality_matches = not_deleted_matches + deletion_not_recognized_matches
148-
minimum_rating = 0.0
148+
minimum_rating = 0
149149
matches = [
150150
match
151151
for match in all_quality_matches

src/mock_vws/_query_validators/accept_header_validators.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ def validate_accept_header(request_headers: dict[str, str]) -> None:
2222
'application/json' or '*/*'.
2323
"""
2424
accept = request_headers.get("Accept")
25-
if accept in ("application/json", "*/*", None):
25+
if accept in {"application/json", "*/*", None}:
2626
return
2727

2828
_LOGGER.warning(

src/mock_vws/_query_validators/content_type_validators.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def validate_content_type_header(
4242

4343
email_message = EmailMessage()
4444
email_message["content-type"] = request_headers["Content-Type"]
45-
if email_message.get_content_type() not in ("multipart/form-data", "*/*"):
45+
if email_message.get_content_type() not in {"multipart/form-data", "*/*"}:
4646
_LOGGER.warning(
4747
msg=(
4848
"The content type header main part is not multipart/form-data."

src/mock_vws/_query_validators/date_validators.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,10 @@ def _accepted_date_formats() -> set[str]:
4747
"%a %d %b %Y %H:%M:%S",
4848
}
4949

50-
known_accepted_formats = known_accepted_formats.union(
51-
{date_format + " GMT" for date_format in known_accepted_formats},
50+
return known_accepted_formats.union(
51+
{f"{date_format} GMT" for date_format in known_accepted_formats},
5252
)
5353

54-
return known_accepted_formats
55-
5654

5755
def validate_date_format(request_headers: dict[str, str]) -> None:
5856
"""
@@ -95,7 +93,7 @@ def validate_date_in_range(request_headers: dict[str, str]) -> None:
9593
date_format,
9694
).astimezone()
9795

98-
assert date is not None
96+
assert isinstance(date, datetime.datetime)
9997
gmt = ZoneInfo("GMT")
10098
now = datetime.datetime.now(tz=gmt)
10199
date_from_header = date.replace(tzinfo=gmt)

src/mock_vws/_query_validators/fields_validators.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ def validate_extra_fields(
3434
boundary = email_message.get_boundary()
3535
assert isinstance(boundary, str)
3636
parsed = multipart.MultipartParser(stream=body_file, boundary=boundary)
37-
parsed_keys = {item.name for item in parsed.parts()}
37+
parsed_keys = {part.name for part in parsed.parts()}
3838
known_parameters = {"image", "max_num_results", "include_target_data"}
3939

4040
if not parsed_keys - known_parameters:

0 commit comments

Comments
 (0)