Commit a1a476fa authored by Georges Racinet's avatar Georges Racinet 🦑
Browse files

Introducing `sql` test marker

Consistent with the Heptapod classes implementing
the `psql` method, tests with this marker will be
skipped for remote and unspecified source instances.
parent 484c7a3cf9c5
...@@ -137,6 +137,10 @@ def pytest_configure(config): ...@@ -137,6 +137,10 @@ def pytest_configure(config):
"services: mark test as needing services " "services: mark test as needing services "
"management " "management "
) )
config.addinivalue_line("markers",
"sql: mark test as needing to "
"perform SQL statements "
)
# if we regroup the tests with separate fixtures for the two # if we regroup the tests with separate fixtures for the two
# modes, these two will become useless: # modes, these two will become useless:
config.addinivalue_line("markers", config.addinivalue_line("markers",
...@@ -162,6 +166,8 @@ def pytest_collection_modifyitems(config, items): ...@@ -162,6 +166,8 @@ def pytest_collection_modifyitems(config, items):
"running these tests") "running these tests")
skip_services = pytest.mark.skip( skip_services = pytest.mark.skip(
reason="needs to manage Heptapod services") reason="needs to manage Heptapod services")
skip_sql = pytest.mark.skip(
reason="needs to perform SQL statements")
skip_hg_git = pytest.mark.skip(reason="needs non hg-native mode") skip_hg_git = pytest.mark.skip(reason="needs non hg-native mode")
skip_hg_native = pytest.mark.skip(reason="needs hg-native mode") skip_hg_native = pytest.mark.skip(reason="needs hg-native mode")
skip_prod_server = pytest.mark.skip( skip_prod_server = pytest.mark.skip(
...@@ -185,6 +191,8 @@ def pytest_collection_modifyitems(config, items): ...@@ -185,6 +191,8 @@ def pytest_collection_modifyitems(config, items):
item.add_marker(skip_reverse_call) item.add_marker(skip_reverse_call)
if "services" in item.keywords and (remote or source_install): if "services" in item.keywords and (remote or source_install):
item.add_marker(skip_services) item.add_marker(skip_services)
if "sql" in item.keywords and (remote or source_install):
item.add_marker(skip_sql)
if "hg_git" in item.keywords and hg_native: if "hg_git" in item.keywords and hg_native:
item.add_marker(skip_hg_git) item.add_marker(skip_hg_git)
if "hg_native" in item.keywords and not hg_native: if "hg_native" in item.keywords and not hg_native:
......
...@@ -4,5 +4,6 @@ fs_access = pytest.mark.fs_access ...@@ -4,5 +4,6 @@ fs_access = pytest.mark.fs_access
docker = pytest.mark.docker docker = pytest.mark.docker
reverse_call = pytest.mark.reverse_call reverse_call = pytest.mark.reverse_call
services = pytest.mark.services services = pytest.mark.services
sql = pytest.mark.sql
hg_git = pytest.mark.hg_git hg_git = pytest.mark.hg_git
prod_server = pytest.mark.prod_server prod_server = pytest.mark.prod_server
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment