nonebot2/tests/plugins/param/param_state.py

106 lines
2.1 KiB
Python
Raw Normal View History

from re import Match
2021-12-20 00:28:02 +08:00
from nonebot.adapters import Message
from nonebot.params import (
Command,
CommandArg,
CommandStart,
CommandWhitespace,
Endswith,
Fullmatch,
Keyword,
2021-12-20 00:28:02 +08:00
RawCommand,
RegexDict,
2021-12-20 00:28:02 +08:00
RegexGroup,
RegexMatched,
RegexStr,
2021-12-20 00:28:02 +08:00
ShellCommandArgs,
ShellCommandArgv,
Startswith,
2021-12-20 00:28:02 +08:00
)
from nonebot.typing import T_State
2021-12-20 00:28:02 +08:00
2022-01-10 11:20:06 +08:00
async def state(x: T_State) -> T_State:
2021-12-20 00:28:02 +08:00
return x
async def postpone_state(x: "T_State") -> T_State:
return x
async def legacy_state(state):
return state
async def not_legacy_state(state: int): ...
async def command(cmd: tuple[str, ...] = Command()) -> tuple[str, ...]:
2021-12-20 00:28:02 +08:00
return cmd
async def raw_command(raw_cmd: str = RawCommand()) -> str:
return raw_cmd
async def command_arg(cmd_arg: Message = CommandArg()) -> Message:
return cmd_arg
async def command_start(start: str = CommandStart()) -> str:
return start
async def command_whitespace(whitespace: str = CommandWhitespace()) -> str:
return whitespace
2021-12-20 00:28:02 +08:00
async def shell_command_args(
shell_command_args: dict = ShellCommandArgs(),
) -> dict:
return shell_command_args
async def shell_command_argv(
shell_command_argv: list[str] = ShellCommandArgv(),
) -> list[str]:
2021-12-20 00:28:02 +08:00
return shell_command_argv
async def regex_dict(regex_dict: dict = RegexDict()) -> dict:
return regex_dict
async def regex_group(regex_group: tuple = RegexGroup()) -> tuple:
2021-12-20 00:28:02 +08:00
return regex_group
async def regex_matched(regex_matched: Match[str] = RegexMatched()) -> Match[str]:
2021-12-20 00:28:02 +08:00
return regex_matched
async def regex_str(
entire: str = RegexStr(),
type_: str = RegexStr("type"),
second: str = RegexStr(2),
groups: tuple[str, ...] = RegexStr(1, "arg"),
) -> tuple[str, str, str, tuple[str, ...]]:
return entire, type_, second, groups
async def startswith(startswith: str = Startswith()) -> str:
return startswith
async def endswith(endswith: str = Endswith()) -> str:
return endswith
async def fullmatch(fullmatch: str = Fullmatch()) -> str:
return fullmatch
async def keyword(keyword: str = Keyword()) -> str:
return keyword