Fix a test
This commit is contained in:
parent
c72507cad9
commit
7c56b16faf
|
@ -1550,9 +1550,9 @@ class Metafunc:
|
||||||
definition = self.definition
|
definition = self.definition
|
||||||
fm = cast(nodes.Node, definition.parent).session._fixturemanager
|
fm = cast(nodes.Node, definition.parent).session._fixturemanager
|
||||||
fixture_closure, _ = fm.getfixtureclosure(
|
fixture_closure, _ = fm.getfixtureclosure(
|
||||||
definition,
|
parentnode=definition,
|
||||||
definition._fixtureinfo.initialnames,
|
initialnames=definition._fixtureinfo.initialnames,
|
||||||
definition._fixtureinfo.name2fixturedefs,
|
arg2fixturedefs=definition._fixtureinfo.name2fixturedefs,
|
||||||
ignore_args=_get_direct_parametrize_args(definition),
|
ignore_args=_get_direct_parametrize_args(definition),
|
||||||
)
|
)
|
||||||
definition._fixtureinfo.names_closure[:] = fixture_closure
|
definition._fixtureinfo.names_closure[:] = fixture_closure
|
||||||
|
|
|
@ -4638,7 +4638,9 @@ def test_request_shouldnt_be_in_closure_after_pruning_dep_tree_when_its_not_in_i
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def test_dont_recompute_dependency_tree_if_no_dynamic_parametrize(pytester: Pytester):
|
def test_dont_recompute_dependency_tree_if_no_direct_dynamic_parametrize(
|
||||||
|
pytester: Pytester,
|
||||||
|
):
|
||||||
pytester.makeconftest(
|
pytester.makeconftest(
|
||||||
"""
|
"""
|
||||||
import pytest
|
import pytest
|
||||||
|
@ -4667,6 +4669,10 @@ def test_dont_recompute_dependency_tree_if_no_dynamic_parametrize(pytester: Pyte
|
||||||
if metafunc.definition.name == "test_0":
|
if metafunc.definition.name == "test_0":
|
||||||
metafunc.parametrize("fixture", [0])
|
metafunc.parametrize("fixture", [0])
|
||||||
|
|
||||||
|
if metafunc.definition.name == "test_4":
|
||||||
|
metafunc.parametrize("fixture", [0], indirect=True)
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture(scope='module')
|
@pytest.fixture(scope='module')
|
||||||
def fixture():
|
def fixture():
|
||||||
pass
|
pass
|
||||||
|
@ -4685,23 +4691,27 @@ def test_dont_recompute_dependency_tree_if_no_dynamic_parametrize(pytester: Pyte
|
||||||
def test_3(fixture):
|
def test_3(fixture):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def test_4(fixture):
|
||||||
|
pass
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def fm(request):
|
def fm(request):
|
||||||
yield request._fixturemanager
|
yield request._fixturemanager
|
||||||
|
|
||||||
def test(fm):
|
def test(fm):
|
||||||
method = fm.getfixtureclosure
|
calls = fm.getfixtureclosure.call_args_list
|
||||||
assert len(method.call_args_list) == 6
|
assert len(calls) == 7
|
||||||
assert method.call_args_list[0].args[0].nodeid.endswith("test_0")
|
assert calls[0].kwargs["parentnode"].nodeid.endswith("test_0")
|
||||||
assert method.call_args_list[1].args[0].nodeid.endswith("test_0")
|
assert calls[1].kwargs["parentnode"].nodeid.endswith("test_0")
|
||||||
assert method.call_args_list[2].args[0].nodeid.endswith("test_1")
|
assert calls[2].kwargs["parentnode"].nodeid.endswith("test_1")
|
||||||
assert method.call_args_list[3].args[0].nodeid.endswith("test_2")
|
assert calls[3].kwargs["parentnode"].nodeid.endswith("test_2")
|
||||||
assert method.call_args_list[4].args[0].nodeid.endswith("test_3")
|
assert calls[4].kwargs["parentnode"].nodeid.endswith("test_3")
|
||||||
assert method.call_args_list[5].args[0].nodeid.endswith("test")
|
assert calls[5].kwargs["parentnode"].nodeid.endswith("test_4")
|
||||||
|
assert calls[6].kwargs["parentnode"].nodeid.endswith("test")
|
||||||
"""
|
"""
|
||||||
)
|
)
|
||||||
reprec = pytester.inline_run()
|
reprec = pytester.inline_run()
|
||||||
reprec.assertoutcome(passed=5)
|
reprec.assertoutcome(passed=6)
|
||||||
|
|
||||||
|
|
||||||
def test_deduplicate_names() -> None:
|
def test_deduplicate_names() -> None:
|
||||||
|
|
Loading…
Reference in New Issue