aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wpt/web-platform-tests/tools/pytest/testing/test_pytester.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/wpt/web-platform-tests/tools/pytest/testing/test_pytester.py')
-rw-r--r--tests/wpt/web-platform-tests/tools/pytest/testing/test_pytester.py122
1 files changed, 0 insertions, 122 deletions
diff --git a/tests/wpt/web-platform-tests/tools/pytest/testing/test_pytester.py b/tests/wpt/web-platform-tests/tools/pytest/testing/test_pytester.py
deleted file mode 100644
index 65660afdfe3..00000000000
--- a/tests/wpt/web-platform-tests/tools/pytest/testing/test_pytester.py
+++ /dev/null
@@ -1,122 +0,0 @@
-import pytest
-import os
-from _pytest.pytester import HookRecorder
-from _pytest.config import PytestPluginManager
-from _pytest.main import EXIT_OK, EXIT_TESTSFAILED
-
-
-def test_make_hook_recorder(testdir):
- item = testdir.getitem("def test_func(): pass")
- recorder = testdir.make_hook_recorder(item.config.pluginmanager)
- assert not recorder.getfailures()
-
- pytest.xfail("internal reportrecorder tests need refactoring")
- class rep:
- excinfo = None
- passed = False
- failed = True
- skipped = False
- when = "call"
-
- recorder.hook.pytest_runtest_logreport(report=rep)
- failures = recorder.getfailures()
- assert failures == [rep]
- failures = recorder.getfailures()
- assert failures == [rep]
-
- class rep:
- excinfo = None
- passed = False
- failed = False
- skipped = True
- when = "call"
- rep.passed = False
- rep.skipped = True
- recorder.hook.pytest_runtest_logreport(report=rep)
-
- modcol = testdir.getmodulecol("")
- rep = modcol.config.hook.pytest_make_collect_report(collector=modcol)
- rep.passed = False
- rep.failed = True
- rep.skipped = False
- recorder.hook.pytest_collectreport(report=rep)
-
- passed, skipped, failed = recorder.listoutcomes()
- assert not passed and skipped and failed
-
- numpassed, numskipped, numfailed = recorder.countoutcomes()
- assert numpassed == 0
- assert numskipped == 1
- assert numfailed == 1
- assert len(recorder.getfailedcollections()) == 1
-
- recorder.unregister()
- recorder.clear()
- recorder.hook.pytest_runtest_logreport(report=rep)
- pytest.raises(ValueError, "recorder.getfailures()")
-
-
-def test_parseconfig(testdir):
- config1 = testdir.parseconfig()
- config2 = testdir.parseconfig()
- assert config2 != config1
- assert config1 != pytest.config
-
-def test_testdir_runs_with_plugin(testdir):
- testdir.makepyfile("""
- pytest_plugins = "pytester"
- def test_hello(testdir):
- assert 1
- """)
- result = testdir.runpytest()
- result.assert_outcomes(passed=1)
-
-
-def make_holder():
- class apiclass:
- def pytest_xyz(self, arg):
- "x"
- def pytest_xyz_noarg(self):
- "x"
-
- apimod = type(os)('api')
- def pytest_xyz(arg):
- "x"
- def pytest_xyz_noarg():
- "x"
- apimod.pytest_xyz = pytest_xyz
- apimod.pytest_xyz_noarg = pytest_xyz_noarg
- return apiclass, apimod
-
-
-@pytest.mark.parametrize("holder", make_holder())
-def test_hookrecorder_basic(holder):
- pm = PytestPluginManager()
- pm.addhooks(holder)
- rec = HookRecorder(pm)
- pm.hook.pytest_xyz(arg=123)
- call = rec.popcall("pytest_xyz")
- assert call.arg == 123
- assert call._name == "pytest_xyz"
- pytest.raises(pytest.fail.Exception, "rec.popcall('abc')")
- pm.hook.pytest_xyz_noarg()
- call = rec.popcall("pytest_xyz_noarg")
- assert call._name == "pytest_xyz_noarg"
-
-
-def test_makepyfile_unicode(testdir):
- global unichr
- try:
- unichr(65)
- except NameError:
- unichr = chr
- testdir.makepyfile(unichr(0xfffd))
-
-def test_inline_run_clean_modules(testdir):
- test_mod = testdir.makepyfile("def test_foo(): assert True")
- result = testdir.inline_run(str(test_mod))
- assert result.ret == EXIT_OK
- # rewrite module, now test should fail if module was re-imported
- test_mod.write("def test_foo(): assert False")
- result2 = testdir.inline_run(str(test_mod))
- assert result2.ret == EXIT_TESTSFAILED