diff options
Diffstat (limited to '')
| -rw-r--r-- | tests/test_api.py | 106 | 
1 files changed, 0 insertions, 106 deletions
| diff --git a/tests/test_api.py b/tests/test_api.py deleted file mode 100644 index ce69ef187..000000000 --- a/tests/test_api.py +++ /dev/null @@ -1,106 +0,0 @@ -import logging -from unittest.mock import MagicMock, patch - -import pytest - -from bot import api -from tests.helpers import async_test - - -def test_loop_is_not_running_by_default(): -    assert not api.loop_is_running() - - -@async_test -async def test_loop_is_running_in_async_test(): -    assert api.loop_is_running() - - -def error_api_response(): -    response = MagicMock() -    response.status = 999 -    return response - - -def api_log_handler(): -    return api.APILoggingHandler(None) - - -def debug_log_record(): -    return logging.LogRecord( -        name='my.logger', level=logging.DEBUG, -        pathname='my/logger.py', lineno=666, -        msg="Lemon wins", args=(), -        exc_info=None -    ) - - -def test_response_code_error_default_initialization(error_api_response): -    error = api.ResponseCodeError(response=error_api_response) -    assert error.status is error_api_response.status -    assert not error.response_json -    assert not error.response_text -    assert error.response is error_api_response - - -def test_response_code_error_default_representation(error_api_response): -    error = api.ResponseCodeError(response=error_api_response) -    assert str(error) == f"Status: {error_api_response.status} Response: " - - -def test_response_code_error_representation_with_nonempty_response_json(error_api_response): -    error = api.ResponseCodeError( -        response=error_api_response, -        response_json={'hello': 'world'} -    ) -    assert str(error) == f"Status: {error_api_response.status} Response: {{'hello': 'world'}}" - - -def test_response_code_error_representation_with_nonempty_response_text(error_api_response): -    error = api.ResponseCodeError( -        response=error_api_response, -        response_text='Lemon will eat your soul' -    ) -    assert str(error) == f"Status: {error_api_response.status} Response: Lemon will eat your soul" - - -@patch('bot.api.APILoggingHandler.ship_off') -def test_emit_appends_to_queue_with_stopped_event_loop( -    ship_off_patch, api_log_handler, debug_log_record -): -    # This is a coroutine so returns something we should await, -    # but asyncio complains about that. To ease testing, we patch -    # `ship_off` to just return a regular value instead. -    ship_off_patch.return_value = 42 -    api_log_handler.emit(debug_log_record) - -    assert api_log_handler.queue == [42] - - -def test_emit_ignores_less_than_debug(debug_log_record, api_log_handler): -    debug_log_record.levelno = logging.DEBUG - 5 -    api_log_handler.emit(debug_log_record) -    assert not api_log_handler.queue - - -def test_schedule_queued_tasks_for_empty_queue(api_log_handler, caplog): -    api_log_handler.schedule_queued_tasks() -    # Logs when tasks are scheduled -    assert not caplog.records - - -@patch('asyncio.create_task') -def test_schedule_queued_tasks_for_nonempty_queue(create_task_patch, api_log_handler, caplog): -    api_log_handler.queue = [555] -    api_log_handler.schedule_queued_tasks() -    assert not api_log_handler.queue -    create_task_patch.assert_called_once_with(555) - -    [record] = caplog.records -    assert record.message == "Scheduled 1 pending logging tasks." -    assert record.levelno == logging.DEBUG -    assert record.name == 'bot.api' -    assert record.__dict__['via_handler'] | 
