From cd8ed8bc5793985df2c1692072a932ceee517b95 Mon Sep 17 00:00:00 2001 From: salmonik Date: Wed, 8 Jul 2026 02:13:35 +0200 Subject: OPEN THE RUST GATES Signed-off-by: salmonik --- tests/cogs/test_ai.py | 83 --------------------------------------------------- 1 file changed, 83 deletions(-) delete mode 100644 tests/cogs/test_ai.py (limited to 'tests/cogs/test_ai.py') diff --git a/tests/cogs/test_ai.py b/tests/cogs/test_ai.py deleted file mode 100644 index 6d92f55..0000000 --- a/tests/cogs/test_ai.py +++ /dev/null @@ -1,83 +0,0 @@ -import pytest -from unittest.mock import AsyncMock, patch, MagicMock -import discord -import httpx -from conftest import MockApplicationContext - - -@pytest.fixture -def ai_cog(bot): - from cogs.ai import AI - cog = AI(bot) - return cog - - -@pytest.fixture -def mock_ai_response(): - return { - "choices": [ - { - "message": { - "content": "Test response from AI" - } - } - ] - } - - -@pytest.mark.asyncio -async def test_senator_command_success(ai_cog, mock_channel, mock_guild, bot, mock_ai_response): - ctx = MockApplicationContext(bot=bot, channel=mock_channel, guild=mock_guild) - - mock_response = MagicMock() - mock_response.json = MagicMock(return_value=mock_ai_response) - - mock_client = MagicMock() - mock_client.post = AsyncMock(return_value=mock_response) - mock_client.__aenter__ = AsyncMock(return_value=mock_response) - mock_client.__aexit__ = AsyncMock(return_value=None) - - with patch('cogs.ai.httpx.AsyncClient') as mock_httpx: - instance = mock_httpx.return_value.__aenter__.return_value - instance.post = AsyncMock(return_value=mock_response) - with patch.object(ctx, 'send_followup', new_callable=AsyncMock) as mock_followup: - await ai_cog.senator.callback(ai_cog, ctx, text="Hello", tts=False) - mock_followup.assert_called_once_with("Test response from AI") - - -@pytest.mark.asyncio -async def test_senator_command_empty_choices(ai_cog, mock_channel, mock_guild, bot): - ctx = MockApplicationContext(bot=bot, channel=mock_channel, guild=mock_guild) - - mock_response = MagicMock() - mock_response.json = MagicMock(return_value={"choices": []}) - - mock_client = MagicMock() - mock_client.post = AsyncMock(return_value=mock_response) - mock_client.__aenter__ = AsyncMock(return_value=mock_response) - mock_client.__aexit__ = AsyncMock(return_value=None) - - with patch('cogs.ai.httpx.AsyncClient') as mock_httpx: - instance = mock_httpx.return_value.__aenter__.return_value - instance.post = AsyncMock(return_value=mock_response) - with patch.object(ctx, 'send_followup', new_callable=AsyncMock) as mock_followup: - await ai_cog.senator.callback(ai_cog, ctx, text="Hello", tts=False) - mock_followup.assert_called_once_with("bot siem zesroĊ‚") - - -@pytest.mark.asyncio -async def test_senator_command_no_choices_key(ai_cog, mock_channel, mock_guild, bot): - ctx = MockApplicationContext(bot=bot, channel=mock_channel, guild=mock_guild) - - mock_response = MagicMock() - mock_response.json = MagicMock(return_value={}) - - with patch('cogs.ai.httpx.AsyncClient') as mock_httpx: - instance = mock_httpx.return_value.__aenter__.return_value - instance.post = AsyncMock(return_value=mock_response) - with patch('cogs.ai.logger') as mock_logger: - try: - await ai_cog.senator.callback(ai_cog, ctx, text="Hello", tts=False) - except KeyError: - pass - assert mock_logger.info.called -- cgit v1.2.3