From 0c8227679cd3e227d5cb019b6eb5c0e7c291b5c3 Mon Sep 17 00:00:00 2001 From: mprahl Date: Mon, 6 Jan 2020 10:32:07 -0500 Subject: [PATCH] Clean up build logs after each test so that it doesn't affect tests run later Tests in test_build.py started to affect tests in test_content_generator.py after test_content_generator.py was moved, which caused those tests to execute after test_build.py --- tests/conftest.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/conftest.py b/tests/conftest.py index f5b9b2e5..0885854c 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -5,6 +5,7 @@ import os import pytest from datetime import datetime +import mock import module_build_service from module_build_service.builder.utils import get_rpm_release @@ -379,3 +380,19 @@ def reuse_shared_userspace_init_data(): db_session.add(module_build) db_session.commit() + + +@pytest.fixture(autouse=True) +def cleanup_build_logs(request): + """ + Clean up any build logs remaining after each test so that it doesn't affect tests run later. + """ + + def _cleanup_build_logs(): + build_ids = list(module_build_service.build_logs.handlers.keys()) + for build_id in build_ids: + mock_build = mock.Mock() + mock_build.id = build_id + module_build_service.build_logs.stop(mock_build) + + request.addfinalizer(_cleanup_build_logs)