Commit Graph

382 Commits

Author SHA1 Message Date
Ronny Pfannschmidt 78a027e128 simplyfy ascii escaping by using backslashreplace error handling 2017-08-30 16:43:16 +02:00
Tyler Goodlet 312891daa6 Add a trivial changelog entry 2017-08-25 15:34:42 -04:00
Joe Talbott 67161ee9f8 Add changelog item for PR #2721. 2017-08-25 10:06:45 -04:00
Kirill Pinchuk 12b1bff6c5 `compat.safe_getattr` now catches OutcomeExceptions too 2017-08-23 17:17:03 +03:00
Bruno Oliveira a993add783 Allow tests declared as @staticmethod to use fixtures
Fix #2699
2017-08-17 20:44:19 -03:00
Antonio Hidalgo 2a99d82c3b Fixed error in 'Good Practices' code snippet 2017-08-16 00:26:14 +02:00
Ronny Pfannschmidt 5c0feb2877 Merge pull request #2680 from prokaktus/skipping-same-module
Fold skipped tests with global pytestmark variable
2017-08-15 10:52:24 +02:00
prokaktus 98bf5fc9be Fold skipped tests with global pytestmark variable 2017-08-15 02:18:46 +03:00
Andreas Pelme 39331856ed Use the correct stacklevel for getfuncargvalue() deprecation warning.
Fixed #2681.
2017-08-13 14:59:33 +02:00
Ronny Pfannschmidt eb462582af fix #2675 - store marks correctly in callspecs 2017-08-10 19:46:36 +02:00
Bruno Oliveira fd84c886ee Merge pull request #2671 from nicoddemus/release-3.2.1
Release 3.2.1
2017-08-09 17:15:21 -03:00
Felipe Dau acd3c4fbc4 Update changelog for #2653 2017-08-09 02:57:36 +00:00
Bruno Oliveira 45d2962e97 Preparing release version 3.2.1 2017-08-08 21:11:11 +00:00
Bruno Oliveira cc0f2473eb Fix windows console workaround error with non-standard io-streams
Fix #2666
2017-08-07 20:57:13 -03:00
Srinivas Reddy Thatiparthy a0101f024e remove os.sep as it behaves differently linux and windows.
* on linux it is '/'

* on windows it is '\'
2017-08-05 23:21:43 +05:30
Ronny Pfannschmidt d5f4496bdf Merge pull request #2656 from nicoddemus/unittest-features
Document which pytest features work with `unittest`
2017-08-05 09:38:02 +02:00
Bruno Oliveira 15cdf137d5 Document which pytest features work with `unittest`
Fix #2626
2017-08-04 07:44:04 -03:00
Ronny Pfannschmidt 9e62a31b63 Merge pull request #2650 from srinivasreddy/2642
Fixed#2642: Convert py module references to six module
2017-08-04 09:21:51 +02:00
Bruno Oliveira 2e33d9b35e Add changelog entry for using six for portability 2017-08-04 00:03:43 -03:00
Bruno Oliveira ad52f714a9 Fix small terminal glitch when collecting a single test item
Fix #2579
2017-08-03 20:57:46 -03:00
Bruno Oliveira 1deac2e210 Properly escape test names when setting PYTEST_CURRENT_TEST environment variable
Fix #2644
2017-08-01 20:52:37 -03:00
Bruno Oliveira 40254b64e5 Merge branch 'master' into features 2017-08-01 19:35:56 -03:00
Ronny Pfannschmidt dcaeef7c10 take review comments into account 2017-07-31 22:21:09 +02:00
Ronny Pfannschmidt c68a89b4a7 remove preinit, its no longer needed 2017-07-31 13:44:05 +02:00
Bruno Oliveira 07dd1ca7b8 Preparing release version 3.2.0 2017-07-30 21:37:18 +00:00
Bruno Oliveira 763c580a2a Merge pull request #2576 from maiksensi/feat/raise-not-implemented-for-lt-gt-in-approx
#2003 Change behavior of `approx.py` to only support `__eq__` comparison
2017-07-30 17:48:33 -03:00
Bruno Oliveira e1aed8cb17 Merge pull request #2490 from RonnyPfannschmidt/fix-580
Test Outcomes as BaseException - fix #580
2017-07-30 17:38:42 -03:00
Bruno Oliveira 713f7636e1 Merge pull request #2632 from jmoldow/pep_0415_suppress_exception_context
Support PEP-415's Exception.__suppress_context__
2017-07-30 17:22:40 -03:00
Bruno Oliveira 4cd8727379 Merge pull request #2617 from wence-/fix/nondeterministic-fixtures
Fix nondeterminism in fixture collection order
2017-07-30 17:17:40 -03:00
Jordan Moldow 2e61f702c0 Support PEP-415's Exception.__suppress_context__
PEP-415 states that `exception.__context__` should be suppressed
in traceback outputs, if `exception.__suppress_context__` is
`True`.

