mirror of
https://github.com/snowy-yang/qqbotsdk.git
synced 2026-10-21 11:29:07 +00:00
40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
"""Event 封装属性:message_id 取自事件体 d.id,event_id 取自信封顶层 id。"""
|
||
|
||
from qqbotsdk.events import Event
|
||
|
||
|
||
def make_event() -> Event:
|
||
return Event(
|
||
{
|
||
"op": 0,
|
||
"id": "evt-1", # 信封顶层,与 op/t/d 平级
|
||
"t": "GROUP_ADD_ROBOT",
|
||
"d": {"group_openid": "G1", "op_member_openid": "M1"},
|
||
}
|
||
)
|
||
|
||
|
||
def test_event_id_from_envelope():
|
||
event = make_event()
|
||
assert event.event_id == "evt-1"
|
||
assert event.group_id == "G1"
|
||
|
||
|
||
def test_message_id_from_event_body():
|
||
event = Event(
|
||
{
|
||
"op": 0,
|
||
"id": "evt-2",
|
||
"t": "GROUP_AT_MESSAGE_CREATE",
|
||
"d": {"id": "msgid-1", "group_openid": "G1", "content": "hi"},
|
||
}
|
||
)
|
||
assert event.message_id == "msgid-1" # 消息事件回复用 msg_id
|
||
assert event.event_id == "evt-2" # 信封顶层 id 另有其值
|
||
|
||
|
||
def test_event_id_defaults_to_none():
|
||
event = Event({"op": 0, "t": "READY", "d": {}})
|
||
assert event.event_id is None
|
||
assert event.message_id is None
|