MCPcopy
hub / github.com/pytest-dev/pytest / pytest_load_initial_conftests

Function pytest_load_initial_conftests

src/_pytest/legacypath.py:408–436  ·  view source on GitHub ↗

Monkeypatch legacy path attributes in several classes, as early as possible.

(early_config: Config)

Source from the content-addressed store, hash-verified

406
407@hookimpl(tryfirst=True)
408def pytest_load_initial_conftests(early_config: Config) -> None:
409 """Monkeypatch legacy path attributes in several classes, as early as possible."""
410 mp = MonkeyPatch()
411 early_config.add_cleanup(mp.undo)
412
413 # Add Cache.makedir().
414 mp.setattr(Cache, "makedir", Cache_makedir, raising=False)
415
416 # Add FixtureRequest.fspath property.
417 mp.setattr(FixtureRequest, "fspath", property(FixtureRequest_fspath), raising=False)
418
419 # Add TerminalReporter.startdir property.
420 mp.setattr(
421 TerminalReporter, "startdir", property(TerminalReporter_startdir), raising=False
422 )
423
424 # Add Config.{invocation_dir,rootdir,inifile} properties.
425 mp.setattr(Config, "invocation_dir", property(Config_invocation_dir), raising=False)
426 mp.setattr(Config, "rootdir", property(Config_rootdir), raising=False)
427 mp.setattr(Config, "inifile", property(Config_inifile), raising=False)
428
429 # Add Session.startdir property.
430 mp.setattr(Session, "startdir", property(Session_startdir), raising=False)
431
432 # Add pathlist configuration type.
433 mp.setattr(Config, "_getini_unknown_type", Config__getini_unknown_type)
434
435 # Add Node.fspath property.
436 mp.setattr(Node, "fspath", property(Node_fspath, Node_fspath_set), raising=False)
437
438
439@hookimpl

Callers

nothing calls this directly

Calls 3

setattrMethod · 0.95
MonkeyPatchClass · 0.90
add_cleanupMethod · 0.80

Tested by

no test coverage detected