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

This commit is contained in:
Alex Root Junior 2021-07-26 21:23:05 +03:00
commit 259e4d000e
8 changed files with 98 additions and 51 deletions

View file

@ -0,0 +1,24 @@
import pytest
from aiogram.methods import BanChatMember, Request
from tests.mocked_bot import MockedBot
class TestKickChatMember:
@pytest.mark.asyncio
async def test_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(BanChatMember, ok=True, result=True)
response: bool = await BanChatMember(chat_id=-42, user_id=42)
request: Request = bot.get_request()
assert request.method == "banChatMember"
assert response == prepare_result.result
@pytest.mark.asyncio
async def test_bot_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(BanChatMember, ok=True, result=True)
response: bool = await bot.ban_chat_member(chat_id=-42, user_id=42)
request: Request = bot.get_request()
assert request.method == "banChatMember"
assert response == prepare_result.result

View file

@ -0,0 +1,24 @@
import pytest
from aiogram.methods import BanChatMember, DeleteMyCommands, Request
from tests.mocked_bot import MockedBot
class TestKickChatMember:
@pytest.mark.asyncio
async def test_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(DeleteMyCommands, ok=True, result=True)
response: bool = await DeleteMyCommands()
request: Request = bot.get_request()
assert request.method == "deleteMyCommands"
assert response == prepare_result.result
@pytest.mark.asyncio
async def test_bot_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(DeleteMyCommands, ok=True, result=True)
response: bool = await bot.delete_my_commands()
request: Request = bot.get_request()
assert request.method == "deleteMyCommands"
assert response == prepare_result.result

View file

@ -3,7 +3,7 @@ from typing import List
import pytest import pytest
from aiogram.methods import GetChatAdministrators, Request from aiogram.methods import GetChatAdministrators, Request
from aiogram.types import ChatMember, User from aiogram.types import ChatMember, ChatMemberOwner, User
from tests.mocked_bot import MockedBot from tests.mocked_bot import MockedBot
@ -14,7 +14,9 @@ class TestGetChatAdministrators:
GetChatAdministrators, GetChatAdministrators,
ok=True, ok=True,
result=[ result=[
ChatMember(user=User(id=42, is_bot=False, first_name="User"), status="creator") ChatMemberOwner(
user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False
)
], ],
) )
@ -29,7 +31,9 @@ class TestGetChatAdministrators:
GetChatAdministrators, GetChatAdministrators,
ok=True, ok=True,
result=[ result=[
ChatMember(user=User(id=42, is_bot=False, first_name="User"), status="creator") ChatMemberOwner(
user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False
)
], ],
) )
response: List[ChatMember] = await bot.get_chat_administrators(chat_id=-42) response: List[ChatMember] = await bot.get_chat_administrators(chat_id=-42)

View file

@ -1,7 +1,7 @@
import pytest import pytest
from aiogram.methods import GetChatMember, Request from aiogram.methods import GetChatMember, Request
from aiogram.types import ChatMember, User from aiogram.types import ChatMember, ChatMemberOwner, User
from tests.mocked_bot import MockedBot from tests.mocked_bot import MockedBot
@ -11,7 +11,9 @@ class TestGetChatMember:
prepare_result = bot.add_result_for( prepare_result = bot.add_result_for(
GetChatMember, GetChatMember,
ok=True, ok=True,
result=ChatMember(user=User(id=42, is_bot=False, first_name="User"), status="creator"), result=ChatMemberOwner(
user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False
),
) )
response: ChatMember = await GetChatMember(chat_id=-42, user_id=42) response: ChatMember = await GetChatMember(chat_id=-42, user_id=42)
@ -24,7 +26,9 @@ class TestGetChatMember:
prepare_result = bot.add_result_for( prepare_result = bot.add_result_for(
GetChatMember, GetChatMember,
ok=True, ok=True,
result=ChatMember(user=User(id=42, is_bot=False, first_name="User"), status="creator"), result=ChatMemberOwner(
user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False
),
) )
response: ChatMember = await bot.get_chat_member(chat_id=-42, user_id=42) response: ChatMember = await bot.get_chat_member(chat_id=-42, user_id=42)

View file

