diff options
Diffstat (limited to 'test/test_plugin_chat.py')
-rw-r--r-- | test/test_plugin_chat.py | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/test/test_plugin_chat.py b/test/test_plugin_chat.py new file mode 100644 index 0000000..e04f1d3 --- /dev/null +++ b/test/test_plugin_chat.py @@ -0,0 +1,84 @@ +import pytest +from nonebug import App +from nonebot.adapters.onebot.v11 import MessageSegment + +from .utils import make_fake_message, make_fake_event + + +async def test_chat(app: App): + from ATRI.plugins.chat import chat + + Message = make_fake_message() + + async with app.test_matcher(chat) as ctx: + bot = ctx.create_bot() + + msg = Message("爱你") + event = make_fake_event(_message=msg, _to_me=True)() + + ctx.receive_event(bot, event) + ctx.should_call_send(event, "是…是嘛(脸红)呐,其实咱也……", True) + + +async def test_my_name_is(app: App): + from ATRI.plugins.chat import my_name_is + + Message = make_fake_message() + + async with app.test_matcher(my_name_is) as ctx: + bot = ctx.create_bot() + + msg = Message("叫我") + event = make_fake_event(_message=msg, _to_me=True)() + + ctx.receive_event(bot, event) + ctx.should_call_send(event, "欧尼酱想让咱如何称呼呢!0w0", True) + + msg = Message("欧尼酱") + event = make_fake_event(_message=msg)() + + ctx.receive_event(bot, event) + ctx.should_call_send(event, "好~w 那咱以后就称呼你为欧尼酱!", True) + + +async def test_say(app: App): + from ATRI.plugins.chat import say + + Message = make_fake_message() + + async with app.test_matcher(say) as ctx: + bot = ctx.create_bot() + + msg = Message("说") + event = make_fake_event(_message=msg, _to_me=True)() + + ctx.receive_event(bot, event) + ctx.should_call_send(event, "想要咱复读啥呢...", True) + + msg = Message("nya~") + event = make_fake_event(_message=msg)() + + ctx.receive_event(bot, event) + ctx.should_call_send(event, "nya~", True) + + async with app.test_matcher(say) as ctx: + bot = ctx.create_bot() + + msg = Message("说") + event = make_fake_event(_message=msg, _to_me=True)() + + ctx.receive_event(bot, event) + ctx.should_call_send(event, "想要咱复读啥呢...", True) + + msg = Message( + MessageSegment.image( + "https://cdn.jsdelivr.net/gh/Kyomotoi/CDN@master/noting/88674944_p0.png" + ) + ) + event = make_fake_event(_message=msg, _to_me=True)() + + ctx.receive_event(bot, event) + ctx.should_call_send(event, "不要...", True) |