Bruno Oliveira
9543d1901f
Group warnings by message instead of by test id
2019-01-22 19:42:22 -02:00
Bruno Oliveira
e4a21b11d5
Change test_warningschecker_twice to a unittest
2019-01-09 18:58:51 -02:00
Victor Maryama
948a5d5ac6
Added test for Issue 4617
2019-01-09 12:31:26 +01:00
Bruno Oliveira
fd48cd57f9
Remove config.warn, Node.warn; pytest_logwarning issues a warning when implemented
...
Fix #3078
2018-12-14 12:50:18 -02:00
Daniel Hahler
5ebacc49c6
Harden tests, fix doc/msg
2018-12-05 19:22:44 +01:00
Tomer Keren
e1e4b226c6
👌 Address code review
...
Edited the changelog for extra clarity, and to fire off auto-formatting
Oddly enough, keeping `filename='{filename!r}'` caused an error while
collecting tests, but getting rid of the single ticks fixed it
Hopefully closes #3191
2018-12-05 10:52:12 +02:00
Tomer Keren
e0c2ab1901
Fix tests not to assert a function that already asserts
...
Maybe there should be a warning about that too?
2018-12-05 10:41:30 +02:00
Tomer Keren
9fc9b2926f
Fix tests and add aditional cases
...
As requested by review.
👌 Address code review for tests
2018-12-05 10:41:30 +02:00
Tomer Keren
1654b77ca0
[ #3191 ] Set up tests to confirm warnings
2018-12-05 10:41:18 +02:00
Bruno Oliveira
aa765cf8c2
Adjust stacklevel of "config" warnings
...
Related to #4439
2018-11-22 14:44:01 -02:00
Bruno Oliveira
dc20dedbc7
Change RemovedInPytest4Warnings to errors by default
...
To keep existing tests which emit RemovedInPytest4Warnings running, decided
to go with a command line option because:
* Is harder to integrate an ini option with tests which already use an ini file
* It also marks tests which need to be removed/updated in 4.1, when
RemovedInPytest4Warning and related functionality are removed.
Fix #3737
2018-11-12 16:10:57 -02:00
Bruno Oliveira
2ad43ee442
Show node that originated a warning in the warnings summary
...
Fix #4221
2018-10-24 18:49:53 -03:00
Bruno Oliveira
18035211f5
Use safe_str() to format warning message about unicode in Python 2
...
Fix #3691
2018-10-18 21:56:17 -03:00
Bruno Oliveira
c30184709d
Show deprecation warnings even if filters are customized
...
Fix #4013
2018-09-22 10:25:57 -03:00
Bruno Oliveira
ab40696007
-W now takes precedence over filters in ini files
...
Fix #3946
2018-09-11 19:00:42 +02:00
Bruno Oliveira
f63c683faa
No longer escape regex in pytest.mark.filterwarnings
...
Fix #3936
2018-09-05 10:20:25 -03:00
Bruno Oliveira
2e0a7cf78d
Revert to having just "runtest" as "when" parameter of the pytest_warning_captured hook
2018-09-04 17:01:23 -03:00
Bruno Oliveira
438f7a1254
Add "setup", "call" and "teardown" values to "when" parameter of pytest_warning_captured hook
2018-09-04 15:53:17 -03:00
Bruno Oliveira
56d414177a
Remove nodeid from messages for warnings generated by standard warnings
...
Standard warnings already contain the proper location, so we don't need
to also print the node id
2018-09-04 11:35:34 -03:00
Bruno Oliveira
60499d221e
Add test to ensure that users can suppress internal warnings
2018-09-04 11:35:34 -03:00
Bruno Oliveira
9965ed84da
Show deprecation warnings by default if no other filters are configured
...
Fix #2908
2018-09-04 11:35:34 -03:00
Bruno Oliveira
78ac7d99f5
Deprecate Config.warn and Node.warn, replaced by standard warnings
2018-09-04 11:35:34 -03:00
Bruno Oliveira
1a9d913ee1
Capture and display warnings during collection
...
Fix #3251
2018-09-04 11:35:06 -03:00
Bruno Oliveira
3fcc4cdbd5
Make terminal capture pytest_warning_capture
...
pytest_logwarning is no longer emitted by the warnings plugin,
only ever emitted from .warn() functions in config and item
2018-09-04 11:35:06 -03:00
Bruno Oliveira
ffd47ceefc
Implement new pytest_warning_captured hook
2018-09-04 11:35:00 -03:00
Sankt Petersbug
212ee450b7
simplified test function
2018-08-14 20:29:42 -05:00
Sankt Petersbug
6367f0f5f1
fix `filterwarnings` mark not registered
2018-08-14 16:13:15 -05:00
Anthony Sottile
cbaa7dd56a
Upgrade pre-commit hooks except pyupgrade
2018-06-26 06:35:27 -07:00
Ronny Pfannschmidt
703e4b11ba
run black
2018-05-23 16:48:46 +02:00
Bruno Oliveira
796db80ca4
Only escape str-like arguments passed to warnings
...
Fix #2956
2017-11-27 23:17:15 -02:00
Bruno Oliveira
983a09a2d4
Merge remote-tracking branch 'upstream/master' into merge-master-into-features
2017-11-10 18:33:02 -02:00
Bruno Oliveira
3900879a5c
Mark test_py2_unicode as xfail in PyPy2 on Windows
...
#2905
2017-11-09 19:17:17 -02:00
Bruno Oliveira
df6d5cd4e7
Use ascii_escaped to escape unicode warnings
2017-10-03 12:19:37 -03:00
Bruno Oliveira
fbb9e9328b
Fix warning about non-ascii warnings even when they are ascii
...
Fix #2809
2017-10-03 07:39:53 -03:00
Bruno Oliveira
0726d9a09f
Turn warnings into errors in pytest's own test suite
...
Fix #2588
2017-07-22 21:44:18 -03:00
Bruno Oliveira
7341da1bc1
Introduce pytest.mark.filterwarnings
2017-07-20 22:31:49 -03:00
Andras Tim
7248b759e8
Fixed E303 flake8 errors
...
too many blank lines (3)
2017-07-17 01:44:23 +02:00
Andras Tim
b840622819
Fixed E302 flake8 errors
...
expected 2 blank lines, found 0
2017-07-17 01:44:23 +02:00
Andras Tim
6146ac97d9
Fixed E101 flake8 errors
...
indentation contains mixed spaces and tabs
2017-07-17 01:28:16 +02:00
Bruno Oliveira
9d41eaedbf
Issue UnicodeWarning only for non-ascii unicode
...
Fix #2463
2017-06-05 10:43:15 -03:00
Bruno Oliveira
32e2642233
No longer override existing warning filters during warnings capture
...
Fix #2430
2017-05-30 17:17:36 -03:00
wanghui
d7a5c5716f
Add UnicodeWarning for unicode warnings in Python2
2017-05-26 13:12:02 +08:00
wanghui
c39689da41
Correct warnings with unicode message.
2017-05-25 17:59:42 +08:00
Bruno Oliveira
78194093af
Improve warning representation in terminal plugin and fix tests
2017-03-16 21:57:32 -03:00
Bruno Oliveira
337f891d78
Fixed tests
2017-03-16 20:01:47 -03:00
Bruno Oliveira
272afa9422
Display node ids and the warnings generated by it
...
The rationale of using node ids is that users can copy/paste it to run a chosen test
2017-03-04 20:53:42 -03:00
Bruno Oliveira
de09023e45
Also capture warnings during setup/teardown
2017-03-04 16:15:03 -03:00
Bruno Oliveira
e24081bf76
Change warning output
2017-03-04 15:59:20 -03:00
Bruno Oliveira
82785fcd40
Use warnings.catch_warnings instead of WarningsRecorder
...
This has the benefical side-effect of not calling the original
warnings.showwarnings function, which in its original form
only writes the formatted warning to sys.stdout.
Calling the original warnings.showwarnings has the effect that nested WarningsRecorder all catch the warnings:
with WarningsRecorder() as rec1:
with WarningsRecorder() as rec2:
warnings.warn(UserWarning, 'some warning')
(both rec1 and rec2 sees the warning)
When running tests with `testdir`, the main pytest session would then see the warnings created by
the internal code being tested (if any), and the main pytest session would end up with warnings as well.
2017-02-18 13:08:14 -02:00
Bruno Oliveira
26ca5a702e
Add tests and integrated the original code into the core
2016-11-21 08:26:43 -02:00