From b8c3f866b529ff291f2b2e6c8c9f432b4adfdee4 Mon Sep 17 00:00:00 2001 From: holger krekel Date: Thu, 21 May 2009 14:36:52 +0200 Subject: [PATCH] fixed examples according to new plugin and setup mechanisms --HG-- branch : trunk --- example/funcarg/costlysetup/conftest.py | 18 ++++++------------ example/funcarg/mysetup/conftest.py | 5 ++--- example/funcarg/mysetup2/conftest.py | 11 +++++------ example/pytest/test_failures.py | 6 +++--- 4 files changed, 16 insertions(+), 24 deletions(-) diff --git a/example/funcarg/costlysetup/conftest.py b/example/funcarg/costlysetup/conftest.py index 7eb44cf63..07c2a5802 100644 --- a/example/funcarg/costlysetup/conftest.py +++ b/example/funcarg/costlysetup/conftest.py @@ -1,16 +1,10 @@ -class ConftestPlugin: - def pytest_configure(self, config): - self._setup = None - - def pytest_funcarg__setup(self, request): - if self._setup is None: - self._setup = CostlySetup() - return self._setup - - def pytest_unconfigure(self, config): - if self._setup is not None: - self._setup.finalize() +def pytest_funcarg__setup(request): + return request.cached_setup( + setup=lambda: CostlySetup(), + teardown=lambda costlysetup: costlysetup.finalize(), + scope="session", + ) class CostlySetup: def __init__(self): diff --git a/example/funcarg/mysetup/conftest.py b/example/funcarg/mysetup/conftest.py index c62df898d..1abdaee46 100644 --- a/example/funcarg/mysetup/conftest.py +++ b/example/funcarg/mysetup/conftest.py @@ -1,9 +1,8 @@ from myapp import MyApp -class ConftestPlugin: - def pytest_funcarg__mysetup(self, request): - return MySetup() +def pytest_funcarg__mysetup(request): + return MySetup() class MySetup: def myapp(self): diff --git a/example/funcarg/mysetup2/conftest.py b/example/funcarg/mysetup2/conftest.py index 99599791a..d5dced2a5 100644 --- a/example/funcarg/mysetup2/conftest.py +++ b/example/funcarg/mysetup2/conftest.py @@ -1,13 +1,12 @@ import py from myapp import MyApp -class ConftestPlugin: - def pytest_funcarg__mysetup(self, request): - return MySetup(request) +def pytest_funcarg__mysetup(request): + return MySetup(request) - def pytest_addoption(self, parser): - parser.addoption("--ssh", action="store", default=None, - help="specify ssh host to run tests with") +def pytest_addoption(parser): + parser.addoption("--ssh", action="store", default=None, + help="specify ssh host to run tests with") class MySetup: diff --git a/example/pytest/test_failures.py b/example/pytest/test_failures.py index ba0cc579d..bc56b82c1 100644 --- a/example/pytest/test_failures.py +++ b/example/pytest/test_failures.py @@ -5,10 +5,10 @@ failure_demo = py.magic.autopath().dirpath('failure_demo.py') pytest_plugins = "pytest_pytester" def test_failure_demo_fails_properly(testdir): - sorter = testdir.inline_run(failure_demo) - passed, skipped, failed = sorter.countoutcomes() + reprec = testdir.inline_run(failure_demo) + passed, skipped, failed = reprec.countoutcomes() assert passed == 0 assert failed == 20, failed - colreports = sorter.getnamed("collectionreport") + colreports = reprec.getnamed("collectionreport") failed = len([x.failed for x in colreports]) assert failed == 5