Page MenuHomeSoftware Heritage

D7170.id25983.diff
No OneTemporary

D7170.id25983.diff

diff --git a/swh/core/db/tests/data/cli/30-schema.sql b/swh/core/db/tests/data/cli/30-schema.sql
--- a/swh/core/db/tests/data/cli/30-schema.sql
+++ b/swh/core/db/tests/data/cli/30-schema.sql
@@ -1,5 +1,5 @@
-- schema version table which won't get truncated
-create table if not exists dbversion (
+create table dbversion (
version int primary key,
release timestamptz,
description text
diff --git a/swh/core/db/tests/test_cli.py b/swh/core/db/tests/test_cli.py
--- a/swh/core/db/tests/test_cli.py
+++ b/swh/core/db/tests/test_cli.py
@@ -10,7 +10,6 @@
from swh.core.cli.db import db as swhdb
from swh.core.db import BaseDb
-from swh.core.db.pytest_plugin import postgresql_fact
from swh.core.tests.test_cli import assert_section_contains
@@ -55,19 +54,13 @@
assert_section_contains(result.output, section, snippet)
-# We do not want the truncate behavior for those tests
-test_db = postgresql_fact(
- "postgresql_proc", dbname="clidb", no_truncate_tables={"dbversion", "origin"}
-)
-
-
@pytest.fixture
-def swh_db_cli(cli_runner, monkeypatch, test_db):
+def swh_db_cli(cli_runner, monkeypatch, postgresql):
"""This initializes a cli_runner and sets the correct environment variable expected by
the cli to run appropriately (when not specifying the --dbname flag)
"""
- db_params = test_db.get_dsn_parameters()
+ db_params = postgresql.get_dsn_parameters()
monkeypatch.setenv("PGHOST", db_params["host"])
monkeypatch.setenv("PGUSER", db_params["user"])
monkeypatch.setenv("PGPORT", db_params["port"])
@@ -87,13 +80,13 @@
return "postgresql://{user}@{host}:{port}/{dbname}".format(**params)
-def test_cli_swh_db_create_and_init_db(cli_runner, test_db, mock_package_sql):
+def test_cli_swh_db_create_and_init_db(cli_runner, postgresql, mock_package_sql):
"""Create a db then initializing it should be ok
"""
module_name = "test.cli"
- conninfo = craft_conninfo(test_db, "new-db")
+ conninfo = craft_conninfo(postgresql, "new-db")
# This creates the db and installs the necessary admin extensions
result = cli_runner.invoke(swhdb, ["create", module_name, "--dbname", conninfo])
assert result.exit_code == 0, f"Unexpected output: {result.output}"
@@ -112,13 +105,13 @@
def test_cli_swh_db_initialization_fail_without_creation_first(
- cli_runner, test_db, mock_package_sql
+ cli_runner, postgresql, mock_package_sql
):
"""Init command on an inexisting db cannot work
"""
module_name = "test.cli" # it's mocked here
- conninfo = craft_conninfo(test_db, "inexisting-db")
+ conninfo = craft_conninfo(postgresql, "inexisting-db")
result = cli_runner.invoke(swhdb, ["init", module_name, "--dbname", conninfo])
# Fails because we cannot connect to an inexisting db
@@ -126,7 +119,7 @@
def test_cli_swh_db_initialization_fail_without_extension(
- cli_runner, test_db, mock_package_sql
+ cli_runner, postgresql, mock_package_sql
):
"""Init command cannot work without privileged extension.
@@ -134,7 +127,7 @@
"""
module_name = "test.cli" # it's mocked here
- conninfo = craft_conninfo(test_db)
+ conninfo = craft_conninfo(postgresql)
result = cli_runner.invoke(swhdb, ["init", module_name, "--dbname", conninfo])
# Fails as the function `public.digest` is not installed, init-admin calls is needed
@@ -143,13 +136,13 @@
def test_cli_swh_db_initialization_works_with_flags(
- cli_runner, test_db, mock_package_sql
+ cli_runner, postgresql, mock_package_sql
):
"""Init commands with carefully crafted libpq conninfo works
"""
module_name = "test.cli" # it's mocked here
- conninfo = craft_conninfo(test_db)
+ conninfo = craft_conninfo(postgresql)
result = cli_runner.invoke(swhdb, ["init-admin", module_name, "--dbname", conninfo])
assert result.exit_code == 0, f"Unexpected output: {result.output}"
@@ -159,13 +152,13 @@
assert result.exit_code == 0, f"Unexpected output: {result.output}"
# the origin values in the scripts uses a hash function (which implementation wise
# uses a function from the pgcrypt extension, init-admin calls installs it)
- with BaseDb.connect(test_db.dsn).cursor() as cur:
+ with BaseDb.connect(postgresql.dsn).cursor() as cur:
cur.execute("select * from origin")
origins = cur.fetchall()
assert len(origins) == 1
-def test_cli_swh_db_initialization_with_env(swh_db_cli, mock_package_sql, test_db):
+def test_cli_swh_db_initialization_with_env(swh_db_cli, mock_package_sql, postgresql):
"""Init commands with standard environment variables works
"""
@@ -183,13 +176,13 @@
assert result.exit_code == 0, f"Unexpected output: {result.output}"
# the origin values in the scripts uses a hash function (which implementation wise
# uses a function from the pgcrypt extension, init-admin calls installs it)
- with BaseDb.connect(test_db.dsn).cursor() as cur:
+ with BaseDb.connect(postgresql.dsn).cursor() as cur:
cur.execute("select * from origin")
origins = cur.fetchall()
assert len(origins) == 1
-def test_cli_swh_db_initialization_idempotent(swh_db_cli, mock_package_sql, test_db):
+def test_cli_swh_db_initialization_idempotent(swh_db_cli, mock_package_sql, postgresql):
"""Multiple runs of the init commands are idempotent
"""
@@ -218,7 +211,7 @@
# the origin values in the scripts uses a hash function (which implementation wise
# uses a function from the pgcrypt extension, init-admin calls installs it)
- with BaseDb.connect(test_db.dsn).cursor() as cur:
+ with BaseDb.connect(postgresql.dsn).cursor() as cur:
cur.execute("select * from origin")
origins = cur.fetchall()
assert len(origins) == 1

File Metadata

Mime Type
text/plain
Expires
Thu, Jan 30, 1:12 PM (1 w, 12 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3220297

Event Timeline