Use self.Function again during collection

This commit is contained in:
Bruno Oliveira 2018-09-13 15:44:02 -03:00
parent b7dd9154c3
commit feb8240410
2 changed files with 10 additions and 1 deletions

View File

@ -800,7 +800,10 @@ class Generator(FunctionMixin, PyCollector):
"%r generated tests with non-unique name %r" % (self, name)
)
seen[name] = True
values.append(Function(name, self, args=args, callobj=call))
with warnings.catch_warnings():
# ignore our own deprecation warning
function_class = self.Function
values.append(function_class(name, self, args=args, callobj=call))
self.warn(deprecated.YIELD_TESTS)
return values

View File

@ -240,6 +240,9 @@ class TestClass(object):
assert result.ret == EXIT_NOTESTSCOLLECTED
@pytest.mark.filterwarnings(
"ignore:usage of Generator.Function is deprecated, please use pytest.Function instead"
)
class TestGenerator(object):
def test_generative_functions(self, testdir):
modcol = testdir.getmodulecol(
@ -1255,6 +1258,9 @@ class TestReportInfo(object):
assert lineno == 1
assert msg == "TestClass"
@pytest.mark.filterwarnings(
"ignore:usage of Generator.Function is deprecated, please use pytest.Function instead"
)
def test_generator_reportinfo(self, testdir):
modcol = testdir.getmodulecol(
"""