# Path: virtool/config/cls.py
# class Config:
#     db_connection_string: str
#     db_name: str
#     dev: bool
#     postgres_connection_string: str
#     redis_connection_string: str
#     b2c_client_id: str = None
#     b2c_client_secret: str = None
#     b2c_tenant: str = None
#     b2c_user_flow: str = None
#     base_url: str = ""
#     data_path: Path = None
#     fake: bool = False
#     fake_path: Path = None
#     force_version: str = None
#     host: str = None
#     no_check_files: bool = False
#     no_check_db: bool = False
#     no_fetching: bool = False
#     no_sentry: bool = False
#     port: int = 9950
#     proxy: str = None
#     use_b2c: bool = False
#     verbose: bool = False
#     sentry_dsn: str = "https://9a2f8d1a3f7a431e873207a70ef3d44d:ca6db07b82934005beceae93560a6794@sentry.io/220532"


import json
import aiohttp
import pytest
import virtool.app
import virtool.jobs.main
from typing import Optional
from aiohttp.web_routedef import RouteTableDef
from virtool.config.cls import Config
from virtool.utils import hash_key
                    "permissions": user_document["permissions"],
                    "token": hash_key(session_token),
                    "user_agent": "Python/3.6 aiohttp/3.4.4",
                    "user": {"id": "test"},
                }
            )

            cookies = {"session_id": "foobar", "session_token": "bar"}

        elif use_b2c:
            cookies = {"id_token": "foobar"}

        else:
            cookies = {"session_id": "dne"}

        test_client = await aiohttp_client(
            app, auth=auth, cookies=cookies, auto_decompress=False
        )

        return VirtoolTestClient(test_client)

    return func


@pytest.fixture
def spawn_job_client(
    dbi,
    aiohttp_client,
    test_db_connection_string,
    redis_connection_string,

# Path: virtool/config/cls.py
# class Config:
#     db_connection_string: str
#     db_name: str
#     dev: bool
#     postgres_connection_string: str
#     redis_connection_string: str
#     b2c_client_id: str = None
#     b2c_client_secret: str = None
#     b2c_tenant: str = None
#     b2c_user_flow: str = None
#     base_url: str = ""
#     data_path: Path = None
#     fake: bool = False
#     fake_path: Path = None
#     force_version: str = None
#     host: str = None
#     no_check_files: bool = False
#     no_check_db: bool = False
#     no_fetching: bool = False
#     no_sentry: bool = False
#     port: int = 9950
#     proxy: str = None
#     use_b2c: bool = False
#     verbose: bool = False
#     sentry_dsn: str = "https://9a2f8d1a3f7a431e873207a70ef3d44d:ca6db07b82934005beceae93560a6794@sentry.io/220532"


# Path: tests/fixtures/client.py
import json
import aiohttp
import pytest
import virtool.app
import virtool.jobs.main
from typing import Optional
from aiohttp.web_routedef import RouteTableDef
from virtool.config.cls import Config
from virtool.utils import hash_key

                    "permissions": user_document["permissions"],
                    "token": hash_key(session_token),
                    "user_agent": "Python/3.6 aiohttp/3.4.4",
                    "user": {"id": "test"},
                }
            )

            cookies = {"session_id": "foobar", "session_token": "bar"}

        elif use_b2c:
            cookies = {"id_token": "foobar"}

        else:
            cookies = {"session_id": "dne"}

        test_client = await aiohttp_client(
            app, auth=auth, cookies=cookies, auto_decompress=False
        )

        return VirtoolTestClient(test_client)

    return func


@pytest.fixture
def spawn_job_client(
    dbi,
    aiohttp_client,
    test_db_connection_string,
    redis_connection_string,

    pg_connection_string,