Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion tests/mock_vws/target_list/test_rate_limit.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

def test_two_requests_per_minute(
*,
base_vws_url: str,
verify_mock_vuforia: VuforiaBackend,
rate_limited_database: CloudDatabase,
) -> None:
Expand Down Expand Up @@ -48,7 +49,7 @@ def test_two_requests_per_minute(
request_path="/targets",
)
endpoint = Endpoint(
base_url="https://vws.vuforia.com",
base_url=base_vws_url,
path_url="/targets",
method=HTTPMethod.GET,
headers={"Authorization": authorization, "Date": date},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,14 @@
)
def test_generate_instance_format(
*,
base_vws_url: str,
accept: VuMarkAccept,
expected_signature: bytes,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""A VuMark instance can be generated in the requested format."""
vumark_client = make_vumark_service(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
)
Expand All @@ -75,12 +77,14 @@ def test_generate_instance_format(
)
def test_generate_instance_content_type_header(
*,
base_vws_url: str,
accept: str,
expected_content_type: str,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""VuMark image responses include the expected content type."""
response = make_vumark_request(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
target_id=vumark_vuforia_database.target_id,
Expand All @@ -96,10 +100,12 @@ def test_generate_instance_content_type_header(


def test_invalid_accept_header(
base_vws_url: str,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""An unsupported Accept header returns an error."""
response = make_vumark_request(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
target_id=vumark_vuforia_database.target_id,
Expand All @@ -115,10 +121,12 @@ def test_invalid_accept_header(


def test_empty_instance_id(
base_vws_url: str,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""An empty instance_id returns InvalidInstanceId."""
vumark_client = make_vumark_service(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
)
Expand Down Expand Up @@ -154,11 +162,13 @@ def test_empty_instance_id(
)
def test_non_string_instance_id(
*,
base_vws_url: str,
instance_id: JsonValue,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""An instance_id which is not a string returns BadRequest."""
response = make_vumark_request(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
target_id=vumark_vuforia_database.target_id,
Expand All @@ -172,10 +182,12 @@ def test_non_string_instance_id(


def test_unknown_target(
base_vws_url: str,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""An unknown target_id returns UnknownTarget."""
response = make_vumark_request(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
target_id=uuid4().hex,
Expand All @@ -189,6 +201,7 @@ def test_unknown_target(


def test_non_vumark_database(
base_vws_url: str,
vuforia_database: CloudDatabase,
) -> None:
"""Generating a VuMark instance for a target in a non-VuMark
Expand All @@ -197,10 +210,12 @@ def test_non_vumark_database(
server_access_key = vuforia_database.server_access_key
server_secret_key = vuforia_database.server_secret_key
vws_client = VWS(
base_vws_url=base_vws_url,
server_access_key=server_access_key,
server_secret_key=server_secret_key,
)
vumark_client = make_vumark_service(
base_vws_url=base_vws_url,
server_access_key=server_access_key,
server_secret_key=server_secret_key,
)
Expand Down Expand Up @@ -232,10 +247,12 @@ def test_non_vumark_database(


def test_successful_target(
base_vws_url: str,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""A VuMark target that has finished processing succeeds."""
vumark_client = make_vumark_service(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,14 @@


def test_inactive_database(
base_vws_url: str,
inactive_vumark_database: InactiveVuMarkCloudDatabase,
) -> None:
"""Calling the VuMark generation API with credentials for an
inactive database returns ProjectInactive.
"""
response = make_vumark_request(
base_vws_url=base_vws_url,
server_access_key=inactive_vumark_database.server_access_key,
server_secret_key=inactive_vumark_database.server_secret_key,
target_id=uuid4().hex,
Expand Down
7 changes: 4 additions & 3 deletions tests/mock_vws/vumark_generation_api/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@
str | int | float | bool | list[JsonValue] | dict[str, JsonValue] | None
)

_VWS_HOST = "https://vws.vuforia.com"

PNG_SIGNATURE = b"\x89PNG\r\n\x1a\n"

PDF_SIGNATURE = b"%PDF"
Expand All @@ -24,11 +22,13 @@
@beartype
def make_vumark_service(
*,
base_vws_url: str,
server_access_key: str,
server_secret_key: str,
) -> VuMarkService:
"""Return a VuMark service client."""
return VuMarkService(
base_vws_url=base_vws_url,
server_access_key=server_access_key,
server_secret_key=server_secret_key,
)
Expand All @@ -37,6 +37,7 @@ def make_vumark_service(
@beartype
def make_vumark_request(
*,
base_vws_url: str,
server_access_key: str,
server_secret_key: str,
target_id: str,
Expand All @@ -63,7 +64,7 @@ def make_vumark_request(
)

return requests.post(
url=_VWS_HOST + request_path,
url=base_vws_url + request_path,
headers={
"Accept": accept,
"Authorization": authorization_string,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,14 @@


def test_processing_target(
base_vws_url: str,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""A VuMark target still processing returns
TargetStatusNotSuccess.
"""
vumark_client = make_vumark_service(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
)
Expand All @@ -52,12 +54,14 @@ def test_processing_target(


def test_processing_target_raw_response(
base_vws_url: str,
vumark_vuforia_database: VuMarkCloudDatabase,
) -> None:
"""The raw HTTP response for a processing target has the expected
status code and result code.
"""
response = make_vumark_request(
base_vws_url=base_vws_url,
server_access_key=vumark_vuforia_database.server_access_key,
server_secret_key=vumark_vuforia_database.server_secret_key,
target_id=vumark_vuforia_database.processing_target_id,
Expand Down
Loading