@ -0,0 +1,24 @@
import pytest
from aiogram.methods import GetChatMemberCount, Request
from tests.mocked_bot import MockedBot
class TestGetChatMembersCount:
@pytest.mark.asyncio
async def test_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(GetChatMemberCount, ok=True, result=42)
response: int = await GetChatMemberCount(chat_id=-42)
request: Request = bot.get_request()
assert request.method == "getChatMemberCount"
assert response == prepare_result.result
@pytest.mark.asyncio
async def test_bot_method(self, bot: MockedBot):
prepare_result = bot.add_result_for(GetChatMemberCount, ok=True, result=42)
response: int = await bot.get_chat_member_count(chat_id=-42)
request: Request = bot.get_request()
assert request.method == "getChatMemberCount"
assert response == prepare_result.result

View file

@ -1,29 +0,0 @@
import pytest
from aiogram.types import ChatMember, User
user = User(id=42, is_bot=False, first_name="User", last_name=None)
class TestChatMember:
@pytest.mark.parametrize(
"status,result", [["administrator", True], ["creator", True], ["member", False]]
)
def test_is_chat_admin(self, status: str, result: bool):
chat_member = ChatMember(user=user, status=status)
assert chat_member.is_chat_admin == result
@pytest.mark.parametrize(
"status,result",
[
["administrator", True],
["creator", True],
["member", True],
["restricted", True],
["kicked", False],
["left", False],
],
)
def test_is_chat_member(self, status: str, result: bool):
chat_member = ChatMember(user=user, status=status)
assert chat_member.is_chat_member == result

View file

@ -14,7 +14,7 @@ from aiogram.methods import GetMe, GetUpdates, SendMessage
from aiogram.types import ( from aiogram.types import (
CallbackQuery, CallbackQuery,
Chat, Chat,
ChatMember, ChatMemberMember,
ChatMemberUpdated, ChatMemberUpdated,
ChosenInlineResult, ChosenInlineResult,
InlineQuery, InlineQuery,
@ -375,11 +375,11 @@ class TestDispatcher:
chat=Chat(id=42, type="private"), chat=Chat(id=42, type="private"),
from_user=User(id=42, is_bot=False, first_name="Test"), from_user=User(id=42, is_bot=False, first_name="Test"),
date=datetime.datetime.now(), date=datetime.datetime.now(),
old_chat_member=ChatMember( old_chat_member=ChatMemberMember(
user=User(id=42, is_bot=False, first_name="Test"), status="restricted" user=User(id=42, is_bot=False, first_name="Test")
), ),
new_chat_member=ChatMember( new_chat_member=ChatMemberMember(
user=User(id=42, is_bot=False, first_name="Test"), status="restricted" user=User(id=42, is_bot=False, first_name="Test")
), ),
), ),
), ),
@ -394,11 +394,11 @@ class TestDispatcher:
chat=Chat(id=42, type="private"), chat=Chat(id=42, type="private"),
from_user=User(id=42, is_bot=False, first_name="Test"), from_user=User(id=42, is_bot=False, first_name="Test"),
date=datetime.datetime.now(), date=datetime.datetime.now(),
old_chat_member=ChatMember( old_chat_member=ChatMemberMember(
user=User(id=42, is_bot=False, first_name="Test"), status="restricted" user=User(id=42, is_bot=False, first_name="Test")
), ),
new_chat_member=ChatMember( new_chat_member=ChatMemberMember(
user=User(id=42, is_bot=False, first_name="Test"), status="restricted" user=User(id=42, is_bot=False, first_name="Test")
), ),
), ),
), ),

View file

@ -4,7 +4,7 @@ from typing import Any
import pytest import pytest
from aiogram.dispatcher.handler.chat_member import ChatMemberHandler from aiogram.dispatcher.handler.chat_member import ChatMemberHandler
from aiogram.types import Chat, ChatMember, ChatMemberUpdated, User from aiogram.types import Chat, ChatMemberMember, ChatMemberUpdated, User
class TestChatMemberUpdated: class TestChatMemberUpdated:
@ -14,12 +14,8 @@ class TestChatMemberUpdated:
chat=Chat(id=42, type="private"), chat=Chat(id=42, type="private"),
from_user=User(id=42, is_bot=False, first_name="Test"), from_user=User(id=42, is_bot=False, first_name="Test"),
date=datetime.datetime.now(), date=datetime.datetime.now(),
old_chat_member=ChatMember( old_chat_member=ChatMemberMember(user=User(id=42, is_bot=False, first_name="Test")),
user=User(id=42, is_bot=False, first_name="Test"), status="restricted" new_chat_member=ChatMemberMember(user=User(id=42, is_bot=False, first_name="Test")),
),
new_chat_member=ChatMember(
user=User(id=42, is_bot=False, first_name="Test"), status="restricted"
),
) )
class MyHandler(ChatMemberHandler): class MyHandler(ChatMemberHandler):