import sys from unittest import result import gradio_client import pytest import os from unittest.mock import patch, MagicMock from swarms.app import set_environ, load_tools, download_model current_dir = os.path.dirname(os.path.abspath(__file__)) # Add the parent directory (the root of your project) to the Python path sys.path.insert(0, os.path.join(current_dir, '..')) def test_set_environ(): @patch('app.LLM') def test_download_model(mock_llm): # Arrange model_url = "facebook/opt-125m" memory_utilization = 8 mock_model = MagicMock() mock_llm.return_value = mock_model # Act result = download_model(model_url, memory_utilization) # Assert mock_llm.assert_called_once_with(model=model_url, trust_remote_code=True, gpu_memory_utilization=memory_utilization) self.assertEqual(result, gradio_client.update(choices=[(model_url.split('/')[-1], mock_model)])) def test_load_tools(self): # Call the function result = load_tools() # Check if the function returns the expected result assert result is not None assert isinstance(result, list)