File: conftest.py

package info (click to toggle)
harlequin-postgres 1.2.0-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 324 kB
  • sloc: python: 1,651; makefile: 24
file content (40 lines) | stat: -rw-r--r-- 1,024 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
from __future__ import annotations

import sys
from typing import Generator

import psycopg
import pytest
from harlequin_postgres.adapter import (
    HarlequinPostgresAdapter,
    HarlequinPostgresConnection,
)

if sys.version_info < (3, 10):
    pass
else:
    pass

TEST_DB_CONN = "postgresql://postgres:for-testing@localhost:5432"


@pytest.fixture
def connection() -> Generator[HarlequinPostgresConnection, None, None]:
    pgconn = psycopg.connect(conninfo=TEST_DB_CONN, dbname="postgres")
    pgconn.autocommit = True
    cur = pgconn.cursor()
    cur.execute("drop database if exists test;")
    cur.execute("create database test;")
    cur.close()
    pgconn.close()
    conn = HarlequinPostgresAdapter(
        conn_str=(f"{TEST_DB_CONN}",), dbname="test"
    ).connect()
    yield conn
    conn.close()
    pgconn = psycopg.connect(conninfo=TEST_DB_CONN, dbname="postgres")
    pgconn.autocommit = True
    cur = pgconn.cursor()
    cur.execute("drop database if exists test;")
    cur.close()
    pgconn.close()