Oliver Bestwalter
2b5c2f3ed5
help the user in the rare case this assertion actually fails
2016-06-21 14:57:48 +02:00
Omar Kohl
ede7478dcc
Exit pytest on collection error (without executing tests)
...
Add --continue-on-collection-errors option to restore the previous behaviour:
Execute tests (that were successfully collected) even when collection errors
happen.
Some tests had to be modified e.g. because the return code changed to 2
(EXIT_INTERRUPTED) instead of 1 (EXIT_TESTSFAILED) because an Interrupted
exception is raised on collection error.
Implemented via pair programming with:
Oleg Pidsadnyi <oleg.pidsadnyi@gmail.com>
closes #1421
2016-06-21 13:32:34 +02:00
Bruno Oliveira
819942e964
Return explicit None from rewrite hook's find_module
2016-06-21 12:28:36 +02:00
Bruno Oliveira
8b0fb47c79
Remove print left by accident
2016-06-21 12:23:12 +02:00
Tom Viner
5854a71ece
Issue 460: getfuncargvalue fixture w. params err
2016-06-21 11:29:21 +02:00
Floris Bruynooghe
9118c0222f
Merge .set_config() into constructor
2016-06-21 09:28:10 +02:00
Daniel Hahler
e53e45b55c
tests: getexecutable: call `--version` on all Pythons
...
This should prevent errors from pyenv:
pyenv: python2.6: command not found
The `python2.6' command exists in these Python versions:
2.6.9
While the pyenv wrapper explicitly returns 127, I think it is better to
just check for non-zero?!
2016-06-21 08:36:02 +02:00
Bruno Oliveira
3a81d2e012
conftest files now use assertion rewriting
...
Fix #1619
2016-06-20 23:13:29 +02:00
Florian Bruhin
4f2db6c08d
Merge pull request #1616 from palaviv/pytest.raises-message
...
Pytest.raises custom error message
2016-06-20 18:43:12 +02:00
palaviv
f8d4cadc3d
Added versionchanged directives
2016-06-19 23:56:43 +03:00
palaviv
c29130d400
Updated documentation
2016-06-19 23:34:42 +03:00
palaviv
ca093673fb
pytest.raises accept cutom message only when used as context manager
2016-06-19 21:24:47 +03:00
Bruno Oliveira
d81ee9acfb
Merge pull request #1597 from taschini/pyargs-fix
...
Ensure that a module within a namespace package can be found by --pyargs
2016-06-19 14:20:52 -03:00
Bruno Oliveira
72bf11cbe9
Add disabled() method to capsys and capfd
...
Fix #1599
2016-06-19 19:14:36 +02:00
palaviv
d21886c005
pytest.raises accpets custom message
2016-06-16 20:15:32 +03:00
Greg Price
ab8b2e75a3
Simplify default pytest_runtestloop
...
The inner function and the explanatory comment it makes necessary can
all be removed if we switch to an if/else rather than try/except for
this condition.
Perhaps this bit comes from my fondness for C, but I think I would
find this style clearer and easier to understand even if it weren't
for the Python 2 quirk that makes the other style require us to add an
unnecessary-looking function abstraction. In any case, given that the
alternative does require that abstraction this is definitely simpler.
2016-06-15 18:27:08 -07:00
Bruno Oliveira
308396ae3c
Merge pull request #1606 from hackebrot/show-fixtures-per-test
...
Show fixtures per test
2016-06-14 09:54:18 -03:00
taschini
4d9e293b4d
Incorporated feedback ( #1597 ).
...
Fixed problem caused in a test on Windows by file left open by PyPy and not immediately garbage collected.
2016-06-14 07:12:40 +02:00
taschini
e2e6e31711
Ensure that a module within a namespace package can be found by --pyargs.
2016-06-14 07:12:40 +02:00
Raphael Pierzina
adc50ac72f
Change format for test function locations
2016-06-12 15:58:32 +01:00
Guyzmo
accd962c9f
Fixed issue shadowing error when missing argument on teardown_method
...
When the method argument is missing on teardown_method, the traceback is
100% internal to pytest, which with default options get pruned. Then
that traceback is empty, leading to a new exception as a traceback shall
not be empty.
This PR fixes that issue by pushing back the last stack on the
traceback, when the stacktrace is empty after pruning. Then the output
is still pruned, but gives meaningful information with the item where it
failed on the stack.
* fixes issue #1604
Signed-off-by: Guyzmo <guyzmo+github@m0g.net>
2016-06-12 03:45:24 +02:00
Raphael Pierzina
b99aace8a9
Fix py26 by using indices in str.format
2016-06-12 00:52:03 +01:00
Raphael Pierzina
7eea168106
Implement show_fixtures_per_test and add cli flag
2016-06-12 00:20:06 +01:00
Bruno Oliveira
bdc29968b8
Remove dead code and simplify code in call_fixture_func
2016-06-08 21:07:56 -03:00
Bruno Oliveira
98acda426f
Remove yieldctx variable being passed around
2016-06-08 21:07:50 -03:00
Bruno Oliveira
d712428d33
Fix custom name for yield_fixtures
2016-06-08 21:07:49 -03:00
Bruno Oliveira
366879db27
Make normal fixtures work with "yield"
2016-06-08 21:07:47 -03:00
marscher
09d163aa3a
[exception handling] Fix case the current working directory (CWD) gets deleted during testing.
...
Fixes #1235 .
2016-06-08 15:18:23 +02:00
Thomas Grainger
74862b8f2f
Don't mark empty doctest files as skipped, fixes #1578
2016-06-01 19:19:14 +01:00
Ronny Pfannschmidt
fad6266a47
finish up the version bump in __init__ i forgot
2016-06-01 08:18:10 +02:00
Ronny Pfannschmidt
b5bd4d959d
merge master to features
2016-06-01 08:13:26 +02:00
Ronny Pfannschmidt
85541113eb
update version
2016-05-31 19:05:36 +02:00
Raphael Pierzina
0d80a9c729
Change _showfixtures_main to loop over fixturedefs
2016-05-31 11:47:16 +01:00
Ronny Pfannschmidt
158f3cfaea
merge master
2016-05-31 11:24:53 +02:00
Ronny Pfannschmidt
afc5c7e4f6
better message for empty argument skip
...
include the argument names to help determining the fixture/parametrization
2016-05-30 14:42:55 +02:00
Ronny Pfannschmidt
03eb9203fd
remove the old empty argument triggers
...
unlike the marker based one its not composable
2016-05-30 14:41:00 +02:00
Ronny Pfannschmidt
d217b52508
fix #510 by adding a describing skip marker on empty parameterize
2016-05-30 14:34:38 +02:00
Bruno Oliveira
8c1be624a6
Merge pull request #1554 from RonnyPfannschmidt/merge-master
...
Merge master into features
2016-05-24 11:09:33 -03:00
Ronny Pfannschmidt
16794feaf6
Merge branch 'master' into merge-master
2016-05-24 08:15:10 +02:00
Bruno Oliveira
9fb5ddf778
Fix shell argument split in win32
...
This fixes the bug inserted by accident in #1523
2016-05-23 20:41:47 -03:00
Bruno Oliveira
5ab5a11544
Merge pull request #1565 from tomviner/issue1544/ignore-build-dist-dirs
...
Issue 1544: norecursedirs build & dist dirs
2016-05-23 19:30:20 -03:00
TomV
d6dfb1a393
issue 1544: norecursedirs build & dist dirs
2016-05-23 21:02:29 +01:00
AbdealiJK
d4c9fa9f1a
unittest.UnitTestCase: Allow __test__ for methods
...
__test__ needs to be checked for methods of a class too. Earlier,
this was not done, and all methods in a class was assumed to be
a test. This commit adds the appropriate condition to ensure that
if the __test__ is set to False, it does not collect that method.
Fixes https://github.com/pytest-dev/pytest/issues/1558
2016-05-19 08:19:57 +05:30
Ronny Pfannschmidt
eab762ea99
Merge branch 'master' into merge-master
2016-05-13 19:37:41 +02:00
Ronny Pfannschmidt
c49863aa63
merge next chunk from master and fix changelog linting issue
2016-05-13 19:36:47 +02:00
Ronny Pfannschmidt
01d2ff804b
Merge commit '56156bb119194014129ac08c4a2c370f0b893104' into merge-master
2016-05-13 17:55:02 +02:00
John Towler
0d07b64571
Fixes Issue 1549
2016-05-05 11:29:05 -07:00
Benjamin Dopplinger
75abfbe8d4
Fix typo in doc
2016-04-28 14:40:17 +10:00
Ronny Pfannschmidt
6cc56b4a1b
Merge pull request #1535 from palaviv/parametrize-test-ids-hook
...
introduce pytest_make_parametrize_id hook
2016-04-27 16:16:16 +02:00
palaviv
9733127951
pytest_make_parametrize_id receive config object
2016-04-26 10:23:57 +03:00
Bruno Oliveira
fdee88f086
Merge pull request #1520 from omarkohl/invalid_test_module_name
...
Raise CollectError if import test module fails
2016-04-25 21:42:41 -03:00
palaviv
53429ed8b8
Added hook to plugin docs and new CHANGELOG record
2016-04-25 18:03:34 +03:00
palaviv
b9faf78d51
Added test_pytest_make_parametrize_id
2016-04-25 17:48:28 +03:00
palaviv
79927428d1
Added pytest_make_parametrize_id hook
2016-04-25 17:11:47 +03:00
Omar Kohl
56855893ca
Raise CollectError if import test module fails
...
One of the reasons for failing to import the test module is invalid Python
identifiers in the full package path of the test module.
fix #1426
2016-04-23 13:50:48 +02:00
Ronny Pfannschmidt
6d661ace0a
Merge pull request #1523 from MengJueM/master
2016-04-20 16:55:31 +02:00
Florian Bruhin
aa87395c39
Use py.builtin.callable
...
This restores compatibility with Python 3.0/3.1
2016-04-20 11:18:47 +02:00
Florian Bruhin
75160547f2
Use a callable __tracebackhide__ for filtering
...
While this leads to slightly more complicated user code for the common
case (checking if the exception is of a given type) it's easier to
implement and more flexible.
2016-04-20 11:09:27 +02:00
Florian Bruhin
b607f6728f
Filter selectively with __tracebackhide__
...
When __tracebackhide__ gets set to an exception type or list/tuple of
exception types, only those exceptions get filtered, while the full
traceback is shown if another exception (e.g. a bug in a assertion
helper) happens.
2016-04-20 10:25:33 +02:00
Florian Bruhin
c24e8e01b4
Fix TracebackItem documentation in pytest.code
...
The TracebackItem class does not exist, but it seems the docstrings refer to
TracebackEntry.
2016-04-20 08:35:17 +02:00
MengJueM
1a37035d71
Add test test_absolute_win32_path
2016-04-20 01:27:37 +08:00
TomV
99c4b6fdc3
issue 1496 - xfail with condition keyword
2016-04-19 18:12:37 +01:00
Meng Jue
dd2425675b
Fix a small issue about shlex.split not working well with win32 path
2016-04-19 13:08:08 +08:00
Martin Prusse
7ce5873da2
Perform a "unicode aware" check for maximum recursion depth error
...
Avoid errors `UnicodeErrosr`s due non maximum recursion depth errors
when checking for those errors.
2016-04-08 23:32:18 -03:00
Ronny Pfannschmidt
0f7aeafe7c
Merge pull request #1486 from roolebo/fix-issue-138
...
Fix issue #138 - support chained exceptions
2016-04-03 19:21:57 +02:00
Bruno Oliveira
e3bc6faa2b
Merge pull request #1470 from ceridwen/features
...
Escape both bytes and unicode strings for "ids" in Metafunc.parametrize
2016-04-03 13:48:30 -03:00
Omar Kohl
c578226d43
Implement ExceptionInfo.match() to match regexp on str(exception)
...
This implements similar functionality to
unittest.TestCase.assertRegexpMatches()
closes #372
2016-04-03 11:22:44 +02:00
Ceridwen
23a8e2b469
Add .hypothesis to .gitignore and try an older version of Hypothesis for 2.6
2016-04-02 11:47:37 -04:00
Ceridwen
491b30c5d9
Add Hypothesis test for _idval and fix bug it found
2016-04-01 22:45:44 -04:00
Tyler Goodlet
053c052190
Always lstrip() keyword expression
2016-04-01 13:10:05 -04:00
Ceridwen
9b438d56e8
Fix a test_unicode_idval_python2 (now test_unicode_idval) and associated string handling on Python 3
2016-04-01 12:27:17 -04:00
Roman Bolshakov
89df701ae9
Comment a workaround for #1485 .
2016-03-27 13:15:56 +03:00
palaviv
c66aedfa65
checking first there are duplciates ids before changing to unique names
2016-03-23 18:47:27 +02:00
palaviv
b8c15a0215
improved idmaker name selection in case of duplicate ids
2016-03-23 00:20:58 +02:00
Ceridwen
1f46015de5
Merge remote-tracking branch 'upstream/features' into features
2016-03-22 16:22:00 -04:00
Quentin Pradet
653a53226a
Add strict parameter to xfail marker doc
2016-03-22 16:01:51 +04:00
Quentin Pradet
1fbd19b8cb
Fix pytest.mark.skip mark when used in strict mode
2016-03-22 15:40:34 +04:00
Ceridwen
4405dd0ffe
Escape both bytes and unicode strings for "ids" in Metafunc.parametrize
2016-03-22 01:31:48 -04:00
palaviv
7885e43b78
Merge remote-tracking branch 'upstream/features' into allow-none-as-parametrized-test-id
2016-03-20 18:57:17 +02:00
palaviv
32f44ce2fd
updated parametrize documentation
2016-03-20 18:54:48 +02:00
Roman Bolshakov
a736e26734
Merge remote-tracking branch 'pytest-dev/master' into fix-issue-138
2016-03-20 01:04:22 +03:00
Roman Bolshakov
fbc5ba08d9
Fix issue #138
2016-03-20 01:02:17 +03:00
palaviv
be1954afbc
allow None to be passed in ids list for specific test and recieve idmaker name for test
2016-03-19 21:22:49 +02:00
Bruno Oliveira
5fcce8a7d6
Merge branch 'master' into merge-master-into-features
2016-03-18 18:26:56 -03:00
Bruno Oliveira
a70e92777f
Bump version to 2.9.2.dev1
2016-03-18 18:24:24 -03:00
nicoddemus
9bdf51fcc5
Bump version to 2.9.1
2016-03-17 17:03:46 -04:00
Tareq Alayan
fa6acdcfd4
junitxml: add properties node in testsuite level
...
The commit allow users to add a properties node in testsuite level see
example below:
<testsuite errors="0" failures="0" name="pytest" skips="1" tests="1"
time="11.824">
<properties>
<property name="ARCH" value="PPC"/>
<property name="OS" value="RHEL 7.2"/>
<property name="TestPlanURL" value="https://url .."/>
<property name="Automated" value="True"/>
</properties>
<testcase classname="git.....>
</testcase>
</testsuite>
The current situation is that properties node can be added to every
testcase node. However, sometimes we need some global properties that
applies to all testcases and give better description for the testsuite
itself.
2016-03-16 13:24:33 +02:00
Ronny Pfannschmidt
d70596da91
Merge pull request #1452 from palaviv/specify-paramterized-node-in-command-line
...
Specify paramterized node in command line - fixes #649
2016-03-16 11:16:54 +01:00
palaviv
a1277aaf0e
added TODO comment to remove the parametrized workaround
2016-03-15 23:42:25 +02:00
Kale Kundert
5ceee08590
Fix CHANGELOG merge conflicts.
2016-03-14 11:55:50 -07:00
Kale Kundert
0dcc862a56
Fix some typos in the documentation.
2016-03-14 11:38:00 -07:00
Kale Kundert
9e7206a1cf
Fix a few stylistic issues.
2016-03-14 11:29:45 -07:00
palaviv
1ee3d40dbe
allow parametrized nodes to be specified from command line
2016-03-13 23:37:21 +02:00
Daniel Hahler
bdddc9c38b
doc: fix argument order for pytest_load_initial_conftests
2016-03-12 17:35:27 +01:00
Kale Kundert
916c0a8b36
Fix Decimal() and __ne__() errors.
2016-03-11 16:29:18 -08:00
Kale Kundert
078448008c
Discuss alternative float comparison algorithms.
2016-03-11 15:59:48 -08:00
Kale Kundert
42a7e0488d
Properly handle inf, nan, and built-in numeric types.
...
This commit also:
- Dramatically increases the number of unit tests , mostly by borrowing
from the standard library's unit tests for math.isclose().
- Refactors approx() into two classes, one of which handles comparing
individual numbers (ApproxNonIterable) and another which uses the
first to compare individual numbers or sequences of numbers.
2016-03-11 08:49:26 -08:00
Ronny Pfannschmidt
4636bf6160
Merge pull request #1391 from malinoff/issue1342
...
LastFailed now creates .cache only when needed. Fixes #1342
2016-03-11 11:18:50 +01:00
Dmitry Malinovsky
52a5acda92
Use testscollected to make xdist happy
2016-03-11 14:48:17 +06:00
Bruno Oliveira
3ea987ef9d
Copy over name and path attributes to the re-raised exception
2016-03-10 18:13:59 -03:00
Mike Lundy
9577120592
Allow custom fixture names for fixtures
...
When defining a fixture in the same module as where it is used, the
function argument shadows the fixture name, which a) annoys pylint and
b) can lead to bugs where you forget to request a fixture into a test
method.
This allows one to define fixtures with a different name than the name
of the function, bypassing that problem.
2016-03-09 14:58:54 -08:00
Bruno Oliveira
7a186df271
Improve error message when a plugin fails to import
2016-03-08 19:18:13 -03:00
Kale Kundert
7d155bd3cf
Fix sys.version_info errors.
2016-03-08 10:12:31 -08:00
Kale Kundert
6a902924f8
Fix trailing whitespace errors.
2016-03-07 19:56:23 -08:00
Kale Kundert
c9c73b8d8e
Fix zero-length field name error in python2.6
2016-03-07 19:54:43 -08:00
Kale Kundert
5dab0954a0
Add approx() to the Sphinx docs.
2016-03-07 18:14:49 -08:00
Kale Kundert
b8a8382c2c
Reduce the default absolute error threshold to 1e-12.
2016-03-07 16:43:53 -08:00
Kale Kundert
bf97d5b817
Use the plus/minus unicode symbol in the repr string.
...
This was a challenge because it had to work in python2 and python3,
which have almost opposite unicode models, and I couldn't use the six
library. I'm also not sure the solution I found would work in python3
before python3.3, because I use the u'' string prefix which I think was
initially not part of python3.
2016-03-07 16:40:41 -08:00
Kale Kundert
dd28e28b34
Make a few stylistic improvements.
2016-03-07 10:10:54 -08:00
Kale Kundert
6f5e1e386a
Add a convenient and correct way to compare floats.
2016-03-07 10:10:54 -08:00
Ronny Pfannschmidt
6d4b14d7ee
Merge pull request #1438 from Bachmann1234/issue-1437
...
Make a good faith effort to display a bytestring when one is provided…
2016-03-06 06:48:32 +01:00
Ronny Pfannschmidt
fd0010e6e9
Merge pull request #1439 from pytest-dev/fix-1178
...
Support pytest.fail with non-ascii characters
Fixes #1178
2016-03-06 06:42:35 +01:00
Matt Bachmann
8ce32b0795
When a regex pattern contains bytes instead of a string use escape_encode to turn it into a string before further processing. Thanks @nicoddemus for the review and tips!
2016-03-05 21:04:34 -05:00
Bruno Oliveira
5d4703852e
Add test when using native strings with non-ascii chars
2016-03-05 19:34:15 -03:00
Bruno Oliveira
d8403d793f
Fix decoding issue while formatting SyntaxErrors during collection
...
This happens only in Python 2, as in Python 3 we receive
the "badline" in the exception is already properly encoded
Fix #578
2016-03-05 16:58:50 -03:00
Bruno Oliveira
24d3e01548
pytest.fail with non-ascii characters raises an internal pytest error
...
Fix #1178
2016-03-05 16:09:01 -03:00
Bruno Oliveira
819e0ead44
Mention that pytest_addoption may be used from conftest files
...
fix #1427
2016-03-03 18:26:01 -03:00
TomV
28530836c9
issue469: add fix junit double colon split issue
2016-03-02 22:18:57 +00:00
Matt Williams
891e029518
Add a new doctest_namespace fixture
...
This fixture can be used to inject names into the namespace in which
your doctests run.
2016-03-02 12:43:57 +00:00
Bruno Oliveira
c8c5a416ef
Bump version to 2.10.0.dev1
2016-03-01 18:48:13 -03:00
Bruno Oliveira
81af1c024a
Bump version to 2.9.1.dev1
2016-03-01 18:46:17 -03:00
nicoddemus
623e786524
Bump version to 2.9.0
2016-02-29 15:39:00 -05:00
Lukas Bednar
7e758a9dc6
junit: allow multiple properties with same name
...
It might happen that test can be affected by two or more bugs.
I need to be able to track them all.
2016-02-29 16:00:26 +01:00
Tiemo Kieft
424b46de1b
Fix a typo in the docstring for mark.MarkGenerator
2016-02-27 14:15:42 +01:00
Florian Bruhin
c9927bb66f
Merge pull request #1414 from rygwdn/indexerror
...
catch IndexError exceptions when getting exception source location
2016-02-26 18:53:10 +01:00
Anatoly Bubenkov
cf9a09e988
catch IndexError exceptions when getting exception source location
2016-02-26 08:18:12 -04:00
Bruno Oliveira
5f90907509
Fix skip/xfail markers in parametrized arguments
...
Fix #1412
2016-02-25 19:13:09 -03:00
Bruno Oliveira
96a331e32f
Display collect progress only when in a terminal
...
Fix #1397
2016-02-20 14:38:30 -02:00
Dmitry Malinovsky
e4d361b093
LastFailed now creates .cache only when needed. Fixes #1342
2016-02-16 11:42:04 +06:00
Bruno Oliveira
0eeb466f11
Fix strict xfail: it should behave exactly like xfail when a test fails
2016-02-15 19:18:48 -02:00
Bruno Oliveira
ee88679c54
Fix bug in strict xfail: test was not being actually called
2016-02-15 18:43:45 -02:00
Bruno Oliveira
7823838e69
Add strict option to xfail, making tests which XPASS to actually fail the suite
...
Fix #1355
2016-02-14 20:52:27 -02:00
Bruno Oliveira
a965386b9e
Add bool type to addini
2016-02-14 20:52:27 -02:00
Marcin Biernat
1b431d6644
fix formatting utf-8 error explanation
2016-02-12 20:28:06 +01:00
Ronny Pfannschmidt
bfa2fadac1
fix issue #1366 by showing a note on the --fulltrace option
2016-02-10 20:27:50 +01:00
Bruno Oliveira
51694b8295
Merge branch 'master' into issue1290-at-operator
2016-02-06 09:31:42 -02:00
TomV
7d107018e8
Fix #1290 : Py3.5's @ operator/assertion rewriting.
2016-02-05 23:09:57 +00:00
Ronny Pfannschmidt
de1a9f574c
merge from master
2016-02-05 00:10:28 +01:00
Georgy Dyuldin
79722ae89b
Add expected exceptions to 'DID NOT RAISE' msg
2016-02-03 14:12:41 +03:00
Michael Aquilina
e35ce98f89
Add explicit flag names for failed first and last failed
2016-01-27 21:28:38 +00:00
Bruno Oliveira
e43eaffd93
Remove unused import
2016-01-25 23:30:53 -02:00
Bruno Oliveira
7a6f902f6f
Drop assertionnew and assertionold from _pytest._code
2016-01-25 23:18:04 -02:00
Bruno Oliveira
a912d3745b
Moved py.code code over to py.test
...
Fix #103
2016-01-25 23:18:04 -02:00
Ronny Pfannschmidt
6c3e6401d4
begin 2.8.8 cycle
2016-01-24 23:56:56 +01:00
Ronny Pfannschmidt
64d7d00218
Prepare 2.8.7 release
2016-01-24 17:59:48 +01:00
Ronny Pfannschmidt
2d05f831fe
monkeypatch: unnest handling code
...
this avoid python3 nested exceptions
2016-01-24 12:28:14 +01:00
Ronny Pfannschmidt
cd9e30b221
work around python 2/3 difference by using str(exception)
2016-01-24 00:40:27 +01:00
Ronny Pfannschmidt
d028fe1e66
remove unused import
2016-01-23 20:29:54 +01:00
Ronny Pfannschmidt
b825af2e66
pass trough annotated exceptions
2016-01-23 19:31:17 +01:00
Ronny Pfannschmidt
60e9698530
fix issue 1338
2016-01-23 19:12:51 +01:00
Ronny Pfannschmidt
9e6bb74d71
reformat monkeypatch core plugin/its tests
2016-01-23 19:12:51 +01:00
Bruno Oliveira
199fcf93d4
Merge branch 'master' into 'features'
2016-01-22 18:32:45 -02:00
Bruno Oliveira
b7de0401b8
Bump version to 2.8.7.dev1
2016-01-22 17:59:25 -02:00
Bruno Oliveira
82d00efa8d
2.8.6 release: version, CHANGELOG
...
Remove note about expected failing envs in tox, as tox now supports
skipping certain environments based on the platform.
2016-01-21 19:17:53 -02:00
Georgy Dyuldin
b28b3cc271
Add captured stdout to jUnit report on setup error
2016-01-20 20:13:01 +03:00
Bruno Oliveira
7b13c4bec0
Fix flakes
2016-01-14 21:01:57 -02:00
Ronny Pfannschmidt
bc32e45bb6
Merge pull request #1314 from The-Compiler/ci-verbose
...
Always show full comparison output if on CI.
2016-01-11 10:05:15 +01:00
Florian Bruhin
3e5c9038ec
Always show full comparison output if on CI.
...
When you don't get enough information with a test running on a CI, it's quite
frustrating, for various reasons:
- It's more likely to be a flaky test, so you might not be able to reproduce
the failure.
- Passing -vv is quite bothersome (creating a temporary commit and reverting
it)
For those reasons, if something goes wrong on CI, it's good to have as much
information as possible.
2016-01-11 08:45:04 +01:00
Ronny Pfannschmidt
b2c0864fbf
Merge pull request #1318 from nicoddemus/doctest-unicode-error
...
Fix decode error in Python 2.7 when docstrings contain a non-ascii character
2016-01-11 08:37:24 +01:00
foxx
f46de68804
Fixes bug with stdout/stderr capture on pdb
2016-01-09 12:04:26 +00:00
Bruno Oliveira
3c19cfcd9a
Fix decode error in Python 2.7 when docstrings contain a non-ascii character
...
Fix #628
2016-01-08 23:10:02 -02:00
Bruno Oliveira
b8784c28c9
Merge branch 'master' into 'features'
2016-01-08 21:51:34 -02:00
Bruno Oliveira
369d9ecaa5
pytest warnings emitted during ``pytest_terminal_summary`` are now properly displayed.
...
Fix #1305
2016-01-04 00:07:45 -02:00
Ronny Pfannschmidt
6c170201d6
Merge branch 'master' into features
2016-01-02 23:56:01 +01:00
Ronny Pfannschmidt
bf4de4bd68
Merge pull request #1294 from nicoddemus/doctest-bytes-literals
...
Doctest bytes literals
2016-01-01 18:18:08 +01:00
Bruno Oliveira
1bdf71730a
Complement #1255 by adding tests and docs
...
Fix #1242
2015-12-30 18:24:59 -02:00
jab
0ea8dc0d40
make --doctest-glob multi-allowed
2015-12-30 17:32:14 -02:00
Bruno Oliveira
638b3f5e39
Make monkeypatch calls O(1)
...
Fix #1292
2015-12-29 22:04:35 -02:00
Bruno Oliveira
a0edbb75a4
Implement ALLOW_BYTES doctest option
...
Fix #1287
2015-12-29 20:55:19 -02:00
Ulrich Petri
8d49abb0d1
Make monkeypatch differentiate ImportError sources
...
Previously `monkeypatch` assumed that any `ImportError` was caused by
a mistake in the specified import path. However this assumption is false
in case the import target itself causes an `ImportError`.
Fixes : #900
2015-12-27 22:44:23 +01:00
Bruno Oliveira
5afb61ad26
Fix trailing white-space
2015-12-25 17:51:55 -02:00
Bruno Oliveira
57bc14caa0
Apply readline workaround during initial conftest loading
2015-12-25 17:46:19 -02:00
Erik M. Bray
6e170a4a1c
* Moved workaround to its own function, mostly for the sake of adding
...
a more descriptive docstring (the workaround itself is just to import
readline earlier). I removed the conditional on targetfd from the
workaround since it doesn't really matter.
* Added # noqa marker.
* Added changelog entry, and self to authors.
2015-12-24 16:43:34 -05:00
Erik M. Bray
924a9667e1
Make sure readline has been imported before duping any stdio handles--otherwise pyreadline fails to connect to the correct handle for the console's stdout/in.
2015-12-24 14:56:57 -05:00
Bruno Oliveira
943099ddd1
Merge newinterpret into reinterpret.py
2015-12-16 18:31:43 -02:00
Bruno Oliveira
81588d7f63
Remove obsolete "oldinterpret" module
2015-12-16 16:16:22 -02:00
Bruno Oliveira
af893aab26
Remove code related to support python <= 2.5
...
Fix #1226
2015-12-16 16:16:22 -02:00
Ronny Pfannschmidt
8bf7e7cc4b
fixes #1259 - take finalized nodes out of the mapping
...
this allows double node id usage for file based items
2015-12-16 19:09:44 +01:00
Bruno Oliveira
2b2bec6b97
Remove experimental status from pytest_exception_interact
2015-12-16 14:29:39 -02:00
Bruno Oliveira
6ac31088c5
Merge branch 'master' into merge-master-into-features
2015-12-11 23:13:50 -02:00
Bruno Oliveira
e87facfb22
Bump master to 2.8.6.dev1
2015-12-11 23:07:30 -02:00
Bruno Oliveira
a124163425
Prepare for 2.8.5: bump version, CHANGELOG, announce
2015-12-11 19:20:07 -02:00
Bruno Oliveira
86b6ce5042
Merge remote-tracking branch 'upstream/master' into merge-master-into-features
2015-12-10 19:41:14 -02:00
Bruno Oliveira
8b61a332ba
Merge remote-tracking branch 'bukzor/features-merge-master' into features
2015-12-10 19:03:55 -02:00
aselus-hub
ec02f694ef
Update python.py
...
updated dictionary itteration to create a list for generation, so that tests can be added in the generator functions under python3. This works fine as-is in python2 because python 2 already creates a list, whereas python3 returns an itterator. Forcing a list format for the return fixes python3 to work the same way as python2
2015-12-09 11:32:19 -08:00
Bruno Oliveira
1c46462991
Fix deprecated_call regression introduced in 2.8.4
...
Fix #1238
2015-12-08 22:40:05 -02:00
Buck Golemon
eabf2f9091
Merge branch 'master' into features
...
Conflicts:
AUTHORS
_pytest/__init__.py
_pytest/hookspec.py
_pytest/recwarn.py
testing/test_recwarn.py
2015-12-07 14:28:59 -08:00
David Vierra
fbac936596
Add -rp and -rP options to report passing tests.
...
-rP is an alternative to `-s` for viewing the output of passing tests.
This causes the captured stdout/stderr of passing tests to be output in
the same way as that of failing tests.
-rp adds a simple one-line-per-test summary for passing tests.
Neither option is included by -ra.
Additional changes to `pytest_capturelog` and `pytest_catchlog` are
needed for this option to also output captured logs: They must be
changed to use `rep.sections.add` instead of `rep.longrepr.addsection`,
and to add these additional sections even if the test passes, since
passing tests don't seem to have a `longrepr` at report time.
2015-12-07 11:32:56 -10:00
Ronny Pfannschmidt
7b7737bf96
handle duplicate test ids via collection and xdist each reporting
2015-12-07 21:54:25 +01:00
Ronny Pfannschmidt
9ea7826427
Junitxml: correct node reporter attribute names
2015-12-07 21:54:25 +01:00
Ronny Pfannschmidt
09cc45b0c5
junitxml: correct docstring of make_properties_node
2015-12-07 21:54:25 +01:00
Ronny Pfannschmidt
0aa54101c9
junitxml: follow Bruno's attribute/method naming hint from the review
2015-12-07 21:54:25 +01:00
Ronny Pfannschmidt
518c88f149
finalize nodereporters by throwing away the intermediate xml nodes, fixes issue #1074
2015-12-07 21:54:25 +01:00
Ronny Pfannschmidt
5f5a7995b9
reintroduce junitxml report order and debug cleanups
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
0528e5b45f
junitxml: intermediate, move testcase generation to NodeReporter
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
9b04958303
junitxml: keep track of custom property insert order
...
+ review: should we allow the same key multile times
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
faed54d6c7
junitxml: use node.warn to ensure fslocations
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
1f609f96e6
junitxml: introduce nodereporter and track durations/properties there
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
0664ae137c
junitxml: remove debug print
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
d0107c898e
junitxml restrucutre stat generation - use node tags
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
2a31df072b
junitxml: reverse the if/else logic for failure appending
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
02f5defd89
yapf junitxml
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
c727860241
bump to 2.8.5.dev
2015-12-06 20:31:14 +01:00
Ronny Pfannschmidt
a3353c49fd
prepare release 2.8.4 - changelog updates + version bump
2015-12-06 16:13:55 +01:00
Bruno Oliveira
14bc3c4009
Fix pastebin when captured output contains non-ascii characters
...
Fix #1219
2015-12-03 20:07:18 -02:00
Bruno Oliveira
a54e4e64cd
Merge remote-tracking branch 'upstream/master' into pastebin-py3
2015-12-01 23:51:14 -02:00
Bruno Oliveira
6a2ebddc7c
Decode urlopen response in pastebin
...
Fix #1198
2015-12-01 23:33:37 -02:00
Jeff Widman
6be6798cdf
Fix spelling: explicitely --> explicitly
2015-12-01 01:41:47 -08:00
Florian Bruhin
0d2668017d
Fix spelling mistake in #1207 .
2015-11-30 17:33:34 +01:00
Florian Bruhin
aba55a0fb2
Fix terminal output if no tests were run.
...
Before:
==== in 0.00 seconds ====
After:
==== no tests run in 0.00 seconds ====
2015-11-30 17:24:40 +01:00
Ronny Pfannschmidt
b5d65e5139
Merge pull request #1206 from The-Compiler/collect-getattr
...
Don't collect classes with truthy __getattr__.
2015-11-30 17:23:47 +01:00
Florian Bruhin
ba9146c131
Don't collect classes with truthy __getattr__.
...
When we have a metaclass which returns something truthy (like a method) in its
__getattr__, we collected the class because pytest thought its __test__
attribute was set to True.
We can work around this to some degree by assuming __test__ will always be set
to an explicit True if that's what the user has intended, and if it's something
other than that, this is probably a mistake.
Fixes #1204 .
2015-11-30 16:41:13 +01:00
Florian Bruhin
c790f7475e
Fix getting line number with nasty __getattr__.
...
When an object has a custom __getattr__ which always returns a non-int, we
tried to get compat_co_firstlineno from it and checked it was a integer, which
caused an exception if such a class is mistakenly collected.
If we still mistakenly collect such a class (which is likely to be something
other than a test), we now skip it with a warning (because it probably has an
__init__) instead of producing an error.
See #1204 .
2015-11-30 16:13:15 +01:00
mehdy
81ad1689b9
fix #1198 - removed docoding the result
2015-11-29 19:20:37 +03:30
mehdy
44f60ba141
fixed #1198 issue by encoding the unicode parameters to bytes and decoding the
...
bytes response to unicode
2015-11-29 18:27:05 +03:30
Bruno Oliveira
603d81ef2f
deprecated_call now uses monkey patching strategy to capture warnings
...
similar to what we had in 2.7, with a few enhancements
Fix #1190
2015-11-26 16:48:58 -02:00
Bruno Oliveira
6378cdf7a9
Restored 2.7 implentation of deprecated_call
2015-11-26 15:54:57 -02:00
Bruno Oliveira
b20803f0a6
Mention pytest_enter_pdb in the docs
2015-11-23 18:00:02 -02:00
Ronny Pfannschmidt
df767cca8f
Merge pull request #1188 from nicoddemus/pytest_enter_pdb
...
Pass pytest config object to pytest_enter_pdb
2015-11-23 20:55:33 +01:00
Bruno Oliveira
b3166a538c
Pass pytest's config object to pytest_enter_pdb
2015-11-23 14:42:21 -02:00
Bruno Oliveira
1f148a93ec
Mention pytest_enter_pdb in the docs
2015-11-23 13:02:15 -02:00
Ronny Pfannschmidt
af46ffe021
bump to 2.8.4.dev
2015-11-19 22:01:34 +01:00
Ronny Pfannschmidt
3dc57d99f2
Changelog groming and release preps for 2.8.3
2015-11-18 17:34:30 +01:00
Bruno Oliveira
7d6edb9ca5
Fix unittest.skip decorator test and separate the fix into a different, self-doc function
2015-11-04 19:54:18 -02:00
Lee Kamentsky
313050b15b
Suggested edits by Bruno.
...
Moved fix to TestCaseFunction.setup. Added myself to AUTHORS and added entry to CHANGELOG
2015-11-04 15:30:16 -05:00
LeeKamentsky
8de2c035e2
Fixes #1169
...
The unittest.skip decorator runs @functools.wraps on self._testcase. functools.wraps expects a "__name__" attribute and this patch adds one. It might not be the correct fix, but it works for me.
2015-11-04 13:52:40 -05:00
Ronny Pfannschmidt
9013cb1b4c
Merge pull request #1144 from The-Compiler/elcapitan-sip
...
Handle EPERM when writing rewritten bytecode.
2015-11-01 08:20:00 +01:00
Gabriel Reis
f3f61fb5d1
Color highlight on the name of the failed tests
2015-10-28 08:12:57 +00:00
John Vandenberg
9a04879129
Remove commented out extrainit
...
Unused since 2012, and the docstring syntax is incorrect with
four quotes.
2015-10-20 21:08:21 +11:00
Florian Bruhin
2956627b8b
Handle EPERM when writing rewritten bytecode.
...
Fixes #1143 .
2015-10-17 11:55:55 +02:00
Bruno Oliveira
311b0a9683
Fix situation where a traceback entry "path" returns a str object
...
Fix #1133
2015-10-16 20:18:14 -03:00
Michael Birtwell
a3bda59a30
collection: Prevent non-function callables from being collected
...
Fixes issue 331
previously to this change the collection code would issue a warning for
when ever it encountered a variable that looked like a test but wasn't a
function saying that it wouldn't collect it because it wasn't a function.
This fixes the logic so that if that warning is issued it really isn't
collected.
However previously special cases existed to support tests that were
created using functools.wraps and functools.partial. So the condition for
issuing that warning has been updated to take that in to account
Also try the old way of detecting functions just for proper integration
with mock.path in python 2.7 the get_real_func returned the unbound method
2015-10-12 22:23:18 +01:00
Ronny Pfannschmidt
db077555f6
Merge pull request #1102 from nicoddemus/doctest-fixtures-fix
...
Fix autouse fixtures and doctest modules
2015-10-10 14:21:53 +02:00
TomV
88c8dd96f9
issue1035 Override inspect.isclass for python 2.6
2015-10-09 19:44:47 +01:00
Buck Golemon
0e55a8793f
all tests pass
2015-10-09 09:58:12 -07:00
Buck Golemon
49d46a0059
an ugly patch to fix all but the most important part =/
2015-10-08 10:44:58 -07:00
Florian Bruhin
b5b53b6aec
start 2.8.3 development
2015-10-07 17:56:05 +02:00
Florian Bruhin
7c529e0afe
Merge branch '2.8.2-release'
2015-10-07 17:51:34 +02:00
Florian Bruhin
42937d4bb6
Prepare 2.8.2 release.
2015-10-06 21:06:25 +02:00
Demian Brecht
493530ec6d
typo fix, changed position of context manager notes
2015-10-05 12:13:25 -07:00
Bruno Oliveira
a14c77aeba
Fix problems when mixing autouse fixtures and doctest modules
...
The main problem was that previously DoctestModule was setting
up its fixtures during collection, instead of letting
each DoctestItem make its own fixture setup
Fix #1100
Fix #1057
2015-10-03 16:07:14 -03:00
Michael Aquilina
df874db817
Update default reason to "unconditional skip"
2015-10-03 17:02:18 +01:00
Michael Aquilina
25d74a5919
Dont explicitly inherit from object
2015-10-03 16:55:04 +01:00
Michael Aquilina
213dbe7a5f
newlines
2015-10-03 16:42:15 +01:00
Michael Aquilina
9e57954b03
First argument in pytest.mark.skip is a reason
2015-10-03 16:42:15 +01:00
Michael Aquilina
eee24138b0
Fix failing test
2015-10-03 16:42:15 +01:00
Michael Aquilina
04545f8a54
classes inherit from object
2015-10-03 16:42:15 +01:00
Michael Aquilina
ad0b8e31b8
Fix case where skip is assigned to as an attribute directly
2015-10-03 16:42:14 +01:00
Michael Aquilina
b71add27da
Add MarkEvaluator for skip
2015-10-03 16:42:14 +01:00
Bruno Oliveira
5171d167ce
Move "note" to the end of the main text
...
Fix #1097
2015-10-02 18:14:17 -03:00