Bruno Oliveira
ceef0af1ae
Improve coverage for to_json() with paths in reports
2019-03-25 20:16:59 -03:00
Bruno Oliveira
e4eec3416a
Note that tests from xdist reference the correct xdist issues
2019-03-25 20:16:59 -03:00
Bruno Oliveira
7b9a414524
Add pytest_report_serialize and pytest_report_unserialize hooks
...
These hooks will be used by pytest-xdist and pytest-subtests to
serialize and customize reports.
2019-03-25 20:16:59 -03:00
Bruno Oliveira
0c63f99016
Add experimental _to_json and _from_json to TestReport and CollectReport
...
This methods were moved from xdist (ca03269).
Our intention is to keep this code closer to the core, given that it
might break easily due to refactorings.
Having it in the core might also allow to improve the code by moving
some responsibility to the "code" objects (ReprEntry, etc) which
are often found in the reports.
Finally pytest-xdist and pytest-subtests can use those functions
instead of coding it themselves.
2019-03-25 20:16:59 -03:00
Daniel Hahler
6eff3069da
Merge pull request #4851 from blueyed/addopts-vv
...
ci: PYTEST_ADDOPTS=-vv
2019-03-25 23:41:33 +01:00
Daniel Hahler
58a14b6b99
Merge pull request #4986 from blueyed/fnmatch_lines-list
...
tests: fnmatch_lines: use list
2019-03-25 23:31:04 +01:00
Daniel Hahler
b53bf44139
Merge pull request #4985 from blueyed/assert-from_current
...
ExceptionInfo.from_current: assert current exception
2019-03-25 23:28:58 +01:00
Daniel Hahler
51f64c2920
Merge pull request #4980 from blueyed/fixup_namespace_packages
...
monkeypatch.syspath_prepend: call fixup_namespace_packages
2019-03-25 23:10:00 +01:00
Daniel Hahler
de44293d59
CollectError.repr_failure: honor explicit tbstyle option
2019-03-24 11:24:19 +01:00
Daniel Hahler
5efe6ab93c
test_log_cli_auto_enable: get stdout once
2019-03-24 11:22:07 +01:00
Daniel Hahler
ce59f42ce1
revisit test_root_logger_affected
2019-03-24 11:21:13 +01:00
Daniel Hahler
7da7b9610c
minor: whitespace
2019-03-24 11:20:24 +01:00
Daniel Hahler
0ea1889265
test_as_errors: use subprocess with -W
...
Ref: https://github.com/pytest-dev/pytest/pull/4981
2019-03-24 11:17:55 +01:00
Daniel Hahler
6352cf2374
test_implicit_bad_repr1: harden/cleanup
2019-03-24 11:15:40 +01:00
Daniel Hahler
3127ec737b
Fix pytest's own tests with -W error::ResourceWarning
2019-03-24 11:05:00 +01:00
Daniel Hahler
d0f3f26fff
test_collect_capturing: cover captured stderr
2019-03-23 23:17:07 +01:00
Daniel Hahler
08f3b02dfc
tests: fnmatch_lines: use list
...
For strings fnmatch_lines converts it into a Source objects, splitted on
newlines. This is not necessary here, and it is more consistent to use
lists here in the first place.
2019-03-23 11:36:18 +01:00
Daniel Hahler
2d690b83bf
ExceptionInfo.from_current: assert current exception
2019-03-23 00:29:36 +01:00
Daniel Hahler
afa985c135
Revisit coverage in some tests
2019-03-22 17:26:16 +01:00
Daniel Hahler
fd64fa1863
Revisit test_importplugin_error_message
...
Should be more helpful in case of errors than before:
> assert re.match(expected_message, str(excinfo.value))
E _pytest.warning_types.PytestWarning: asserting the value None, please use "assert is None"
https://travis-ci.org/pytest-dev/pytest/jobs/509970576#L208
2019-03-22 17:02:26 +01:00
Daniel Hahler
05d55b86df
tests: minor sys.path cleanup
2019-03-22 16:20:55 +01:00
Daniel Hahler
475119988c
monkeypatch.syspath_prepend: call fixup_namespace_packages
...
Without the patch the test fails as follows:
# Prepending should call fixup_namespace_packages.
monkeypatch.syspath_prepend("world")
> import ns_pkg.world
E ModuleNotFoundError: No module named 'ns_pkg.world'
2019-03-22 15:29:08 +01:00
Daniel Hahler
7a6bcc3639
Add reference to test_cmdline_python_namespace_package
2019-03-22 13:23:44 +01:00
Daniel Hahler
ade773390a
minor: rename inner test
2019-03-22 13:23:44 +01:00
Daniel Hahler
2e7d6a6202
Fix test_assertrewrite in verbose mode
...
Fixes https://github.com/pytest-dev/pytest/issues/4879 .
2019-03-22 13:00:35 +01:00
Daniel Hahler
15d608867d
Merge pull request #4966 from blueyed/fix-preparse
...
config: fix consider_preparse with missing argument to -p
2019-03-21 19:12:57 +01:00
Daniel Hahler
ea2c6b8a88
config: fix consider_preparse with missing argument to -p
...
This is only required after/with 415899d4 - otherwise argparse ensures
there is an argument already.
2019-03-21 17:05:22 +01:00
Daniel Hahler
553951c443
Fix some issues related to "-p no:X" with default_plugins
2019-03-21 17:01:50 +01:00
Daniel Hahler
cc6e5ec345
tests: add test_report_collect_after_half_a_second
...
This is meant for stable coverage with "collecting X item(s)".
2019-03-20 22:13:11 +01:00
Daniel Hahler
7939e5327c
Merge pull request #4957 from blueyed/config-handle-pno-with-default-plugins
...
config: handle `-p no:plugin` with default plugins
2019-03-20 03:32:03 +01:00
Daniel Hahler
c7c120fba6
terminal: handle "capture" option not being available
...
This is the case with `-p no:capture` now.
2019-03-20 03:01:26 +01:00
Daniel Hahler
415899d428
config: handle -p no:plugin with default plugins
...
`-p no:capture` should not load its fixtures in the first place.
2019-03-20 02:47:13 +01:00
Daniel Hahler
8dda5613ef
Merge pull request #4956 from blueyed/home2
...
pytester: set HOME only with inline_run/popen
2019-03-20 02:29:29 +01:00
Daniel Hahler
714f2113bb
Merge pull request #4929 from blueyed/fix-_factorytraceback-offset
...
Fix line offsets with `ScopeMismatch` errors
2019-03-20 01:30:58 +01:00
Daniel Hahler
a50b92ea67
pytester: set HOME only with inline_run/popen
...
Ref: https://github.com/pytest-dev/pytest/issues/4955
2019-03-20 01:15:51 +01:00
Daniel Hahler
da81c1e49a
Merge pull request #4950 from blueyed/capture
...
Revisit capturing module: repr, doc fixes, minor
2019-03-20 01:12:22 +01:00
Bruno Oliveira
23ab43233e
Merge pull request #4920 from nicoddemus/subtests-pytest-1367
...
Internal refactorings required for *external* pytest-subtests plugin
2019-03-19 18:57:11 -03:00
Bruno Oliveira
1a119a22d1
Internal refactorings in order to support the new pytest-subtests plugin
...
Related to #1367
2019-03-19 18:20:41 -03:00
Daniel Hahler
920bffbfbb
Revisit _pytest.capture: repr, doc fixes, minor
2019-03-19 01:17:21 +01:00
Daniel Hahler
751c061d9a
Merge master into features
2019-03-19 01:07:10 +01:00
Daniel Hahler
a624b84097
Merge pull request #4941 from blueyed/testdir-home
...
pytester: testdir: set $HOME to tmpdir
2019-03-18 23:02:15 +01:00
Daniel Hahler
c75dd10671
pytester: testdir: set $HOME to tmpdir
...
This avoids loading user configuration, which might interfere with test
results, e.g. a `~/.pdbrc.py` with pdb++.
Also sets USERPROFILE, which will be required with Python 3.8 [1].
1: https://bugs.python.org/issue36264
2019-03-18 20:55:39 +01:00
Daniel Hahler
98981276a0
capture: fix FDCapture.__repr__ without targetfd_save
2019-03-18 02:33:03 +01:00
Daniel Hahler
15fe8c6e90
Handle -p plug after -p no:plug.
...
This can be used to override a blocked plugin (e.g. in "addopts") from the
command line etc.
2019-03-16 15:58:00 +01:00
Daniel Hahler
5e27ea5528
pytester: LineMatcher: assert Sequence when matching in order
...
This can be helpful when passing a set accidentally.
2019-03-15 23:07:08 +01:00
Bruno Oliveira
33d4c96aa2
Merge pull request #4830 from nicoddemus/warn-on-coroutine
...
Emit a warning when a coroutine test function is encountered
2019-03-15 09:51:34 -03:00
Takafumi Arakaki
fa3cca51e1
Test pytest.skip in doctest
2019-03-15 11:06:57 +09:00
Daniel Hahler
d441fa66fe
Fix line offsets with ScopeMismatch errors
...
Fixes https://github.com/pytest-dev/pytest/issues/4928 .
2019-03-15 02:47:33 +01:00
Daniel Hahler
7afe17740f
Merge master into features
2019-03-15 00:52:12 +01:00
Bruno Oliveira
40072b9511
Emit a warning when a async def function is not handled by a plugin
...
Fix #2224
2019-03-14 20:22:23 -03:00