Now if a ``raise exception from None`` is caught by pytest,
pytest will no longer chain the context in the test report.

The algorithm in `FormattedExcinfo` now better matches the one
in `traceback.TracebackException`.

`Exception.__suppress_context__` is available in all of the
versions of Python 3 that are supported by pytest.

Fixes #2631.
2017-07-29 02:39:17 -07:00
Ronny Pfannschmidt 06a49338b2 make Test Outcomes inherit from BaseException instead of exception
fixes #580
2017-07-28 15:28:51 +02:00
Bruno Oliveira 62810f61b2 Make cache plugin always remember failed tests 2017-07-27 14:40:21 -03:00
Bruno Oliveira 17c544e793 Introduce new pytest_report_collectionfinish hook
Fix #2622
2017-07-27 10:44:29 -03:00
Bruno Oliveira 3d89905114 Merge remote-tracking branch 'upstream/master' into features 2017-07-26 19:01:28 -03:00
Mihai Capotă 10ded399d8 Show multiple issue links in CHANGELOG entries
Restores the functionality removed in PR #2488.
2017-07-26 10:58:06 -07:00
Lawrence Mitchell f047e078e2 Mention new (py26) ordereddict dependency in changelog and docs 2017-07-26 14:41:10 +01:00
Lawrence Mitchell a546a612bd Fix nondeterminism in fixture collection order
fixtures.reorder_items is non-deterministic because it reorders based
on iteration over an (unordered) set.  Change the code to use an
OrderedDict instead so that we get deterministic behaviour, fixes #920.
2017-07-26 14:41:10 +01:00
Bruno Oliveira dd294aafb3 Merge pull request #2557 from blueyed/EncodedFile-name
capture: ensure name of EncodedFile being a string
2017-07-26 10:39:10 -03:00
Bruno Oliveira 2c2cf81d0a Merge pull request #2580 from andras-tim/fix-runpytest-subprocess
Avoid interactive pdb when pytest tests itself - fix #2023
2017-07-26 10:37:48 -03:00
Bruno Oliveira 80f4699572 approx raises TypeError in Python 2 for comparison operators other than != and == 2017-07-25 20:07:10 -03:00
Maik Figura 1851f36beb Add PR requirements changelog and authors 2017-07-25 19:19:14 -03:00
Daniel Hahler 0603d1d500 capture: ensure name of EncodedFile being a string
Fixes https://github.com/pytest-dev/pytest/issues/2555.
2017-07-25 20:37:37 +02:00
Bruno Oliveira 1a42e26586 Improve changelog wording to be more user-oriented 2017-07-25 13:37:06 -03:00
Bruno Oliveira 595ecd23fd Merge pull request #2548 from blueyed/skip-fix-lineno
Fix lineno offset in show_skipped
2017-07-25 13:35:14 -03:00
Daniel Hahler 869eed9898 Fix lineno offset in show_skipped
The line number is 0-based here, so add 1.
2017-07-25 15:19:47 +02:00
Daniel Hahler 72531f30c0 Improve error message for CollectError with skip/skipif 2017-07-25 15:14:28 +02:00
Bruno Oliveira 73c6122f35 Merge remote-tracking branch 'upstream/master' into features 2017-07-24 21:12:51 -03:00
Bruno Oliveira 70d9f8638f Merge pull request #2610 from AgriConnect/doctest-lineno
Report lineno from doctest
2017-07-24 16:29:02 -03:00
Nguyễn Hồng Quân dea671f8ba Add changelog for #2610 2017-07-24 22:01:03 +07:00
Bruno Oliveira d90bef44cc Update changelog file for #2510 2017-07-24 09:31:16 -03:00
Segev Finer df12500661 Create 2611.bugfix 2017-07-24 15:28:20 +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
Andras Tim 50764d9ebb Avoid interactive pdb when pytest tests itself - fix #2023
The debugging.py calls post_mortem() on error and pdb will drops an
interactive debugger when the stdin is a readable fd.
2017-07-21 21:29:03 +02:00
Bruno Oliveira 6461dc9fc6 Merge pull request #2600 from RonnyPfannschmidt/mark_explicit_params
fix #2540, introduce mark.with_args
2017-07-21 10:42:25 -03:00
Ronny Pfannschmidt 65b2de13a3 fix #2540, introduce mark.with_args 2017-07-21 13:37:09 +02:00
Bruno Oliveira 7341da1bc1 Introduce pytest.mark.filterwarnings 2017-07-20 22:31:49 -03:00
Bruno Oliveira 3c28a8ec1a Improve formatting/grammar of changelog entries 2017-07-20 22:12:15 -03:00
Bruno Oliveira 22f54784c2 Add "fix-lint" tox environment to fix linting errors 2017-07-20 22:12:15 -03:00
Bruno Oliveira abb5d20841 Merge branch 'master' into features 2017-07-20 22:10:58 -03:00
Floris Bruynooghe 56e6b4b501 Merge pull request #2578 from Llandy3d/2375
Provides encoding attribute on CaptureIO
2017-07-20 23:14:14 +02:00
Bruno Oliveira d44565f385 Merge remote-tracking branch 'upstream/master' into fix-flake8-errors 2017-07-19 17:57:30 -03:00
Bruno Oliveira 26ee2355d9 Merge remote-tracking branch 'upstream/features' into fix-flake8-errors 2017-07-19 17:09:05 -03:00
Bruno Oliveira c92760dca8 Merge branch 'fix-flake8-issues' 2017-07-19 17:03:36 -03:00
Raphael Pierzina e73a2f7ad9 Add changelog entry changelog/971.doc 2017-07-19 19:38:21 +02:00
Bruno Oliveira 2d4f1f022e Introduce PYTEST_CURRENT_TEST environment variable
Fix #2583
2017-07-19 10:01:50 -03:00
Bruno Oliveira 4fd92ef9ba Merge branch 'fix-flake8-issues' into features 2017-07-17 21:05:39 -03:00
Andras Tim b2a5ec3b94 updated meta 2017-07-17 02:16:51 +02:00
Llandy Riveron Del Risco ba9a76fdb3 Provides encoding attribute on CaptureIO
Fix #2375
2017-07-16 14:29:00 +02:00
Martin Altmayer 2a979797ef Add a changelog entry. 2017-07-15 13:43:59 +02:00
Alex Hartoto 97fdc9a7fe Ensure final collected line doesn't include artifacts
We sometimes would see the following line:
collected 1 item s

