26 lines
		
	
	
		
			816 B
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			816 B
		
	
	
	
		
			Python
		
	
	
	
from __future__ import absolute_import, division, print_function
 | 
						|
 | 
						|
import pytest
 | 
						|
 | 
						|
 | 
						|
def pytest_addoption(parser):
 | 
						|
    group = parser.getgroup("debugconfig")
 | 
						|
    group.addoption('--setupplan', '--setup-plan', action="store_true",
 | 
						|
                    help="show what fixtures and tests would be executed but "
 | 
						|
                    "don't execute anything.")
 | 
						|
 | 
						|
 | 
						|
@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
 | 
						|
 | 
						|
 | 
						|
@pytest.hookimpl(tryfirst=True)
 | 
						|
def pytest_cmdline_main(config):
 | 
						|
    if config.option.setupplan:
 | 
						|
        config.option.setuponly = True
 | 
						|
        config.option.setupshow = True
 |