diff options
Diffstat (limited to 'test/test_plugin_help.py')
-rw-r--r-- | test/test_plugin_help.py | 168 |
1 files changed, 0 insertions, 168 deletions
diff --git a/test/test_plugin_help.py b/test/test_plugin_help.py deleted file mode 100644 index fa7616a..0000000 --- a/test/test_plugin_help.py +++ /dev/null @@ -1,168 +0,0 @@ -import pytest -from nonebug import App - -from .utils import make_fake_message, make_fake_event - - -async def test_main_help(app: App): - from ATRI.plugins.help import menu - - Message = make_fake_message() - - async with app.test_matcher(menu) 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, - """ - 哦呀?~需要帮助? - 关于 -查看bot基本信息 - 服务列表 -以查看所有可用服务 - 帮助 [服务] -以查看对应服务帮助 - Tip: 均需要at触发。@bot 菜单 以打开此页面 - """.strip(), - True, - ) - - -async def test_about_me(app: App): - from ATRI import __version__, conf - from ATRI.plugins.help import about - - temp_list = list() - for i in conf.BotConfig.nickname: - temp_list.append(i) - nickname = "、".join(map(str, temp_list)) - - Message = make_fake_message() - - async with app.test_matcher(about) 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, - f""" - 唔...是来认识咱的么 - 可以称呼咱:{nickname} - 咱的型号是:{__version__} - 想进一步了解: - atri.kyomotoi.moe - 进不去: project-atri-docs.vercel.app - """.strip(), - True, - ) - - -async def test_service_list(app: App): - import os - import json - from tabulate import tabulate - - from ATRI.service import SERVICES_DIR - from ATRI.plugins.help import service_list - - files = os.listdir(SERVICES_DIR) - services = list() - for f in files: - prefix = f.replace(".json", "") - f = os.path.join(SERVICES_DIR, f) - with open(f, "r", encoding="utf-8") as r: - service = json.load(r) - services.append( - [ - prefix, - "√" if service["enabled"] else "×", - "√" if service["only_admin"] else "×", - ] - ) - table = tabulate( - services, - headers=["服务名称", "开启状态(全局)", "仅支持管理员"], - tablefmt="plain", - ) - output = f"咱搭载了以下服务~\n{table}\n@bot 帮助 [服务] -以查看对应服务帮助" - - Message = make_fake_message() - - async with app.test_matcher(service_list) 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, - f""" - 咱搭载了以下服务~ - {output} - @bot 帮助 [服务] -以查看对应服务帮助 - """, - True, - ) - - -async def test_service_info(app: App): - from ATRI.plugins.help import service_info - - Message = make_fake_message() - - async with app.test_matcher(service_info) 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, "请检查是否输入错误呢...@bot 帮助 [服务]", True) - - async with app.test_matcher(service_info) 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, - """ - 服务名:状态 - 说明:检查咱自身状态 - 可用命令: - /ping - /status - 是否全局启用:True - Tip: @bot 帮助 [服务] [命令] 以查看对应命令详细信息 - """, - True, - ) - - async with app.test_matcher(service_info) as ctx: - bot = ctx.create_bot() - - msg = Message("帮助 状态 /ping") - event = make_fake_event(_message=msg, _to_me=True)() - - ctx.receive_event(bot, event) - ctx.should_call_send( - event, - """ - 命令:/ping - 类型:command - 说明:检测bot简单信息处理速度 - 更多触发方式:[] - """, - True, - ) |