diff options
| author | 2023-12-18 01:18:27 +0800 | |
|---|---|---|
| committer | 2023-12-18 01:18:27 +0800 | |
| commit | 9b1749bc75a680f3cb65f7286c7154e92989c642 (patch) | |
| tree | 41cb44fd407a8ce7afc72a4fdefb91838e3ae2a3 | |
| parent | 2ed7f9cf07ad23227a658a310ffe957f6e36b856 (diff) | |
| download | infini-9b1749bc75a680f3cb65f7286c7154e92989c642.tar.gz infini-9b1749bc75a680f3cb65f7286c7154e92989c642.zip | |
:arrow_up: 更新规则包模板
| -rw-r--r-- | src/infini/__main__.py | 2 | ||||
| -rw-r--r-- | src/infini/consts/templates.py | 39 |
2 files changed, 22 insertions, 19 deletions
diff --git a/src/infini/__main__.py b/src/infini/__main__.py index cd20eb62..d2d93b72 100644 --- a/src/infini/__main__.py +++ b/src/infini/__main__.py @@ -28,7 +28,7 @@ def main(): sys.exit(1) path.mkdir(parents=True, exist_ok=True) - (path / "handler.py").write_text(templates.RULE, encoding="utf-8") + (path / "handler.py").write_text(templates.HANDLER, encoding="utf-8") (path / "event.py").write_text(templates.EVENT, encoding="utf-8") (path / "tests.py").write_text(templates.TEST, encoding="utf-8") diff --git a/src/infini/consts/templates.py b/src/infini/consts/templates.py index d25894ae..d780c248 100644 --- a/src/infini/consts/templates.py +++ b/src/infini/consts/templates.py @@ -1,37 +1,40 @@ -RULE = """from infini import Handler, Result +HANDLER = """from infini import Handler, MessageEvent +from infini.matcher import MatcherEvent +from .event import MyEvent -__handlers__ = ["HandlerRule"] - -class HandlerRule(Handler): +class MyHandler(Handler): \"\"\"自设业务函数\"\"\" - name = "MyRule" # 规则包名 - priority: int = 0 # 规则包权重 + name = "example_handler" # 业务函数事件名 + priority: int = 0 # 业务函数权重 - def process(self, **kwargs) -> Result: + def process(self, event: MatcherEvent) -> MessageEvent: \"\"\"声明规则包检定方式\"\"\" - return Result("event1", True) + plain_text = event.get_plain_text() + return MyEvent("rule.example_event", plain_text=plain_text) + """ EVENT = """from infini import MessageEvent -__events__ = ["MyEvent"] - class MyEvent(MessageEvent): - name = "event1" - output = "检定成功!" + \"\"\"自定义消息事件\"\"\" + name = "example_event" + output = "捕获到输入: {plain_text}" """ TEST = """from infini.matcher import matcher, MatcherEvent + def test(): - event = MatcherEvent("MyRule") + event = MatcherEvent("rule.example_handler", string="测试") try: - matcher.run(event) + result = matcher.run(event) + assert result == "捕获到输入: 测试" except Exception as error: - return [error] - finally: - return [] -"""
\ No newline at end of file + return error + return [] + +""" |