just because previous write to the terminal includes number of
characters greater than 'collected 1 item'.
2017-07-13 12:11:20 -07:00
Ronny Pfannschmidt 81cec9f5e3 Merge pull request #2563 from pv/yield-warn-spam
Make YIELD_TEST warning less spammy
2017-07-13 10:45:46 +02:00
Ronny Pfannschmidt 1485a3a902 Merge pull request #2566 from jmsdvl/iss2518
Detect and warn/ignore local python installations
2017-07-13 10:44:04 +02:00
John Still 67fca04050 update docs and note; add virtualenv collection tests 2017-07-11 23:14:38 -05:00
John Still c2d49e39a2 add news item 2017-07-11 13:01:56 -05:00
Bruno Oliveira d9aaab7ab2 Merge remote-tracking branch 'upstream/master' into features 2017-07-10 17:51:59 -03:00
Pauli Virtanen 8a7d98fed9 Make YIELD_TEST warning less spammy
Emit it only once per each generator, rather than for each generated
function. Also add information about which test caused it to be emitted.
2017-07-10 21:41:09 +02:00
John Still cdd788085d add news fragment to changelog folder 2017-07-10 12:37:12 -05:00
V.Kuznetsov bd52eebab4 changelog for ini option cache_dir 2017-07-07 13:20:39 +03:00
Ronny Pfannschmidt ef62b86335 Merge pull request #2492 from kalekundert/features
Add support for numpy arrays (and dicts) to approx.
2017-07-06 11:46:51 +02:00
Ronny Pfannschmidt 7cd03d7611 Merge pull request #2554 from nicoddemus/pytest-configure-order
Clarify pytest_configure hook call order
2017-07-05 14:22:55 +02:00
Bruno Oliveira 3667086acc Clarify pytest_configure hook call order
Fix #2539
2017-07-05 07:50:59 -03:00
Bruno Oliveira 221f42c5ce Change --strict help message to clarify it deals with unregistered markers
Fix #2444
2017-07-04 20:14:57 -03:00
Bruno Oliveira b62aef3372 Merge branch 'master' into features 2017-07-04 12:44:58 -03:00
Bruno Oliveira b63f6770a1 Preparing release version 3.1.3 2017-07-03 23:29:13 +00:00
Bruno Oliveira 6908d93ba1 Merge pull request #2475 from ant31/master
[wip] Fix ignore_path condition
2017-07-03 18:57:17 -03:00
Bruno Oliveira c578418791 Add changelog for triple leading '/' problem. 2017-07-03 12:39:17 -03:00
Nathaniel Waisbrot 9b9fede5be
allow staticmethods to be detected as test functions
Allow a class method decorated `@staticmethod` to be collected as a test
function (if it meets the usual criteria).

