Write tests for create_startapp_link method

This commit is contained in:
welaskez 2025-03-06 12:29:26 +05:00
parent 2c6454f19f
commit 43c3101797

View file

@ -1,6 +1,7 @@
import pytest
from aiogram.utils.deep_linking import create_start_link, create_startgroup_link
from aiogram.utils.deep_linking import create_start_link, create_startgroup_link, \
create_startapp_link
from aiogram.utils.payload import decode_payload, encode_payload
from tests.mocked_bot import MockedBot
@ -44,6 +45,10 @@ class TestDeepLinking:
link = await create_startgroup_link(bot, payload)
assert link == f"https://t.me/tbot?startgroup={payload}"
async def test_get_startapp_link(self, bot: MockedBot, payload: str):
link = await create_startapp_link(bot, payload)
assert link == f"https://t.me/tbot?startapp={payload}"
async def test_filter_encode_and_decode(self, payload: str):
encoded = encode_payload(payload)
decoded = decode_payload(encoded)
@ -85,6 +90,15 @@ class TestDeepLinking:
assert link == f"https://t.me/tbot?start={encoded_payload}"
async def test_get_startapp_link_with_encoding(self, bot: MockedBot, wrong_payload: str):
# define link
link = await create_startapp_link(bot, wrong_payload, encode=True)
# define reference link
encoded_payload = encode_payload(wrong_payload)
assert link == f"https://t.me/tbot?startapp={encoded_payload}"
async def test_64_len_payload(self, bot: MockedBot):
payload = "p" * 64
link = await create_start_link(bot, payload)