From 410c9619d5582d657f2754b32ee15592b254bf65 Mon Sep 17 00:00:00 2001
From: Azide <rukuy@qq.com>
Date: Mon, 14 Mar 2022 20:04:14 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=86group=5Fmanage=5Fmat?=
 =?UTF-8?q?cher=E7=9A=84=E9=87=8D=E8=BD=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/plugins/nonebot_bison/config_manager.py |  5 +++-
 tests/test_config_manager_admin.py          | 26 +++++++++++++++++++--
 2 files changed, 28 insertions(+), 3 deletions(-)

diff --git a/src/plugins/nonebot_bison/config_manager.py b/src/plugins/nonebot_bison/config_manager.py
index ee5ebf9..9e59b2b 100644
--- a/src/plugins/nonebot_bison/config_manager.py
+++ b/src/plugins/nonebot_bison/config_manager.py
@@ -12,7 +12,7 @@ from nonebot.internal.params import ArgStr
 from nonebot.internal.rule import Rule
 from nonebot.log import logger
 from nonebot.matcher import Matcher
-from nonebot.params import Depends, EventMessage, EventPlainText, EventToMe
+from nonebot.params import Depends, EventMessage, EventPlainText, EventToMe, EventType
 from nonebot.permission import SUPERUSER
 from nonebot.rule import to_me
 from nonebot.typing import T_State
@@ -296,6 +296,9 @@ do_del_sub(del_sub_matcher)
 
 group_manage_matcher = on_command("群管理")
 
+@group_manage_matcher.handle()
+async def send_group_list(bot: Bot, event: GroupMessageEvent, state: T_State):
+    await group_manage_matcher.finish(Message("该功能只支持私聊使用,请私聊Bot"))
 
 @group_manage_matcher.handle()
 async def send_group_list(bot: Bot, state: T_State):
diff --git a/tests/test_config_manager_admin.py b/tests/test_config_manager_admin.py
index fc6581d..77e9ac1 100644
--- a/tests/test_config_manager_admin.py
+++ b/tests/test_config_manager_admin.py
@@ -1,9 +1,11 @@
 from nonebug import App
 
-from .utils import fake_admin_user, fake_private_message_event, fake_superuser
+from .utils import fake_admin_user, fake_private_message_event, fake_group_message_event, fake_superuser
 
+import pytest
 
-async def test_query(app: App):
+@pytest.mark.asyncio
+async def test_query_with_superuser_private(app: App):
     from nonebot.adapters.onebot.v11.bot import Bot
     from nonebot.adapters.onebot.v11.message import Message
     from nonebot_bison.config_manager import group_manage_matcher
@@ -43,3 +45,23 @@ async def test_query(app: App):
             message=Message("查询订阅"), sender=fake_superuser
         )
         ctx.receive_event(bot, event_2_ok)
+        ctx.should_pass_rule()
+        ctx.should_pass_permission()
+
+@pytest.mark.asyncio
+async def test_query_with_superuser_group_tome(app: App):
+    from nonebot.adapters.onebot.v11.bot import Bot
+    from nonebot.adapters.onebot.v11.message import Message
+    from nonebot_bison.config_manager import group_manage_matcher
+
+    async with app.test_matcher(group_manage_matcher) as ctx:
+        bot = ctx.create_bot(base=Bot)
+        event = fake_group_message_event(
+            message=Message("群管理"), sender=fake_superuser,to_me=True
+        )
+        ctx.receive_event(bot, event)
+        ctx.should_pass_rule()
+        ctx.should_pass_permission()
+        ctx.should_call_send(
+            event, '', True
+        )
\ No newline at end of file