From 5908250f6b1c94bec142e18b16cf54ec4dc52c11 Mon Sep 17 00:00:00 2001 From: Hadi Date: Wed, 20 Aug 2025 15:04:11 -0400 Subject: [PATCH] Remove tests --- tests/functional/model/hf_onboarding_test.py | 60 -------------- .../functional/model/image_upload_e2e_test.py | 71 ---------------- .../model/image_upload_functional_test.py | 82 ------------------- 3 files changed, 213 deletions(-) delete mode 100644 tests/functional/model/hf_onboarding_test.py delete mode 100644 tests/functional/model/image_upload_e2e_test.py delete mode 100644 tests/functional/model/image_upload_functional_test.py diff --git a/tests/functional/model/hf_onboarding_test.py b/tests/functional/model/hf_onboarding_test.py deleted file mode 100644 index fa68d2e8..00000000 --- a/tests/functional/model/hf_onboarding_test.py +++ /dev/null @@ -1,60 +0,0 @@ -__author__ = "michaellam" - -import pytest -import time - -from aixplain.factories.model_factory import ModelFactory -from tests.test_utils import delete_asset -from aixplain.utils import config - - -@pytest.mark.skip(reason="Model Deployment is deactivated for improvements.") -def test_deploy_model(): - # Start the deployment - model_name = "Test Model" - repo_id = "tiiuae/falcon-7b" - response = ModelFactory.deploy_huggingface_model(model_name, repo_id, hf_token=config.HF_TOKEN) - assert "id" in response.keys() - - # Check for status - model_id = response["id"] - num_retries = 120 - counter = 0 - while ModelFactory.get_huggingface_model_status(model_id)["status"].lower() != "onboarded": - time.sleep(10) - counter += 1 - if counter == num_retries: - assert ModelFactory.get_huggingface_model_status(model_id)["status"].lower() == "onboarded" - - # Clean up - delete_asset(model_id, config.TEAM_API_KEY) - - -# @pytest.mark.skip(reason="Model Deployment is deactivated for improvements.") -def test_nonexistent_model(): - # Start the deployment - model_name = "Test Model" - repo_id = "nonexistent-supplier/nonexistent-model" - response = ModelFactory.deploy_huggingface_model(model_name, repo_id, hf_token=config.HF_TOKEN) - assert response["statusCode"] == 400 - assert response["message"] == "err.unable_to_onboard_model" - - -# @pytest.mark.skip(reason="Model Deployment is deactivated for improvements.") -def test_size_limit(): - # Start the deployment - model_name = "Test Model" - repo_id = "tiiuae/falcon-40b" - response = ModelFactory.deploy_huggingface_model(model_name, repo_id, hf_token=config.HF_TOKEN) - assert response["statusCode"] == 400 - assert response["message"] == "err.unable_to_onboard_model" - - -# @pytest.mark.skip(reason="Model Deployment is deactivated for improvements.") -def test_gated_model(): - # Start the deployment - model_name = "Test Model" - repo_id = "meta-llama/Llama-2-7b-hf" - response = ModelFactory.deploy_huggingface_model(model_name, repo_id, hf_token="mock_key") - assert response["statusCode"] == 400 - assert response["message"] == "err.unable_to_onboard_model" diff --git a/tests/functional/model/image_upload_e2e_test.py b/tests/functional/model/image_upload_e2e_test.py deleted file mode 100644 index 90ebddfd..00000000 --- a/tests/functional/model/image_upload_e2e_test.py +++ /dev/null @@ -1,71 +0,0 @@ -__author__ = "michaellam" - -from pathlib import Path -import json -from aixplain.factories.model_factory import ModelFactory -from tests.test_utils import delete_asset, delete_service_account -from aixplain.utils import config -import docker -import pytest - - -def test_create_and_upload_model(): - # List the host machines - host_response = ModelFactory.list_host_machines() - for hosting_machine_dict in host_response: - assert "code" in hosting_machine_dict.keys() - assert "type" in hosting_machine_dict.keys() - assert "cores" in hosting_machine_dict.keys() - assert "memory" in hosting_machine_dict.keys() - assert "hourlyCost" in hosting_machine_dict.keys() - - # List the functions - response = ModelFactory.list_functions() - items = response["items"] - for item in items: - assert "output" not in item.keys() - assert "params" not in item.keys() - assert "id" not in item.keys() - assert "name" in item.keys() - - # Register the model, and create an image repository for it. - with open(Path("tests/test_requests/create_asset_request.json")) as f: - mock_register_payload = json.load(f) - name = mock_register_payload["name"] - description = mock_register_payload["description"] - function = mock_register_payload["function"] - source_language = mock_register_payload["sourceLanguage"] - input_modality = mock_register_payload["input_modality"] - output_modality = mock_register_payload["output_modality"] - documentation_url = mock_register_payload["documentation_url"] - register_response = ModelFactory.create_asset_repo( - name, description, function, source_language, input_modality, output_modality, documentation_url, config.TEAM_API_KEY - ) - assert "id" in register_response.keys() - assert "repositoryName" in register_response.keys() - model_id = register_response["id"] - repo_name = register_response["repositoryName"] - - # Log into the image repository. - login_response = ModelFactory.asset_repo_login() - - assert login_response["username"] == "AWS" - assert login_response["registry"] == "535945872701.dkr.ecr.us-east-1.amazonaws.com" - assert "password" in login_response.keys() - - username = login_response["username"] - password = login_response["password"] - registry = login_response["registry"] - - # Push an image to ECR - low_level_client = docker.APIClient(base_url="unix://var/run/docker.sock") - low_level_client.pull("bash") - low_level_client.tag("bash", f"{registry}/{repo_name}") - low_level_client.push(f"{registry}/{repo_name}", auth_config={"username": username, "password": password}) - - # Send an email to finalize onboarding process - ModelFactory.onboard_model(model_id, "latest", "fake_hash") - - # Clean up - delete_service_account(config.TEAM_API_KEY) - delete_asset(model_id, config.TEAM_API_KEY) diff --git a/tests/functional/model/image_upload_functional_test.py b/tests/functional/model/image_upload_functional_test.py deleted file mode 100644 index c5abd487..00000000 --- a/tests/functional/model/image_upload_functional_test.py +++ /dev/null @@ -1,82 +0,0 @@ -__author__ = "michaellam" -from pathlib import Path -import json -from aixplain.factories.model_factory import ModelFactory -from tests.test_utils import delete_asset, delete_service_account -from aixplain.utils import config -import pytest - - -def test_login(): - response = ModelFactory.asset_repo_login() - assert response["username"] == "AWS" - assert response["registry"] == "535945872701.dkr.ecr.us-east-1.amazonaws.com" - assert "password" in response.keys() - - # Test cleanup - delete_service_account(config.TEAM_API_KEY) - - -def test_create_asset_repo(): - with open(Path("tests/test_requests/create_asset_request.json")) as f: - mock_register_payload = json.load(f) - name = mock_register_payload["name"] - description = mock_register_payload["description"] - function = mock_register_payload["function"] - source_language = mock_register_payload["sourceLanguage"] - input_modality = mock_register_payload["input_modality"] - output_modality = mock_register_payload["output_modality"] - documentation_url = mock_register_payload["documentation_url"] - response = ModelFactory.create_asset_repo( - name, - description, - function, - source_language, - input_modality, - output_modality, - documentation_url, - config.TEAM_API_KEY, - ) - response_dict = dict(response) - assert "id" in response_dict.keys() - assert "repositoryName" in response_dict.keys() - - # Test cleanup - delete_asset(response["id"], config.TEAM_API_KEY) - - -def test_list_host_machines(): - response = ModelFactory.list_host_machines() - for hosting_machine_dict in response: - assert "code" in hosting_machine_dict.keys() - assert "type" in hosting_machine_dict.keys() - assert "cores" in hosting_machine_dict.keys() - assert "memory" in hosting_machine_dict.keys() - assert "hourlyCost" in hosting_machine_dict.keys() - - -def test_get_functions(): - # Verbose - response = ModelFactory.list_functions(True) - items = response["items"] - for item in items: - assert "output" in item.keys() - assert "params" in item.keys() - assert "id" in item.keys() - assert "name" in item.keys() - - # Non-verbose - response = ModelFactory.list_functions() # Not verbose by default - items = response["items"] - for item in items: - assert "output" not in item.keys() - assert "params" not in item.keys() - assert "id" not in item.keys() - assert "name" in item.keys() - - -@pytest.mark.skip(reason="Not included in first release") -def list_image_repo_tags(): - response = ModelFactory.list_image_repo_tags() - assert "Image tags" in response.keys() - assert "nextToken" in response.keys()