This feature will not work in Python 2.6 -- static methods will still be
ignored there.
2017-06-29 07:44:36 -04:00
Ronny Pfannschmidt 9b51fc646c Merge pull request #2526 from nicoddemus/merge-master-into-features
Merge master into features
2017-06-24 11:25:35 +02:00
Ronny Pfannschmidt 6eeab45a8f Merge pull request #2525 from nicoddemus/deprecate-old-style
Add changelog entry explicitly deprecating old-style classes from pytest API
2017-06-24 11:24:53 +02:00
Bruno Oliveira 3de93657bd Merge remote-tracking branch 'upstream/master' into merge-master-into-features 2017-06-24 00:47:48 -03:00
Bruno Oliveira 655d44b413 Add changelog entry explicitly deprecating old-style classes from pytest API
Related to #2147
2017-06-24 00:37:40 -03:00
Ronny Pfannschmidt 0d0b01bded introduce deprecation warnings for legacy parametersets, fixes #2427 2017-06-23 22:06:49 +02:00
Bruno Oliveira 6e2b5a3f1b Merge pull request #2523 from RonnyPfannschmidt/vendoring-tasks
Vendoring tasks
2017-06-23 16:55:32 -03:00
Ronny Pfannschmidt b3bf7fc496 add tasks for updating vendored libs 2017-06-23 21:26:45 +02:00
Bruno Oliveira 6de19ab7ba Show "trivial" category in CHANGELOG
I think it might sense to display in the CHANGELOG internal or
trivial changes because they might trip users between releases.

