2016-06-25 18:19:46 +08:00
|
|
|
import pytest
|
|
|
|
|
2016-07-04 04:33:21 +08:00
|
|
|
|
2016-06-25 18:20:56 +08:00
|
|
|
def pytest_addoption(parser):
|
|
|
|
group = parser.getgroup("debugconfig")
|
|
|
|
group.addoption('--setupplan', '--setup-plan', action="store_true",
|
2016-07-04 04:33:21 +08:00
|
|
|
help="show what fixtures and tests would be executed but "
|
|
|
|
"don't execute anything.")
|
|
|
|
|
2016-06-25 18:19:46 +08:00
|
|
|
|
|
|
|
@pytest.hookimpl(tryfirst=True)
|
|
|
|
def pytest_fixture_setup(fixturedef, request):
|
|
|
|
# Will return a dummy fixture if the setuponly option is provided.
|
|
|
|
if request.config.option.setupplan:
|
|
|
|
fixturedef.cached_result = (None, None, None)
|
|
|
|
return fixturedef.cached_result
|
|
|
|
|
2016-07-04 04:33:21 +08:00
|
|
|
|
2016-06-25 18:19:46 +08:00
|
|
|
@pytest.hookimpl(tryfirst=True)
|
|
|
|
def pytest_cmdline_main(config):
|
|
|
|
if config.option.setupplan:
|
|
|
|
config.option.setuponly = True
|
2016-07-04 04:30:51 +08:00
|
|
|
config.option.setupshow = True
|