parent
							
								
									5506dc700c
								
							
						
					
					
						commit
						ad4125dc0d
					
				|  | @ -188,7 +188,9 @@ | |||
| * ``yield``-based tests are considered deprecated and will be removed in pytest-4.0. | ||||
|   Thanks `@nicoddemus`_ for the PR. | ||||
| 
 | ||||
| * | ||||
| * Using ``pytest_funcarg__`` prefix to declare fixtures is considered deprecated and will be | ||||
|   removed in pytest-4.0 (`#1684`_). | ||||
|   Thanks `@nicoddemus`_ for the PR. | ||||
| 
 | ||||
| * | ||||
| 
 | ||||
|  | @ -262,6 +264,7 @@ | |||
| .. _#1632: https://github.com/pytest-dev/pytest/issues/1632 | ||||
| .. _#1633: https://github.com/pytest-dev/pytest/pull/1633 | ||||
| .. _#1664: https://github.com/pytest-dev/pytest/pull/1664 | ||||
| .. _#1684: https://github.com/pytest-dev/pytest/pull/1684 | ||||
| 
 | ||||
| .. _@DRMacIver: https://github.com/DRMacIver | ||||
| .. _@RedBeardCode: https://github.com/RedBeardCode | ||||
|  |  | |||
|  | @ -865,6 +865,10 @@ def yield_fixture(scope="function", params=None, autouse=False, ids=None, name=N | |||
|         return FixtureFunctionMarker(scope, params, autouse, ids=ids, name=name) | ||||
| 
 | ||||
| defaultfuncargprefixmarker = fixture() | ||||
| funcarg_prefix_warning = 'declaring fixtures using "pytest_funcarg__" prefix is deprecated ' \ | ||||
|                          'and scheduled to be removed in pytest 4.0.\n' \ | ||||
|                          'remove the prefix and use the @pytest.fixture decorator instead' | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| @fixture(scope="session") | ||||
|  | @ -1043,6 +1047,7 @@ class FixtureManager: | |||
|                     continue | ||||
|                 marker = defaultfuncargprefixmarker | ||||
|                 name = name[len(self._argprefix):] | ||||
|                 self.config.warn('C1', funcarg_prefix_warning) | ||||
|             elif not isinstance(marker, FixtureFunctionMarker): | ||||
|                 # magic globals  with __getattr__ might have got us a wrong | ||||
|                 # fixture attribute | ||||
|  |  | |||
|  | @ -777,3 +777,19 @@ def test_yield_tests_deprecation(testdir): | |||
|         '*yield tests are deprecated, and scheduled to be removed in pytest 4.0*', | ||||
|         '*2 passed*', | ||||
|     ]) | ||||
| 
 | ||||
| 
 | ||||
| def test_funcarg_prefix_deprecation(testdir): | ||||
|     testdir.makepyfile(""" | ||||
|         def pytest_funcarg__value(): | ||||
|             return 10 | ||||
| 
 | ||||
|         def test_funcarg_prefix(value): | ||||
|             assert value == 10 | ||||
|     """) | ||||
|     result = testdir.runpytest('-ra') | ||||
|     result.stdout.fnmatch_lines([ | ||||
|         '*declaring fixtures using "pytest_funcarg__" prefix is deprecated and scheduled to be removed in pytest 4.0*', | ||||
|         '*remove the prefix and use the @pytest.fixture decorator instead*', | ||||
|         '*1 passed*', | ||||
|     ]) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue