"""
Copyright (c) Contributors to the Open 3D Engine Project.
For complete copyright and license terms please see the LICENSE at the root of this distribution.

SPDX-License-Identifier: Apache-2.0 OR MIT

Pytest fixture for accessing an optional "--timeout" argument used for specifying
the timeout (in seconds) for any one AP Batch call.
If not specified, defaults to 35 minutes
"""

import pytest
import logging

logger = logging.getLogger(__name__)


@pytest.fixture(scope="session")
def timeout_option_fixture(request) -> int:
    """
    Fixture for accessing the command line argument "--ap_timeout"
    Defaults to 35 minutes
    """
    default_timeout = 35 * 60  # 35 minutes (2100 seconds)
    timeout = request.config.getoption("--ap_timeout")
    if timeout is not None:
        try:
            return int(timeout)
        except ValueError:
            # failed casting timeout to integer
            # fmt:off
            logger.error(f"Failed parsing --ap_timeout cmdline argument {timeout} to integer. "
                         f"Using default value of {default_timeout} seconds")
            # fmt:on
    return default_timeout

"""
Copyright (c) Contributors to the Open 3D Engine Project.
For complete copyright and license terms please see the LICENSE at the root of this distribution.

SPDX-License-Identifier: Apache-2.0 OR MIT

Pytest fixture for accessing an optional "--timeout" argument used for specifying
the timeout (in seconds) for any one AP Batch call.
If not specified, defaults to 35 minutes
"""

import pytest
import logging

logger = logging.getLogger(__name__)


@pytest.fixture(scope="session")
def timeout_option_fixture(request) -> int:
    """
    Fixture for accessing the command line argument "--ap_timeout"
    Defaults to 35 minutes
    """
    default_timeout = 35 * 60  # 35 minutes (2100 seconds)
    timeout = request.config.getoption("--ap_timeout")
    if timeout is not None:
        try:
            return int(timeout)
        except ValueError:
            # failed casting timeout to integer
            # fmt:off
            logger.error(f"Failed parsing --ap_timeout cmdline argument {timeout} to integer. "
                         f"Using default value of {default_timeout} seconds")
            # fmt:on
    return default_timeout

Copyright (c) Contributors to the Open 3D Engine Project. For complete copyright and license terms please see the LICENSE at the root of this distribution.  SPDX-License-Identifier: Apache-2.0 OR MIT  Pytest fixture for accessing an optional "--timeout" argument used for specifying the timeout (in seconds) for any one AP Batch call. If not specified, defaults to 35 minutes Fixture for accessing the command line argument "--ap_timeout"     Defaults to 35 minutes # 35 minutes (2100 seconds) # failed casting timeout to integer # fmt:off # fmt:on