fix string representation for MediaGroupFilter

This commit is contained in:
Vitaly312 2026-02-28 17:53:12 +03:00
parent a8bd68eb35
commit 7f21762fce
2 changed files with 15 additions and 3 deletions

View file

@ -47,6 +47,8 @@ class MediaGroupFilter(Filter):
self.max_media_count = max_media_count
def __str__(self) -> str:
if self.min_media_count == self.max_media_count:
return self._signature_to_string(count=self.min_media_count)
return self._signature_to_string(
min_media_count=self.min_media_count, max_media_count=self.max_media_count
)

View file

@ -1,7 +1,9 @@
from aiogram.filters.media_group import MediaGroupFilter, MIN_MEDIA_COUNT, DEFAULT_MAX_MEDIA_COUNT
import pytest
import datetime
from aiogram.types import Message, Chat
import pytest
from aiogram.filters.media_group import DEFAULT_MAX_MEDIA_COUNT, MIN_MEDIA_COUNT, MediaGroupFilter
from aiogram.types import Chat, Message
class TestMediaGroupFilter:
@ -59,3 +61,11 @@ class TestMediaGroupFilter:
assert bool(response) is result
if result:
assert response.get("media_count") == media_count
def test_str_count(self):
filter = MediaGroupFilter(5)
assert str(filter) == "MediaGroupFilter(count=5)"
def test_str_range(self):
filter = MediaGroupFilter(min_media_count=2, max_media_count=5)
assert str(filter) == "MediaGroupFilter(min_media_count=2, max_media_count=5)"