mirror of
https://github.com/neondatabase/neon.git
synced 2026-01-16 09:52:54 +00:00
fix linters' warnings
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
"""
|
||||
Run the regression tests on the cloud instance of Neon
|
||||
"""
|
||||
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
@@ -17,52 +18,56 @@ def test_cloud_regress(remote_pg: RemotePostgres):
|
||||
"""
|
||||
Run the regression tests
|
||||
"""
|
||||
pg_version = re.search(r"\-pg(\d+)\]", os.environ.get('PYTEST_CURRENT_TEST')).group(1)
|
||||
pg_version = re.search(r"\-pg(\d+)\]", os.environ.get("PYTEST_CURRENT_TEST")).group(1)
|
||||
conn = psycopg2.connect(remote_pg.connstr())
|
||||
cur = conn.cursor()
|
||||
cur.execute("SELECT COUNT(*) FROM pg_extension WHERE extname = 'regress_so'")
|
||||
num_ext = cur.fetchone()[0]
|
||||
assert int(num_ext) < 2
|
||||
if num_ext == 1:
|
||||
log.info('The extension is found')
|
||||
log.info("The extension is found")
|
||||
else:
|
||||
log.info('Creating the extension')
|
||||
cur.execute('CREATE EXTENSION regress_so')
|
||||
log.info("Creating the extension")
|
||||
cur.execute("CREATE EXTENSION regress_so")
|
||||
conn.commit()
|
||||
|
||||
log.info('Creating a C function to check availability of regress.so')
|
||||
cur.execute("CREATE FUNCTION get_columns_length(oid[]) "
|
||||
"RETURNS int AS 'regress.so' LANGUAGE C STRICT STABLE PARALLEL SAFE;")
|
||||
log.info("Creating a C function to check availability of regress.so")
|
||||
cur.execute(
|
||||
"CREATE FUNCTION get_columns_length(oid[]) "
|
||||
"RETURNS int AS 'regress.so' LANGUAGE C STRICT STABLE PARALLEL SAFE;"
|
||||
)
|
||||
conn.rollback()
|
||||
neondir = os.path.abspath(os.path.join(os.path.dirname(os.path.relpath(__file__)), '../../'))
|
||||
runpath = f'{neondir}/vendor/postgres-v{pg_version}/src/test/regress'
|
||||
artpath = '/tmp/neon'
|
||||
prefix = f'{artpath}/pg_install/v{pg_version}'
|
||||
binpath = f'{prefix}/bin'
|
||||
regress_bin = f'{prefix}/lib/postgresql/pgxs/src/test/regress/pg_regress'
|
||||
neondir = os.path.abspath(os.path.join(os.path.dirname(os.path.relpath(__file__)), "../../"))
|
||||
runpath = f"{neondir}/vendor/postgres-v{pg_version}/src/test/regress"
|
||||
artpath = "/tmp/neon"
|
||||
prefix = f"{artpath}/pg_install/v{pg_version}"
|
||||
binpath = f"{prefix}/bin"
|
||||
regress_bin = f"{prefix}/lib/postgresql/pgxs/src/test/regress/pg_regress"
|
||||
|
||||
env_vars = {
|
||||
'PGHOST': remote_pg.default_options['host'],
|
||||
'PGPORT': str(remote_pg.default_options['port'] if 'port' in remote_pg.default_options else 5432),
|
||||
'PGUSER': remote_pg.default_options['user'],
|
||||
'PGPASSWORD': remote_pg.default_options['password'],
|
||||
'PGDATABASE': remote_pg.default_options['dbname']
|
||||
"PGHOST": remote_pg.default_options["host"],
|
||||
"PGPORT": str(
|
||||
remote_pg.default_options["port"] if "port" in remote_pg.default_options else 5432
|
||||
),
|
||||
"PGUSER": remote_pg.default_options["user"],
|
||||
"PGPASSWORD": remote_pg.default_options["password"],
|
||||
"PGDATABASE": remote_pg.default_options["dbname"],
|
||||
}
|
||||
regress_cmd = [
|
||||
regress_bin,
|
||||
'--inputdir=.',
|
||||
"--inputdir=.",
|
||||
f"--bindir={binpath}",
|
||||
"--dlpath=/usr/local/lib",
|
||||
"--max-concurrent-tests=20",
|
||||
"--schedule=./parallel_schedule",
|
||||
"--max-connections=5"
|
||||
"--max-connections=5",
|
||||
]
|
||||
try:
|
||||
remote_pg.pg_bin.run(regress_cmd, env=env_vars, cwd=runpath)
|
||||
except subprocess.CalledProcessError as e:
|
||||
log.error('Error(s) occurred while running the regression tests')
|
||||
with open(f'{runpath}/regression.out', 'r') as f:
|
||||
log.error("Error(s) occurred while running the regression tests")
|
||||
with open(f"{runpath}/regression.out", "r") as f:
|
||||
print(f.read())
|
||||
with open(f'{runpath}/regression.diffs', 'r') as f:
|
||||
with open(f"{runpath}/regression.diffs", "r") as f:
|
||||
print(f.read())
|
||||
raise e
|
||||
|
||||
Reference in New Issue
Block a user