mirror of
https://github.com/aiogram/aiogram.git
synced 2025-12-12 18:19:34 +00:00
Upgrade architecture + 5.0 Bot API (#469) * Moved `methods`, `types` and `client` to root package * Removed update handler from routers to dispatcher * Reworked events propagation mechanism to handlers * Reworked inner middlewares logic (very small change) * Updated to Bot API 5.0 * Initial migration from MkDocs to Sphinx + config for readthedocs
32 lines
1 KiB
Python
32 lines
1 KiB
Python
from typing import Any
|
|
|
|
import pytest
|
|
|
|
from aiogram.dispatcher.handler import ShippingQueryHandler
|
|
from aiogram.types import CallbackQuery, InlineQuery, ShippingAddress, ShippingQuery, User
|
|
|
|
|
|
class TestShippingQueryHandler:
|
|
@pytest.mark.asyncio
|
|
async def test_attributes_aliases(self):
|
|
event = ShippingQuery(
|
|
id="query",
|
|
from_user=User(id=42, is_bot=False, first_name="Test"),
|
|
invoice_payload="payload",
|
|
shipping_address=ShippingAddress(
|
|
country_code="country_code",
|
|
state="state",
|
|
city="city",
|
|
street_line1="street_line1",
|
|
street_line2="street_line2",
|
|
post_code="post_code",
|
|
),
|
|
)
|
|
|
|
class MyHandler(ShippingQueryHandler):
|
|
async def handle(self) -> Any:
|
|
assert self.event == event
|
|
assert self.from_user == self.event.from_user
|
|
return True
|
|
|
|
assert await MyHandler(event)
|