@@ -492,3 +492,40 @@ def task_write_numbers_to_file(i):
492492 session = main ({"paths" : tmp_path })
493493
494494 assert session .exit_code == ExitCode .OK
495+
496+
497+ @pytest .mark .end_to_end ()
498+ def test_deprecation_warning_for_parametrizing_tasks (runner , tmp_path ):
499+ source = """
500+ import pytask
501+
502+ @pytask.mark.parametrize('i, produces', [(1, "1.txt"), (2, "2.txt")])
503+ def task_write_numbers_to_file(produces, i):
504+ produces.write_text(str(i))
505+ """
506+ tmp_path .joinpath ("task_module.py" ).write_text (textwrap .dedent (source ))
507+
508+ result = runner .invoke (cli , [tmp_path .as_posix ()])
509+
510+ assert result .exit_code == ExitCode .OK
511+ assert "FutureWarning" in result .output
512+
513+
514+ @pytest .mark .end_to_end ()
515+ def test_silence_deprecation_warning_for_parametrizing_tasks (runner , tmp_path ):
516+ source = """
517+ import pytask
518+
519+ @pytask.mark.parametrize('i, produces', [(1, "1.txt"), (2, "2.txt")])
520+ def task_write_numbers_to_file(produces, i):
521+ produces.write_text(str(i))
522+ """
523+ tmp_path .joinpath ("task_module.py" ).write_text (textwrap .dedent (source ))
524+ tmp_path .joinpath ("pyproject.toml" ).write_text (
525+ "[tool.pytask.ini_options]\n silence_parametrize_deprecation = true"
526+ )
527+
528+ result = runner .invoke (cli , [tmp_path .as_posix ()])
529+
530+ assert result .exit_code == ExitCode .OK
531+ assert "FutureWarning" not in result .output
0 commit comments