Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/certbot/certbot.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'certbot-ci/windows_installer_integration_tests/conftest.py')
-rw-r--r--certbot-ci/windows_installer_integration_tests/conftest.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/certbot-ci/windows_installer_integration_tests/conftest.py b/certbot-ci/windows_installer_integration_tests/conftest.py
new file mode 100644
index 000000000..e36654f90
--- /dev/null
+++ b/certbot-ci/windows_installer_integration_tests/conftest.py
@@ -0,0 +1,38 @@
+"""
+General conftest for pytest execution of all integration tests lying
+in the window_installer_integration tests package.
+As stated by pytest documentation, conftest module is used to set on
+for a directory a specific configuration using built-in pytest hooks.
+
+See https://docs.pytest.org/en/latest/reference.html#hook-reference
+"""
+from __future__ import print_function
+import os
+
+import pytest
+
+ROOT_PATH = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
+
+
+def pytest_addoption(parser):
+ """
+ Standard pytest hook to add options to the pytest parser.
+ :param parser: current pytest parser that will be used on the CLI
+ """
+ parser.addoption('--installer-path',
+ default=os.path.join(ROOT_PATH, 'windows-installer', 'build',
+ 'nsis', 'certbot-beta-installer-win32.exe'),
+ help='set the path of the windows installer to use, default to '
+ 'CERTBOT_ROOT_PATH\\windows-installer\\build\\nsis\\certbot-beta-installer-win32.exe')
+ parser.addoption('--allow-persistent-changes', action='store_true',
+ help='needs to be set, and confirm that the test will make persistent changes on this machine')
+
+
+def pytest_configure(config):
+ """
+ Standard pytest hook used to add a configuration logic for each node of a pytest run.
+ :param config: the current pytest configuration
+ """
+ if not config.option.allow_persistent_changes:
+ raise RuntimeError('This integration test would install Certbot on your machine. '
+ 'Please run it again with the `--allow-persistent-changes` flag set to acknowledge.')