diff --git a/tests/test_utils/test_magic_filter.py b/tests/test_utils/test_magic_filter.py new file mode 100644 index 00000000..4a1d05f3 --- /dev/null +++ b/tests/test_utils/test_magic_filter.py @@ -0,0 +1,21 @@ +from dataclasses import dataclass +from re import Match + +from aiogram import F +from aiogram.utils.magic_filter import MagicFilter + + +@dataclass +class MyObject: + text: str + + +class TestMagicFilter: + def test_operation_as(self): + magic: MagicFilter = F.text.regexp(r"^(\d+)$").as_("match") + + assert not magic.resolve(MyObject(text="test")) + + result = magic.resolve(MyObject(text="123")) + assert isinstance(result, dict) + assert isinstance(result["match"], Match)