import pytest import sys import os import getopt sys.path.insert(1, os.path.join(sys.path[0], '../../')) import rips _rips_instance = None @pytest.fixture def rips_instance(): return _rips_instance @pytest.fixture def initializeTest(): _rips_instance.project.close() # make sure ResInsight is clean before execution of test yield initializeTest _rips_instance.project.close() # make sure ResInsight is clean after test def pytest_addoption(parser): parser.addoption("--console", action="store_true", default=False, help="Run as console application") parser.addoption("--existing", action="store_true", default=False, help="Look for existing ResInsight") def pytest_configure(config): global _rips_instance console = False if config.getoption('--existing'): print("Looking for existing ResInsight") _rips_instance = rips.Instance.find() else: if config.getoption('--console'): console = True _rips_instance = rips.Instance.launch(console=console) if not _rips_instance: print("Need a valid ResInsight executable to launch tests") exit(0) def pytest_unconfigure(config): if not config.getoption('--existing'): _rips_instance.app.exit()