def assert_conn_param(getter, env_var_name, env_var_value, expected_param_value=None): conn_data = PostgresConnectionData() default_value = getter(conn_data) conn_data.read_env(env={env_var_name: env_var_value}) if expected_param_value: assert getter(conn_data) == expected_param_value else: assert getter(conn_data) == default_value
def with_timescale(): pg8000.paramstyle = "qmark" t = PostgresConnectionData() t.read_env() pg_conn = pg8000.connect(host=t.host, port=t.port, database=t.db_name, user=t.db_user, password=t.db_pass) pg_conn.autocommit = True pg_cursor = pg_conn.cursor() yield OriginalDataScenarios(postgres_translator_instance, pg_cursor) pg_cursor.close() pg_conn.close()
def with_pg8000(): pg8000.paramstyle = "qmark" t = PostgresConnectionData() t.read_env() pg_conn = pg8000.connect(host=t.host, port=t.port, database=t.db_name, user=t.db_user, password=t.db_pass) pg_conn.autocommit = True pg_cursor = pg_conn.cursor() yield (pg_conn, pg_cursor) pg_cursor.close() pg_conn.close()
def db_con_factory(t: DbType) -> Any: if t is DbType.CRATE: r = EnvReader() host = r.read(StrVar('CRATE_HOST', 'localhost')) port = r.read(IntVar('CRATE_PORT', 4200)) return client.connect([f"{host}:{port}"], error_trace=True) if t is DbType.TIMESCALE: cfg = PostgresConnectionData() cfg.read_env() pg8000.paramstyle = "qmark" cx = pg8000.connect(host=cfg.host, port=cfg.port, database=cfg.db_name, user=cfg.db_user, password=cfg.db_pass) cx.autocommit = True return cx return None