Parse response values, when they are JSON.
This commit is contained in:
@@ -8,6 +8,7 @@ import logging
|
||||
import pytest
|
||||
from unittest.mock import Mock, PropertyMock, MagicMock, AsyncMock, patch, mock_open, ANY
|
||||
from fjerkroa_bot import FjerkroaBot
|
||||
from fjerkroa_bot.ai_responder import parse_maybe_json
|
||||
from discord import User, Message, TextChannel
|
||||
|
||||
|
||||
@@ -61,6 +62,20 @@ class TestFunctionality(TestBotBase):
|
||||
result = FjerkroaBot.load_config('config.toml')
|
||||
self.assertEqual(result, self.config_data)
|
||||
|
||||
def test_json_strings(self) -> None:
|
||||
json_string = '{"key1": "value1", "key2": "value2"}'
|
||||
expected_output = "value1\nvalue2"
|
||||
self.assertEqual(parse_maybe_json(json_string), expected_output)
|
||||
non_json_string = "This is not a JSON string."
|
||||
self.assertEqual(parse_maybe_json(non_json_string), non_json_string)
|
||||
json_array = '["value1", "value2", "value3"]'
|
||||
|
||||
expected_output = "value1\nvalue2\nvalue3"
|
||||
self.assertEqual(parse_maybe_json(json_array), expected_output)
|
||||
json_string = '"value1"'
|
||||
expected_output = 'value1'
|
||||
self.assertEqual(parse_maybe_json(json_string), expected_output)
|
||||
|
||||
async def test_on_message_event(self) -> None:
|
||||
async def acreate(*a, **kw):
|
||||
answer = {'answer': 'Hello!',
|
||||
|
||||
Reference in New Issue
Block a user