@@ -21,43 +21,12 @@ def demos_folder(tmp_path_factory: TempPathFactory) -> Path:
2121 return tmp_path_factory .mktemp ("demos" )
2222
2323
24- @pytest .mark .parametrize (argnames = "robust_demo__name" , argvalues = ["robust-python-demo-no-setup" ], indirect = True )
25- @pytest .mark .parametrize (argnames = "robust_demo__add_rust_extension" , argvalues = [False ], indirect = True )
26- @pytest .fixture (scope = "session" )
27- def robust_python_demo_no_setup (request : FixtureRequest , robust_demo : Path ) -> Path :
28- return getattr (request , "param" , robust_demo )
29-
30-
31- @pytest .mark .parametrize (argnames = "robust_demo__name" , argvalues = ["robust-python-demo-with-setup" ], indirect = True )
32- @pytest .mark .parametrize (argnames = "robust_demo__add_rust_extension" , argvalues = [False ], indirect = True )
33- @pytest .fixture (scope = "session" )
34- def robust_python_demo_with_setup (request : FixtureRequest , robust_demo : Path , robust_demo__name : str ) -> Path :
35- subprocess .run (["nox" , "-s" , "setup-git" ], cwd = robust_demo , capture_output = True )
36- subprocess .run (["nox" , "-s" , "setup-venv" ], cwd = robust_demo , capture_output = True )
37- return getattr (request , "param" , robust_demo )
38-
39-
40- @pytest .mark .parametrize (argnames = "robust_demo__name" , argvalues = ["robust-maturin-demo-no-setup" ], indirect = True )
41- @pytest .mark .parametrize (argnames = "robust_demo__add_rust_extension" , argvalues = [True ], indirect = True )
42- @pytest .fixture (scope = "session" )
43- def robust_maturin_demo_no_setup (request : FixtureRequest , robust_demo : Path ) -> Path :
44- return getattr (request , "param" , robust_demo )
45-
46-
47- @pytest .mark .parametrize (argnames = "robust_demo__name" , argvalues = ["robust-maturin-demo-with-setup" ], indirect = True )
48- @pytest .mark .parametrize (argnames = "robust_demo__add_rust_extension" , argvalues = [True ], indirect = True )
49- @pytest .fixture (scope = "session" )
50- def robust_maturin_demo_with_setup (request : FixtureRequest , robust_demo : Path ) -> Path :
51- subprocess .run (["nox" , "-s" , "setup-git" ], cwd = robust_demo , capture_output = True )
52- subprocess .run (["nox" , "-s" , "setup-venv" ], cwd = robust_demo , capture_output = True )
53- return getattr (request , "param" , robust_demo )
54-
55-
5624@pytest .fixture (scope = "session" )
5725def robust_demo (
5826 request : FixtureRequest ,
5927 robust_demo__path : Path ,
60- robust_demo__extra_context : dict [str , Any ]
28+ robust_demo__extra_context : dict [str , Any ],
29+ robust_demo__is_setup : bool
6130) -> Path :
6231 cookiecutter (
6332 str (REPO_FOLDER ),
@@ -66,6 +35,9 @@ def robust_demo(
6635 output_dir = robust_demo__path ,
6736 extra_context = robust_demo__extra_context ,
6837 )
38+ if robust_demo__is_setup :
39+ subprocess .run (["nox" , "-s" , "setup-git" ], cwd = robust_demo__path , capture_output = True )
40+ subprocess .run (["nox" , "-s" , "setup-venv" ], cwd = robust_demo__path , capture_output = True )
6941 return getattr (request , "param" , robust_demo__path )
7042
7143
@@ -94,3 +66,8 @@ def robust_demo__extra_context(
9466@pytest .fixture (scope = "session" )
9567def robust_demo__add_rust_extension (request : FixtureRequest ) -> bool :
9668 return getattr (request , "param" , False )
69+
70+
71+ @pytest .fixture (scope = "session" )
72+ def robust_demo__is_setup (request : FixtureRequest ) -> bool :
73+ return getattr (request , "param" , True )
0 commit comments