MCPcopy Create free account
hub / github.com/pytest-dev/pytest / pytest_fixture_setup

Function pytest_fixture_setup

src/_pytest/fixtures.py:1107–1129  ·  view source on GitHub ↗

Execution of fixture setup.

(
    fixturedef: FixtureDef[FixtureValue], request: SubRequest
)

Source from the content-addressed store, hash-verified

1105
1106
1107def pytest_fixture_setup(
1108 fixturedef: FixtureDef[FixtureValue], request: SubRequest
1109) -> FixtureValue:
1110 """Execution of fixture setup."""
1111 kwargs = {}
1112 for argname in fixturedef.argnames:
1113 fixdef = request._get_active_fixturedef(argname)
1114 assert fixdef.cached_result is not None
1115 result, arg_cache_key, exc = fixdef.cached_result
1116 request._check_scope(argname, request._scope, fixdef._scope)
1117 kwargs[argname] = result
1118
1119 fixturefunc = resolve_fixture_function(fixturedef, request)
1120 my_cache_key = fixturedef.cache_key(request)
1121 try:
1122 result = call_fixture_func(fixturefunc, request, kwargs)
1123 except TEST_OUTCOME:
1124 exc_info = sys.exc_info()
1125 assert exc_info[0] is not None
1126 fixturedef.cached_result = (None, my_cache_key, exc_info)
1127 raise
1128 fixturedef.cached_result = (result, my_cache_key, None)
1129 return result
1130
1131
1132def _ensure_immutable_ids(

Callers

nothing calls this directly

Calls 5

resolve_fixture_functionFunction · 0.85
call_fixture_funcFunction · 0.85
_check_scopeMethod · 0.80
cache_keyMethod · 0.80

Tested by

no test coverage detected