fixtures: remove an unneeded suppress
In `CallSpec2.setmulti` the `params` and `_arg2scope` dicts are always set together. Further, the `get_parametrized_fixture_keys` accesses `_arg2scope` for all argnames without a check, which I think rules out that the code protects against plugin shenanigans. After removing the suppress, adjust the comment and code to make more sense.
This commit is contained in:
		
							parent
							
								
									010ce2ab0f
								
							
						
					
					
						commit
						ad651ddfce
					
				| 
						 | 
				
			
			@ -2,7 +2,6 @@
 | 
			
		|||
import abc
 | 
			
		||||
from collections import defaultdict
 | 
			
		||||
from collections import deque
 | 
			
		||||
from contextlib import suppress
 | 
			
		||||
import dataclasses
 | 
			
		||||
import functools
 | 
			
		||||
import inspect
 | 
			
		||||
| 
						 | 
				
			
			@ -578,7 +577,6 @@ class FixtureRequest(abc.ABC):
 | 
			
		|||
        # (latter managed by fixturedef)
 | 
			
		||||
        argname = fixturedef.argname
 | 
			
		||||
        funcitem = self._pyfuncitem
 | 
			
		||||
        scope = fixturedef._scope
 | 
			
		||||
        try:
 | 
			
		||||
            callspec = funcitem.callspec
 | 
			
		||||
        except AttributeError:
 | 
			
		||||
| 
						 | 
				
			
			@ -586,13 +584,13 @@ class FixtureRequest(abc.ABC):
 | 
			
		|||
        if callspec is not None and argname in callspec.params:
 | 
			
		||||
            param = callspec.params[argname]
 | 
			
		||||
            param_index = callspec.indices[argname]
 | 
			
		||||
            # If a parametrize invocation set a scope it will override
 | 
			
		||||
            # the static scope defined with the fixture function.
 | 
			
		||||
            with suppress(KeyError):
 | 
			
		||||
            # The parametrize invocation scope overrides the fixture's scope.
 | 
			
		||||
            scope = callspec._arg2scope[argname]
 | 
			
		||||
        else:
 | 
			
		||||
            param = NOTSET
 | 
			
		||||
            param_index = 0
 | 
			
		||||
            scope = fixturedef._scope
 | 
			
		||||
 | 
			
		||||
            has_params = fixturedef.params is not None
 | 
			
		||||
            fixtures_not_supported = getattr(funcitem, "nofuncargs", False)
 | 
			
		||||
            if has_params and fixtures_not_supported:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue