#1320 Update pytest configuration and tests cleanup

This commit modifies the pytest's configuration file, `pyproject.toml`, to remove filterwarnings settings. It also makes changes in various test files; the Redis isolation test is now using the provided `redis_storage` fixture instead of setting up its own connection, pytest.mark.filterwarnings is no longer used in `test_isolation.py` and `test_aiohttp_session.py` properly closes off sessions.
This commit is contained in:
JRoot Junior 2023-11-16 01:47:23 +02:00
parent 9a2a72fe97
commit cda4a635b1
No known key found for this signature in database
GPG key ID: 738964250D5FF6E2
4 changed files with 9 additions and 20 deletions

View file

@ -237,10 +237,9 @@ asyncio_mode = "auto"
testpaths = [
"tests",
]
filterwarnings = [
"error",
"ignore::pytest.PytestUnraisableExceptionWarning",
]
#filterwarnings = [
# "error",
#]
[tool.coverage.run]
branch = false

View file

@ -38,7 +38,7 @@ def pytest_collection_modifyitems(config, items):
raise UsageError(f"Invalid redis URI {redis_uri!r}: {e}")
@pytest.fixture(scope="session")
@pytest.fixture()
def redis_server(request):
redis_uri = request.config.getoption("--redis")
return redis_uri
@ -73,20 +73,9 @@ async def memory_storage():
@pytest.fixture()
@pytest.mark.redis
async def redis_isolation(redis_server):
if not redis_server:
pytest.skip("Redis is not available here")
isolation = RedisEventIsolation.from_url(redis_server)
try:
await isolation.redis.info()
except ConnectionError as e:
pytest.skip(str(e))
try:
yield isolation
finally:
conn = await isolation.redis
await conn.flushdb()
await isolation.close()
async def redis_isolation(redis_storage):
isolation = redis_storage.create_isolation()
return isolation
@pytest.fixture()

View file

@ -96,6 +96,8 @@ class TestAiohttpSession:
await session.close()
mocked_close.assert_called_once()
await session.close()
def test_build_form_data_with_data_only(self, bot: MockedBot):
class TestMethod(TelegramMethod[bool]):
__api_method__ = "test"

View file

@ -18,7 +18,6 @@ def create_storage_key(bot: MockedBot):
],
)
class TestIsolations:
@pytest.mark.filterwarnings("ignore::ResourceWarning")
async def test_lock(
self,
isolation: BaseEventIsolation,