1313from _pytest .main import EXIT_USAGEERROR
1414
1515
16- @pytest .fixture (scope = "module" , params = ["global" , "inpackage" ])
17- def basedir (request , tmpdir_factory ):
18- tmpdir = tmpdir_factory .mktemp ("basedir" , numbered = True )
19- tmpdir .ensure ("adir/conftest.py" ).write ("a=1 ; Directory = 3" )
20- tmpdir .ensure ("adir/b/conftest.py" ).write ("b=2 ; a = 1.5" )
21- if request .param == "inpackage" :
22- tmpdir .ensure ("adir/__init__.py" )
23- tmpdir .ensure ("adir/b/__init__.py" )
24- return tmpdir
25-
26-
2716def ConftestWithSetinitial (path ):
2817 conftest = PytestPluginManager ()
2918 conftest_setinitial (conftest , [path ])
@@ -41,18 +30,30 @@ def __init__(self):
4130 conftest ._set_initial_conftests (Namespace ())
4231
4332
33+ @pytest .mark .usefixtures ("_sys_snapshot" )
4434class TestConftestValueAccessGlobal (object ):
35+ @pytest .fixture (scope = "module" , params = ["global" , "inpackage" ])
36+ def basedir (self , request , tmpdir_factory ):
37+ tmpdir = tmpdir_factory .mktemp ("basedir" , numbered = True )
38+ tmpdir .ensure ("adir/conftest.py" ).write ("a=1 ; Directory = 3" )
39+ tmpdir .ensure ("adir/b/conftest.py" ).write ("b=2 ; a = 1.5" )
40+ if request .param == "inpackage" :
41+ tmpdir .ensure ("adir/__init__.py" )
42+ tmpdir .ensure ("adir/b/__init__.py" )
43+
44+ yield tmpdir
45+
4546 def test_basic_init (self , basedir ):
4647 conftest = PytestPluginManager ()
4748 p = basedir .join ("adir" )
4849 assert conftest ._rget_with_confmod ("a" , p )[1 ] == 1
4950
5051 def test_immediate_initialiation_and_incremental_are_the_same (self , basedir ):
5152 conftest = PytestPluginManager ()
52- len (conftest ._dirpath2confmods )
53+ assert not len (conftest ._dirpath2confmods )
5354 conftest ._getconftestmodules (basedir )
5455 snap1 = len (conftest ._dirpath2confmods )
55- # assert len(conftest._dirpath2confmods) == snap1 + 1
56+ assert snap1 == 1
5657 conftest ._getconftestmodules (basedir .join ("adir" ))
5758 assert len (conftest ._dirpath2confmods ) == snap1 + 1
5859 conftest ._getconftestmodules (basedir .join ("b" ))
@@ -80,7 +81,7 @@ def test_value_access_with_confmod(self, basedir):
8081 assert path .purebasename .startswith ("conftest" )
8182
8283
83- def test_conftest_in_nonpkg_with_init (tmpdir ):
84+ def test_conftest_in_nonpkg_with_init (tmpdir , _sys_snapshot ):
8485 tmpdir .ensure ("adir-1.0/conftest.py" ).write ("a=1 ; Directory = 3" )
8586 tmpdir .ensure ("adir-1.0/b/conftest.py" ).write ("b=2 ; a = 1.5" )
8687 tmpdir .ensure ("adir-1.0/b/__init__.py" )
0 commit comments