Fixed the fixture function signature.
This commit is contained in:
		
							parent
							
								
									10bf6aac76
								
							
						
					
					
						commit
						f2f3ced508
					
				|  | @ -1012,7 +1012,16 @@ FIXTURE_ARGS_ORDER = ("scope", "params", "autouse", "ids", "name") | |||
| 
 | ||||
| 
 | ||||
| def _parse_fixture_args(callable_or_scope, *args, **kwargs): | ||||
|     arguments = dict(scope="function", params=None, autouse=False, ids=None, name=None) | ||||
|     arguments = { | ||||
|         "scope": "function", | ||||
|         "params": None, | ||||
|         "autouse": False, | ||||
|         "ids": None, | ||||
|         "name": None, | ||||
|     } | ||||
|     kwargs = { | ||||
|         key: value for key, value in kwargs.items() if arguments.get(key) != value | ||||
|     } | ||||
| 
 | ||||
|     fixture_function = None | ||||
|     if isinstance(callable_or_scope, str): | ||||
|  | @ -1041,7 +1050,15 @@ def _parse_fixture_args(callable_or_scope, *args, **kwargs): | |||
|     return fixture_function, arguments | ||||
| 
 | ||||
| 
 | ||||
| def fixture(callable_or_scope=None, *args, **kwargs): | ||||
| def fixture( | ||||
|     callable_or_scope=None, | ||||
|     *args, | ||||
|     scope="function", | ||||
|     params=None, | ||||
|     autouse=False, | ||||
|     ids=None, | ||||
|     name=None | ||||
| ): | ||||
|     """Decorator to mark a fixture factory function. | ||||
| 
 | ||||
|     This decorator can be used, with or without parameters, to define a | ||||
|  | @ -1088,7 +1105,13 @@ def fixture(callable_or_scope=None, *args, **kwargs): | |||
|                 ``@pytest.fixture(name='<fixturename>')``. | ||||
|     """ | ||||
|     fixture_function, arguments = _parse_fixture_args( | ||||
|         callable_or_scope, *args, **kwargs | ||||
|         callable_or_scope, | ||||
|         *args, | ||||
|         scope=scope, | ||||
|         params=params, | ||||
|         autouse=autouse, | ||||
|         ids=ids, | ||||
|         name=name | ||||
|     ) | ||||
|     scope = arguments.get("scope") | ||||
|     params = arguments.get("params") | ||||
|  | @ -1107,13 +1130,29 @@ def fixture(callable_or_scope=None, *args, **kwargs): | |||
|     return FixtureFunctionMarker(scope, params, autouse, ids=ids, name=name) | ||||
| 
 | ||||
| 
 | ||||
| def yield_fixture(callable_or_scope=None, *args, **kwargs): | ||||
| def yield_fixture( | ||||
|     callable_or_scope=None, | ||||
|     *args, | ||||
|     scope="function", | ||||
|     params=None, | ||||
|     autouse=False, | ||||
|     ids=None, | ||||
|     name=None | ||||
| ): | ||||
|     """ (return a) decorator to mark a yield-fixture factory function. | ||||
| 
 | ||||
|     .. deprecated:: 3.0 | ||||
|         Use :py:func:`pytest.fixture` directly instead. | ||||
|     """ | ||||
|     return fixture(callable_or_scope=callable_or_scope, *args, **kwargs) | ||||
|     return fixture( | ||||
|         callable_or_scope, | ||||
|         *args, | ||||
|         scope=scope, | ||||
|         params=params, | ||||
|         autouse=autouse, | ||||
|         ids=ids, | ||||
|         name=name | ||||
|     ) | ||||
| 
 | ||||
| 
 | ||||
| defaultfuncargprefixmarker = fixture() | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue