|
11 | 11 | from tests.integration.conftest import Secret |
12 | 12 |
|
13 | 13 |
|
14 | | -@fixture(params=["remote", "core"]) |
| 14 | +@fixture |
15 | 15 | async def connection( |
16 | | - engine_name: str, |
17 | | - database_name: str, |
18 | | - auth: Auth, |
19 | | - core_auth: Auth, |
20 | | - account_name: str, |
21 | | - api_endpoint: str, |
22 | | - core_url: str, |
23 | | - request: Any, |
| 16 | + connection_factory: Callable[..., Connection], |
24 | 17 | ) -> Connection: |
25 | | - if request.param == "core": |
26 | | - kwargs = { |
27 | | - "database": "firebolt", |
28 | | - "auth": core_auth, |
29 | | - "url": core_url, |
30 | | - } |
31 | | - else: |
32 | | - kwargs = { |
33 | | - "engine_name": engine_name, |
34 | | - "database": database_name, |
35 | | - "auth": auth, |
36 | | - "account_name": account_name, |
37 | | - "api_endpoint": api_endpoint, |
38 | | - } |
39 | | - async with await connect( |
40 | | - **kwargs, |
41 | | - ) as connection: |
| 18 | + async with await connection_factory() as connection: |
42 | 19 | yield connection |
43 | 20 |
|
44 | 21 |
|
45 | | -@fixture |
| 22 | +@fixture(params=["remote", "core"]) |
46 | 23 | async def connection_factory( |
47 | 24 | engine_name: str, |
48 | 25 | database_name: str, |
49 | 26 | auth: Auth, |
| 27 | + core_auth: Auth, |
50 | 28 | account_name: str, |
51 | 29 | api_endpoint: str, |
| 30 | + core_url: str, |
| 31 | + request: Any, |
52 | 32 | ) -> Callable[..., Connection]: |
53 | 33 | async def factory(**kwargs: Any) -> Connection: |
54 | | - return await connect( |
55 | | - engine_name=engine_name, |
56 | | - database=database_name, |
57 | | - auth=auth, |
58 | | - account_name=account_name, |
59 | | - api_endpoint=api_endpoint, |
60 | | - **kwargs, |
61 | | - ) |
| 34 | + if request.param == "core": |
| 35 | + base_kwargs = { |
| 36 | + "database": "firebolt", |
| 37 | + "auth": core_auth, |
| 38 | + "url": core_url, |
| 39 | + } |
| 40 | + else: |
| 41 | + base_kwargs = { |
| 42 | + "engine_name": engine_name, |
| 43 | + "database": database_name, |
| 44 | + "auth": auth, |
| 45 | + "account_name": account_name, |
| 46 | + "api_endpoint": api_endpoint, |
| 47 | + } |
| 48 | + return await connect(**base_kwargs, **kwargs) |
62 | 49 |
|
63 | 50 | return factory |
64 | 51 |
|
|
0 commit comments