Skip to content

Commit

Permalink
test(restapi): Added tests for model versions, snapshots, drafts, and…
Browse files Browse the repository at this point in the history
… tags
  • Loading branch information
andrewhand committed Jul 2, 2024
1 parent 987818b commit 595232d
Show file tree
Hide file tree
Showing 3 changed files with 647 additions and 45 deletions.
76 changes: 65 additions & 11 deletions tests/unit/restapi/v1/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -179,34 +179,88 @@ def registered_models(
group_id=group_id,
).get_json()

actions.register_model_version(
# actions.register_model_version(
# client,
# model_id=model1_response["id"],
# artifact_id=registered_artifacts["artifact1"]["id"],
# description="initial version",
# ).get_json()
# actions.register_model_version(
# client,
# model_id=model2_response["id"],
# artifact_id=registered_artifacts["artifact2"]["id"],
# description="initial version",
# ).get_json()
# actions.register_model_version(
# client,
# model_id=model3_response["id"],
# artifact_id=registered_artifacts["artifact3"]["id"],
# ).get_json()
# actions.register_model_version(
# client,
# model_id=model1_response["id"],
# artifact_id=registered_artifacts["artifact4"]["id"],
# description="new version",
# ).get_json()

# return {
# "model1": actions.get_model(client, model1_response["id"]).get_json(),
# "model2": actions.get_model(client, model2_response["id"]).get_json(),
# "model3": actions.get_model(client, model3_response["id"]).get_json(),
# }

return {
"model1": model1_response,
"model2": model2_response,
"model3": model3_response,
}


@pytest.fixture
def registered_model_versions(
client: FlaskClient,
db: SQLAlchemy,
auth_account: dict[str, Any],
registered_models: dict[str, Any],
registered_artifacts: dict[str, Any],
) -> dict[str, Any]:
version1_response = actions.register_model_version(
client,
model_id=model1_response["id"],
model_id=registered_models["model1"]["id"],
artifact_id=registered_artifacts["artifact1"]["id"],
description="initial version",
).get_json()
actions.register_model_version(
version2_response = actions.register_model_version(
client,
model_id=model2_response["id"],
model_id=registered_models["model2"]["id"],
artifact_id=registered_artifacts["artifact2"]["id"],
description="initial version",
).get_json()
actions.register_model_version(
version3_response = actions.register_model_version(
client,
model_id=model3_response["id"],
model_id=registered_models["model3"]["id"],
artifact_id=registered_artifacts["artifact3"]["id"],
description="initial version",
).get_json()
version4_response = actions.register_model_version(
client,
model_id=registered_models["model2"]["id"],
artifact_id=registered_artifacts["artifact4"]["id"],
description="Not retreived.",
).get_json()
actions.register_model_version(
version5_response = actions.register_model_version(
client,
model_id=model1_response["id"],
model_id=registered_models["model1"]["id"],
artifact_id=registered_artifacts["artifact4"]["id"],
description="new version",
).get_json()

return {
"model1": actions.get_model(client, model1_response["id"]).get_json(),
"model2": actions.get_model(client, model2_response["id"]).get_json(),
"model3": actions.get_model(client, model3_response["id"]).get_json(),
"version1": version1_response,
"version2": version2_response,
"version3": version3_response,
"version4": version4_response,
"version5": version5_response,
}


Expand Down
5 changes: 2 additions & 3 deletions tests/unit/restapi/v1/test_job.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,15 +140,14 @@ def assert_job_response_contents_matches_expectations(
# Check basic response types for job
assert isinstance(response["description"], str)
assert isinstance(response["timeout"], str)
assert isinstance(response["values"], dict)

assert response["description"] == expected_contents["description"]
assert response["timeout"] == expected_contents["timeout"]
assert response["values"] == expected_contents["values"]

assert helpers.is_timeout_format(response["timeout"])

assert isinstance(response["values"], dict)
assert response["values"] == expected_contents["values"]

# Check Refs for base resources
asserts.assert_user_ref_contents_matches_expectations(
user=response["user"], expected_user_id=expected_contents["user_id"]
Expand Down
Loading

0 comments on commit 595232d

Please sign in to comment.