Added tests, fixed ForceReply

This commit is contained in:
Alex Root Junior 2022-06-25 17:52:46 +03:00
parent ff9321b0be
commit 03d56b1f84
No known key found for this signature in database
GPG key ID: 074C1D455EBEA4AC
2 changed files with 46 additions and 1 deletions

View file

@ -2,6 +2,8 @@ from __future__ import annotations
from typing import Optional
from pydantic import Field
from .base import MutableTelegramObject
@ -19,7 +21,7 @@ class ForceReply(MutableTelegramObject):
Source: https://core.telegram.org/bots/api#forcereply
"""
force_reply: bool
force_reply: bool = Field(True, const=True)
"""Shows reply interface to the user, as if they manually selected the bot's message and tapped 'Reply'"""
input_field_placeholder: Optional[str] = None
"""*Optional*. The placeholder to be shown in the input field when the reply is active; 1-64 characters"""

View file

@ -0,0 +1,43 @@
import pytest
from aiogram.methods import CreateInvoiceLink, Request
from aiogram.types import LabeledPrice
from tests.mocked_bot import MockedBot
class TestCreateInvoiceLink:
@pytest.mark.asyncio
async def test_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(
CreateInvoiceLink, ok=True, result="https://t.me/invoice/example"
)
response: str = await CreateInvoiceLink(
title="test",
description="test",
payload="test",
provider_token="test",
currency="BTC",
prices=[LabeledPrice(label="Test", amount=1)],
)
request: Request = bot.get_request()
assert request.method == "createInvoiceLink"
assert response == prepare_result.result
@pytest.mark.asyncio
async def test_bot_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(
CreateInvoiceLink, ok=True, result="https://t.me/invoice/example"
)
response: str = await bot.create_invoice_link(
title="test",
description="test",
payload="test",
provider_token="test",
currency="BTC",
prices=[LabeledPrice(label="Test", amount=1)],
)
request: Request = bot.get_request()
assert request.method == "createInvoiceLink"
assert response == prepare_result.result