# Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import logging import pytest import aria from aria import logger @pytest.fixture(scope='session', autouse=True) def install_aria_extensions(): aria.install_aria_extensions() @pytest.fixture(autouse=True) def logging_handler_cleanup(request): """ Each time a test runs, the loggers do not clear. we need to manually clear them or we'd have logging overload. Since every type of logger (node/relationship/workflow) share the same name, we should clear the logger each test. This should not happen in real world use. :param request: :return: """ def clear_logging_handlers(): logging.getLogger(logger.TASK_LOGGER_NAME).handlers = [] request.addfinalizer(clear_logging_handlers) @pytest.fixture def mock_object(mocker): return mocker.MagicMock()