Merge remote-tracking branch 'origin/dev-3.x' into dev-3.x

This commit is contained in:
jrootjunior 2020-01-22 12:38:38 +02:00
commit cfd869b797
27 changed files with 602 additions and 111 deletions

View file

@ -0,0 +1,26 @@
from typing import Any
import pytest
from aiogram.api.types import CallbackQuery, User
from aiogram.dispatcher.handler import CallbackQueryHandler
class TestCallbackQueryHandler:
@pytest.mark.asyncio
async def test_attributes_aliases(self):
event = CallbackQuery(
id="chosen",
from_user=User(id=42, is_bot=False, first_name="Test"),
data="test",
chat_instance="test",
)
class MyHandler(CallbackQueryHandler):
async def handle(self) -> Any:
assert self.event == event
assert self.from_user == self.event.from_user
assert self.callback_data == self.event.data
assert self.message == self.message
return True
assert await MyHandler(event)

View file

@ -0,0 +1,24 @@
from typing import Any
import pytest
from aiogram.api.types import CallbackQuery, ChosenInlineResult, User
from aiogram.dispatcher.handler import ChosenInlineResultHandler
class TestChosenInlineResultHandler:
@pytest.mark.asyncio
async def test_attributes_aliases(self):
event = ChosenInlineResult(
result_id="chosen",
from_user=User(id=42, is_bot=False, first_name="Test"),
query="test",
)
class MyHandler(ChosenInlineResultHandler):
async def handle(self) -> Any:
assert self.event == event
assert self.from_user == self.event.from_user
assert self.query == self.event.query
return True
assert await MyHandler(event)

View file

@ -0,0 +1,25 @@
from typing import Any
import pytest
from aiogram.api.types import CallbackQuery, InlineQuery, User
from aiogram.dispatcher.handler import InlineQueryHandler
class TestCallbackQueryHandler:
@pytest.mark.asyncio
async def test_attributes_aliases(self):
event = InlineQuery(
id="query",
from_user=User(id=42, is_bot=False, first_name="Test"),
query="query",
offset="0",
)
class MyHandler(InlineQueryHandler):
async def handle(self) -> Any:
assert self.event == event
assert self.from_user == self.event.from_user
assert self.query == self.event.query
return True
assert await MyHandler(event)

View file

@ -0,0 +1,34 @@
from typing import Any
import pytest
from aiogram.api.types import (
CallbackQuery,
InlineQuery,
Poll,
PollOption,
ShippingAddress,
ShippingQuery,
User,
)
from aiogram.dispatcher.handler import PollHandler
class TestShippingQueryHandler:
@pytest.mark.asyncio
async def test_attributes_aliases(self):
event = Poll(
id="query",
question="Q?",
options=[PollOption(text="A1", voter_count=1)],
is_closed=True,
)
class MyHandler(PollHandler):
async def handle(self) -> Any:
assert self.event == event
assert self.question == self.event.question
assert self.options == self.event.options
return True
assert await MyHandler(event)

View file

@ -0,0 +1,25 @@
from typing import Any
import pytest
from aiogram.api.types import PreCheckoutQuery, User
from aiogram.dispatcher.handler import PreCheckoutQueryHandler
class TestPreCheckoutQueryHandler:
@pytest.mark.asyncio
async def test_attributes_aliases(self):
event = PreCheckoutQuery(
id="query",
from_user=User(id=42, is_bot=False, first_name="Test"),
currency="BTC",
total_amount=7,
invoice_payload="payload",
)
class MyHandler(PreCheckoutQueryHandler):
async def handle(self) -> Any:
assert self.event == event
assert self.from_user == self.event.from_user
return True
assert await MyHandler(event)

View file

@ -0,0 +1,31 @@
from typing import Any
import pytest
from aiogram.api.types import CallbackQuery, InlineQuery, ShippingAddress, ShippingQuery, User
from aiogram.dispatcher.handler import ShippingQueryHandler
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)