For example, a note about an internal refactoring (like
moving a class between modules) is useful for a user
that has been using the internal API. Of course
we are not breaking anything because it was an internal API, but no
reason not to save time for users who did use it.
2017-06-23 12:33:50 -03:00
Ronny Pfannschmidt b0b6c355f7 fixup changelog, thanks Bruno 2017-06-23 11:09:16 +02:00
Bruno Oliveira 22b7701431 Merge pull request #2480 from nicoddemus/issue-2469-deprecated-call-ctx
deprecated_call context manager captures warnings already raised
2017-06-22 10:53:28 -03:00
Ronny Pfannschmidt 5e832017d5 Merge pull request #2487 from nicoddemus/recursion-error-2486
Fix internal error when trying to detect the start of a recursive traceback
2017-06-22 13:40:32 +02:00
Ronny Pfannschmidt c791895c93 changelog addition 2017-06-22 10:50:46 +02:00
Ronny Pfannschmidt 31b971d79d Merge pull request #2488 from nicoddemus/issue-links-changelog
Add issue links in the CHANGELOG entries
2017-06-14 10:58:59 +02:00
Ronny Pfannschmidt 4e57a39067 Merge pull request #2468 from nicoddemus/collection-report-2464
Fix incorrect "collected items" report when specifying tests on the command-line
2017-06-14 10:57:57 +02:00
Ronny Pfannschmidt af0344e940 Merge pull request #2500 from nicoddemus/issue-2434-doctest-modules
Fix decode error in Python 2 for doctests in docstrings
2017-06-14 05:52:44 +02:00
Bruno Oliveira 336cf3e1f5 Merge pull request #2496 from rmfitzpatrick/pytest2440_handle_subrequest_finalizer_exceptions
Handle exceptions in subrequest finalizers
2017-06-13 23:03:03 -03:00
Bruno Oliveira 4e4ebbef5a Improve test to ensure the expected function is re-raised 2017-06-13 20:16:48 -03:00
Bruno Oliveira b09d60c60a Fix decode error in Python 2 for doctests in docstrings
Fix #2434
2017-06-13 19:41:34 -03:00
Raphael Pierzina 0e73724e58 Add changelog/2499.trivial 2017-06-13 15:15:52 +02:00
Max Moroz 4a992bafdb Changelog 2017-06-12 19:55:30 -07:00
Ryan Fitzpatrick 5a856b6e29 handle and reraise subrequest finalizer exceptions 2017-06-12 21:26:42 -04:00
Kale Kundert 89292f08dc
Add a changelog entry. 2017-06-11 19:51:21 -07:00
Ronny Pfannschmidt f8b2277413 changelog fragment 2017-06-11 14:17:40 +02:00
Bruno Oliveira 536f1723ac Add issue links in the CHANGELOG entries
This unfortunately no longer supports multiple entries with the same text,
but this is worth the improved readability and navigation IMO
2017-06-10 12:25:40 -03:00
Bruno Oliveira 8bb589fc5d Fix internal error when trying to detect the start of a recursive traceback.
Fix #2486
2017-06-09 19:26:26 -03:00
Bruno Oliveira 7cbf265bb5 Preparing release version 3.1.2 2017-06-08 17:37:42 -04:00
Ronny Pfannschmidt 917b9a8352 Merge pull request #2476 from nicoddemus/fix-2459-numpy-comparison
Fix internal error when a recursion error occurs and frames contain objects that can't be compared
2017-06-07 20:34:36 +02:00
Bruno Oliveira 2127a2378a Fix internal error with recursive tracebacks with that frames contain objects that can't be compared
Fix #2459
2017-06-07 14:40:13 -03:00
Ronny Pfannschmidt d2db6626cf Merge pull request #2466 from nicoddemus/remove-unicode-warning
Remove UnicodeWarning from pytest warnings
2017-06-07 08:00:36 +02:00
Bruno Oliveira 620ba5971f deprecated_call context manager captures warnings already raised
Fix #2469
2017-06-06 22:40:04 -03:00
Bruno Oliveira 80944e32ad Add CHANGELOG entry 2017-06-06 09:09:54 -03:00
Bruno Oliveira 9d41eaedbf Issue UnicodeWarning only for non-ascii unicode
Fix #2463
2017-06-05 10:43:15 -03:00
Bruno Oliveira 87e4a28351 Fix incorrect collected items report when specifying tests on the command-line
Fix #2464
2017-06-03 20:39:53 -03:00
Bruno Oliveira 5ee9793c99 Fix CHANGELOG issue id
Fix #2467
2017-06-03 17:34:05 -03:00
Segev Finer 01ed6dfc3b Added a changelog entry for the WindowsConsoleIO workaround 2017-06-02 12:38:31 +03:00
Segev Finer f74f14f038 Fix --help with required options
This works by adding an argparse Action that will raise an exception in
order to skip the rest of the argument parsing. This prevents argparse
from quitting due to missing required arguments, similar to the way that
the builtin argparse --help option is implemented by raising SystemExit.

Fixes: #1999
2017-06-01 21:29:50 +03:00
Bruno Oliveira bcbad5b1af Merge pull request #2140 from pelme/issue2121
Handle python_files correctly in assertion rewrite
2017-06-01 07:55:42 -03:00
Bruno Oliveira 409d2f1d54 Make it clear that pytest.xfail stops the test
Also did a general review of the document to improve the flow

Fix #810
2017-05-31 19:54:01 -03:00
Andreas Pelme 5de203195c Add changelog for #2121 2017-05-31 08:29:19 +02:00
Bruno Oliveira 2fd7626046 Preparing release version 3.1.1 2017-05-30 17:19:34 -04:00
Bruno Oliveira 0540d72c87 Add extra space between changelog items 2017-05-30 17:15:31 -04:00
Bruno Oliveira 1dee443c2b Merge pull request #2445 from nicoddemus/warnings-remove-filter
No longer override existing warning filters during warnings capture
2017-05-30 18:14:01 -03:00
Bruno Oliveira 32e2642233 No longer override existing warning filters during warnings capture
Fix #2430
2017-05-30 17:17:36 -03:00
Bruno Oliveira f96a1d89c5 pytest.deprecated_call now captures PendingDeprecationWarning in context manager form
Fix #2441
2017-05-30 12:52:18 -03:00
Ronny Pfannschmidt b74c626026 switch changelog management to towncrier 2017-05-30 15:54:15 +02:00