From 769ae8124c3e49676672bf1435c57c1dcaeb3ecc Mon Sep 17 00:00:00 2001 From: evgfilim1 Date: Sat, 24 Jul 2021 17:02:19 +0500 Subject: [PATCH 1/3] Fix tests so they are able to run --- .../test_get_chat_administrators.py | 6 ++-- .../test_methods/test_get_chat_member.py | 6 ++-- tests/test_api/test_types/test_chat_member.py | 29 ------------------- tests/test_dispatcher/test_dispatcher.py | 18 ++++++------ .../test_handler/test_chat_member.py | 10 +++---- 5 files changed, 20 insertions(+), 49 deletions(-) delete mode 100644 tests/test_api/test_types/test_chat_member.py diff --git a/tests/test_api/test_methods/test_get_chat_administrators.py b/tests/test_api/test_methods/test_get_chat_administrators.py index 9309460b..b7326bab 100644 --- a/tests/test_api/test_methods/test_get_chat_administrators.py +++ b/tests/test_api/test_methods/test_get_chat_administrators.py @@ -3,7 +3,7 @@ from typing import List import pytest from aiogram.methods import GetChatAdministrators, Request -from aiogram.types import ChatMember, User +from aiogram.types import ChatMember, User, ChatMemberOwner from tests.mocked_bot import MockedBot @@ -14,7 +14,7 @@ class TestGetChatAdministrators: GetChatAdministrators, ok=True, 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 +29,7 @@ class TestGetChatAdministrators: GetChatAdministrators, ok=True, 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) diff --git a/tests/test_api/test_methods/test_get_chat_member.py b/tests/test_api/test_methods/test_get_chat_member.py index 111b06cd..abb67fe2 100644 --- a/tests/test_api/test_methods/test_get_chat_member.py +++ b/tests/test_api/test_methods/test_get_chat_member.py @@ -1,7 +1,7 @@ import pytest from aiogram.methods import GetChatMember, Request -from aiogram.types import ChatMember, User +from aiogram.types import ChatMember, User, ChatMemberOwner from tests.mocked_bot import MockedBot @@ -11,7 +11,7 @@ class TestGetChatMember: prepare_result = bot.add_result_for( GetChatMember, 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) @@ -24,7 +24,7 @@ class TestGetChatMember: prepare_result = bot.add_result_for( GetChatMember, 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) diff --git a/tests/test_api/test_types/test_chat_member.py b/tests/test_api/test_types/test_chat_member.py deleted file mode 100644 index e92c7203..00000000 --- a/tests/test_api/test_types/test_chat_member.py +++ /dev/null @@ -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 diff --git a/tests/test_dispatcher/test_dispatcher.py b/tests/test_dispatcher/test_dispatcher.py index 5f7a2f62..e03bdc4d 100644 --- a/tests/test_dispatcher/test_dispatcher.py +++ b/tests/test_dispatcher/test_dispatcher.py @@ -14,7 +14,7 @@ from aiogram.methods import GetMe, GetUpdates, SendMessage from aiogram.types import ( CallbackQuery, Chat, - ChatMember, + ChatMemberMember, ChatMemberUpdated, ChosenInlineResult, InlineQuery, @@ -375,11 +375,11 @@ class TestDispatcher: chat=Chat(id=42, type="private"), from_user=User(id=42, is_bot=False, first_name="Test"), date=datetime.datetime.now(), - old_chat_member=ChatMember( - user=User(id=42, is_bot=False, first_name="Test"), status="restricted" + old_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" + new_chat_member=ChatMemberMember( + user=User(id=42, is_bot=False, first_name="Test") ), ), ), @@ -394,11 +394,11 @@ class TestDispatcher: chat=Chat(id=42, type="private"), from_user=User(id=42, is_bot=False, first_name="Test"), date=datetime.datetime.now(), - old_chat_member=ChatMember( - user=User(id=42, is_bot=False, first_name="Test"), status="restricted" + old_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" + new_chat_member=ChatMemberMember( + user=User(id=42, is_bot=False, first_name="Test") ), ), ), diff --git a/tests/test_dispatcher/test_handler/test_chat_member.py b/tests/test_dispatcher/test_handler/test_chat_member.py index baf1ee85..c536a57c 100644 --- a/tests/test_dispatcher/test_handler/test_chat_member.py +++ b/tests/test_dispatcher/test_handler/test_chat_member.py @@ -4,7 +4,7 @@ from typing import Any import pytest 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: @@ -14,11 +14,11 @@ class TestChatMemberUpdated: chat=Chat(id=42, type="private"), from_user=User(id=42, is_bot=False, first_name="Test"), date=datetime.datetime.now(), - old_chat_member=ChatMember( - user=User(id=42, is_bot=False, first_name="Test"), status="restricted" + old_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" + new_chat_member=ChatMemberMember( + user=User(id=42, is_bot=False, first_name="Test") ), ) From 16eac753321241f56b46fd08aba42a0afb7191ca Mon Sep 17 00:00:00 2001 From: evgfilim1 Date: Sat, 24 Jul 2021 17:04:55 +0500 Subject: [PATCH 2/3] Test new and renamed API methods --- .../test_methods/test_ban_chat_member.py | 24 +++++++++++++++++++ .../test_methods/test_delete_my_commands.py | 24 +++++++++++++++++++ .../test_get_chat_member_count.py | 24 +++++++++++++++++++ 3 files changed, 72 insertions(+) create mode 100644 tests/test_api/test_methods/test_ban_chat_member.py create mode 100644 tests/test_api/test_methods/test_delete_my_commands.py create mode 100644 tests/test_api/test_methods/test_get_chat_member_count.py diff --git a/tests/test_api/test_methods/test_ban_chat_member.py b/tests/test_api/test_methods/test_ban_chat_member.py new file mode 100644 index 00000000..bdbf1c41 --- /dev/null +++ b/tests/test_api/test_methods/test_ban_chat_member.py @@ -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 diff --git a/tests/test_api/test_methods/test_delete_my_commands.py b/tests/test_api/test_methods/test_delete_my_commands.py new file mode 100644 index 00000000..a52ff172 --- /dev/null +++ b/tests/test_api/test_methods/test_delete_my_commands.py @@ -0,0 +1,24 @@ +import pytest + +from aiogram.methods import BanChatMember, Request, DeleteMyCommands +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 diff --git a/tests/test_api/test_methods/test_get_chat_member_count.py b/tests/test_api/test_methods/test_get_chat_member_count.py new file mode 100644 index 00000000..a3ecec72 --- /dev/null +++ b/tests/test_api/test_methods/test_get_chat_member_count.py @@ -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 From d06241d94505dc1397a11607a2fc0e4bece4c7c7 Mon Sep 17 00:00:00 2001 From: evgfilim1 Date: Sun, 25 Jul 2021 02:51:19 +0500 Subject: [PATCH 3/3] Reformat files --- tests/test_api/test_methods/test_delete_my_commands.py | 2 +- .../test_methods/test_get_chat_administrators.py | 10 +++++++--- tests/test_api/test_methods/test_get_chat_member.py | 10 +++++++--- tests/test_dispatcher/test_handler/test_chat_member.py | 8 ++------ 4 files changed, 17 insertions(+), 13 deletions(-) diff --git a/tests/test_api/test_methods/test_delete_my_commands.py b/tests/test_api/test_methods/test_delete_my_commands.py index a52ff172..a39d080b 100644 --- a/tests/test_api/test_methods/test_delete_my_commands.py +++ b/tests/test_api/test_methods/test_delete_my_commands.py @@ -1,6 +1,6 @@ import pytest -from aiogram.methods import BanChatMember, Request, DeleteMyCommands +from aiogram.methods import BanChatMember, DeleteMyCommands, Request from tests.mocked_bot import MockedBot diff --git a/tests/test_api/test_methods/test_get_chat_administrators.py b/tests/test_api/test_methods/test_get_chat_administrators.py index b7326bab..f6de6db5 100644 --- a/tests/test_api/test_methods/test_get_chat_administrators.py +++ b/tests/test_api/test_methods/test_get_chat_administrators.py @@ -3,7 +3,7 @@ from typing import List import pytest from aiogram.methods import GetChatAdministrators, Request -from aiogram.types import ChatMember, User, ChatMemberOwner +from aiogram.types import ChatMember, ChatMemberOwner, User from tests.mocked_bot import MockedBot @@ -14,7 +14,9 @@ class TestGetChatAdministrators: GetChatAdministrators, ok=True, result=[ - ChatMemberOwner(user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False) + ChatMemberOwner( + user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False + ) ], ) @@ -29,7 +31,9 @@ class TestGetChatAdministrators: GetChatAdministrators, ok=True, result=[ - ChatMemberOwner(user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False) + 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) diff --git a/tests/test_api/test_methods/test_get_chat_member.py b/tests/test_api/test_methods/test_get_chat_member.py index abb67fe2..4018433e 100644 --- a/tests/test_api/test_methods/test_get_chat_member.py +++ b/tests/test_api/test_methods/test_get_chat_member.py @@ -1,7 +1,7 @@ import pytest from aiogram.methods import GetChatMember, Request -from aiogram.types import ChatMember, User, ChatMemberOwner +from aiogram.types import ChatMember, ChatMemberOwner, User from tests.mocked_bot import MockedBot @@ -11,7 +11,9 @@ class TestGetChatMember: prepare_result = bot.add_result_for( GetChatMember, ok=True, - result=ChatMemberOwner(user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False), + 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) @@ -24,7 +26,9 @@ class TestGetChatMember: prepare_result = bot.add_result_for( GetChatMember, ok=True, - result=ChatMemberOwner(user=User(id=42, is_bot=False, first_name="User"), is_anonymous=False), + 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) diff --git a/tests/test_dispatcher/test_handler/test_chat_member.py b/tests/test_dispatcher/test_handler/test_chat_member.py index c536a57c..8b4ffe2c 100644 --- a/tests/test_dispatcher/test_handler/test_chat_member.py +++ b/tests/test_dispatcher/test_handler/test_chat_member.py @@ -14,12 +14,8 @@ class TestChatMemberUpdated: chat=Chat(id=42, type="private"), from_user=User(id=42, is_bot=False, first_name="Test"), date=datetime.datetime.now(), - old_chat_member=ChatMemberMember( - user=User(id=42, is_bot=False, first_name="Test") - ), - new_chat_member=ChatMemberMember( - user=User(id=42, is_bot=False, first_name="Test") - ), + old_chat_member=ChatMemberMember(user=User(id=42, is_bot=False, first_name="Test")), + new_chat_member=ChatMemberMember(user=User(id=42, is_bot=False, first_name="Test")), ) class MyHandler(ChatMemberHandler):