mirror of
https://github.com/Aider-AI/aider.git
synced 2025-06-01 02:05:00 +00:00
feat: Add tests for simple_send_with_retries function
This commit is contained in:
parent
2369489321
commit
109f197f52
1 changed files with 47 additions and 0 deletions
47
tests/basic/test_sendchat.py
Normal file
47
tests/basic/test_sendchat.py
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
import unittest
|
||||||
|
from unittest.mock import MagicMock, patch
|
||||||
|
|
||||||
|
import httpx
|
||||||
|
|
||||||
|
from aider.llm import litellm
|
||||||
|
from aider.sendchat import simple_send_with_retries
|
||||||
|
|
||||||
|
|
||||||
|
class PrintCalled(Exception):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
class TestSendChat(unittest.TestCase):
|
||||||
|
@patch("litellm.completion")
|
||||||
|
@patch("builtins.print")
|
||||||
|
def test_simple_send_with_retries_rate_limit_error(self, mock_print, mock_completion):
|
||||||
|
mock = MagicMock()
|
||||||
|
mock.status_code = 500
|
||||||
|
|
||||||
|
# Set up the mock to raise
|
||||||
|
mock_completion.side_effect = [
|
||||||
|
litellm.exceptions.RateLimitError(
|
||||||
|
"rate limit exceeded",
|
||||||
|
response=mock,
|
||||||
|
llm_provider="llm_provider",
|
||||||
|
model="model",
|
||||||
|
),
|
||||||
|
None,
|
||||||
|
]
|
||||||
|
|
||||||
|
# Call the simple_send_with_retries method
|
||||||
|
simple_send_with_retries("model", ["message"])
|
||||||
|
mock_print.assert_called_once()
|
||||||
|
|
||||||
|
@patch("litellm.completion")
|
||||||
|
@patch("builtins.print")
|
||||||
|
def test_simple_send_with_retries_connection_error(self, mock_print, mock_completion):
|
||||||
|
# Set up the mock to raise
|
||||||
|
mock_completion.side_effect = [
|
||||||
|
httpx.ConnectError("Connection error"),
|
||||||
|
None,
|
||||||
|
]
|
||||||
|
|
||||||
|
# Call the simple_send_with_retries method
|
||||||
|
simple_send_with_retries("model", ["message"])
|
||||||
|
mock_print.assert_called_once()
|
Loading…
Add table
Add a link
Reference in a new issue