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
b5bd4d959d
merge master to features
2016-06-01 08:13:26 +02:00
Raphael Pierzina
fb8ad714b1
Implement a test for showfixtures to show fixtures with same name
2016-05-31 11:47:16 +01:00
Ronny Pfannschmidt
158f3cfaea
merge master
2016-05-31 11:24:53 +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
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
Ronny Pfannschmidt
85393d34b6
Merge pull request #1561 from AbdealiJK/ajk/1558_feature
...
unittest.UnitTestCase: Allow __test__ for methods
2016-05-19 10:17:28 +02: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
ec5e05834f
fix typo
2016-05-18 21:35:31 +02:00
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
Ronny Pfannschmidt
98dd2ce75c
document reason for #1540
2016-04-28 16:22:31 +02:00
Ronny Pfannschmidt
308e76e19c
add xfailing test for #1540
2016-04-28 16:11:30 +02: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
b9faf78d51
Added test_pytest_make_parametrize_id
2016-04-25 17:48:28 +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
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
4c552d4ef7
Fix tests for python 2.6
2016-04-20 10:36:13 +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
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
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
Ceridwen
b631fc0bc1
Fix test_escaped_parametrized_names_xml
2016-04-01 21:30:45 -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
palaviv
b8c15a0215
improved idmaker name selection in case of duplicate ids
2016-03-23 00:20:58 +02: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
palaviv
7885e43b78
Merge remote-tracking branch 'upstream/features' into allow-none-as-parametrized-test-id
2016-03-20 18:57:17 +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
4b0237c8ee
added test for unique names when recievieng identical ids in parametrize
2016-03-19 21:42:47 +02:00
palaviv
877ca5a0bf
added test for None in paramtrized ids list
2016-03-19 21:38:24 +02:00
palaviv
a8cfd54871
added test for None in idmaker
2016-03-19 21:23:49 +02:00
Bruno Oliveira
5fcce8a7d6
Merge branch 'master' into merge-master-into-features
2016-03-18 18:26:56 -03: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
Kale Kundert
5ceee08590
Fix CHANGELOG merge conflicts.
2016-03-14 11:55:50 -07:00
palaviv
1ee3d40dbe
allow parametrized nodes to be specified from command line
2016-03-13 23:37:21 +02:00
Kale Kundert
916c0a8b36
Fix Decimal() and __ne__() errors.
2016-03-11 16:29:18 -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
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
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
TomV
3d2b7aeea5
issue469: junit parsing nodeid, add method test
2016-03-03 09:12:56 +00: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
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
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
Ryan Wooden
d98d655094
Simplify IndexError test.
2016-02-26 08:25:49 -04:00
Anatoly Bubenkov
cf9a09e988
catch IndexError exceptions when getting exception source location
2016-02-26 08:18:12 -04:00
Bruno Oliveira
d9ede1bac2
Add test for unconditional skip with reason
2016-02-25 20:02:34 -03: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
Bruno Oliveira
9f85d4c952
mark test_comments as xfail on pypy
...
while migrating this code it was noticed that this test was failing even
on the original py repository, so it was decided to xfail it and investigate
later
2016-01-25 23:18:04 -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
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
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
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
Ronny Pfannschmidt
ec5a429c77
junitxml tests: extend with extra items
2015-12-17 22:30:27 +01:00
Ronny Pfannschmidt
713069ebd4
implement review comments for #1266
2015-12-17 22:27:01 +01: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
6ac31088c5
Merge branch 'master' into merge-master-into-features
2015-12-11 23:13:50 -02:00
aselus-hub
1216a27b44
added docstrign to inection collection test.
2015-12-10 15:19:08 -08:00
aselus-hub
74f7efd2a3
added line comparison that is pytest-sugar agnostic.
2015-12-10 15:10:55 -08:00
aselus-hub
34db8aed34
added verification that test actually passed.
2015-12-10 15:02:57 -08:00
aselus-hub
af54e09759
nit: fixed newline
2015-12-10 14:46:51 -08:00
aselus-hub
dfaeefd692
added test to verify injection.
2015-12-10 14:45:36 -08: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
David Vierra
ccfd962170
Add "no -rP" case to test_pass_output_reporting
2015-12-08 17:33:03 -10:00
David Vierra
b417d7cb79
Add tests to test_terminal.py for -rp and -rP
2015-12-08 15:54:23 -10: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
5ccb7b1ced
update test_recwarn to new style
2015-12-08 11:08:33 -08: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
Ronny Pfannschmidt
7b7737bf96
handle duplicate test ids via collection and xdist each reporting
2015-12-07 21:54:25 +01:00
Ronny Pfannschmidt
04e9ae75c8
add xfailing test for double test id failure
2015-12-07 21:54:25 +01:00
Ronny Pfannschmidt
5eef6a2821
junitxml: fix python3 compat of the tests
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
d0107c898e
junitxml restrucutre stat generation - use node tags
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
9128fec4c4
junitxml: simplify the api used for testing junitml
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
80bcf8d624
junitxml: simplify tests by creating a api wrapper
2015-12-07 21:54:24 +01:00
Ronny Pfannschmidt
b8df5446c0
junitxml: yapf clean the tests
2015-12-07 21:54:24 +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
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
f9b1e39b8a
fix #1198 - decoding monkeypatched data to unicode
2015-11-29 19:42:50 +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
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
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
Lee Kamentsky
1833547936
Added test for issue #1169
...
(I undid my fix, checked for failure, redid my fix and it passes)
2015-11-04 14:24:22 -05: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
Buck Golemon
67236d6de3
strengthen the ini assertion
2015-10-09 09:58:12 -07: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
Buck Golemon
616d8251f3
unit tests of Config.fromdictargs. currently failing
2015-10-08 10:44:58 -07:00
TomV
707226298a
issue1035 add test for classes setting __getattr__
2015-10-08 09:08:32 +01: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
8984177448
TestXFail also shouldnt explicitly inherit from object
2015-10-03 17:12:44 +01:00
Michael Aquilina
00d0c74657
Update reason in test to prevent confusing with test_no_reason
2015-10-03 17:01:21 +01:00
Michael Aquilina
fc0bd9412c
Test that "unconditional skip" is the default reason if none given
2015-10-03 17:00:16 +01:00
Michael Aquilina
5ff9a0ff54
Remove redundant comments
2015-10-03 16:59:27 +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
1b5aa2868d
Check no reason displayed if none specified
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
d1628944a6
Update skippings tests for better coverage
2015-10-03 16:42:15 +01:00
Michael Aquilina
771aef9ddb
Add a test_skip_class test
2015-10-03 16:42:15 +01:00
Michael Aquilina
f144666f8b
Work towards test coverage of mark.skip
2015-10-03 16:42:14 +01:00
Michael Aquilina
4e94135d36
Remove incorrect use of pytest.mark.skip
2015-10-03 16:42:14 +01:00
Bruno Oliveira
f3cee8f0b5
Merge remote-tracking branch 'upstream/master' into param-ids-fix
2015-10-01 07:58:55 -03:00
Bruno Oliveira
d1e00f6e19
Detect dynamic code explicitly in filter_traceback
2015-09-30 17:32:49 -03:00
Bruno Oliveira
11f100813e
Fix internal error when filtering tracebacks where one entry was generated by an exec() statement
...
Fix #995
2015-09-29 22:29:43 -03:00
Bruno Oliveira
b64470443f
Fix SystemError when using unicode_escape on Python 3
...
Fix #1087
2015-09-29 18:20:30 -03:00
Bruno Oliveira
8633c4cefd
Fix encoding errors for parametrized tests with unicode parameters in py2
...
Fix #1085
2015-09-29 17:57:49 -03:00
Ronny Pfannschmidt
04deea3c6d
fix flaky get_user fallback tests
2015-09-29 21:00:12 +02:00
holger krekel
cb58eaa611
Merge remote-tracking branch 'upstream/master' into features
...
Conflicts:
_pytest/__init__.py
testing/test_recwarn.py
2015-09-29 15:56:41 +02:00
holger krekel
a73d517bee
Merge pull request #1080 from vodik/master
...
fix #1034 : Add missing nodeid on pytest_logwarning call in addhook. Thanks Simon Gomizelj for the PR.
2015-09-29 09:07:43 +02:00
Simon Gomizelj
b3727438d6
Add missing nodeid on pytest_logwarning call in addhook.
...
Otherwise KeyError: 'nodeid' gets thrown, killing pytest. This may fix
issue 1034, but the details of it may be caused by something similar
somewhere else.
2015-09-28 20:23:54 -04:00
Eric Hunsberger
4194c9cce2
Check `deprecated_call` specific to deprecation
...
`deprecated_call` used to accept any warning. As of #897 , it
is now specific to DeprecationWarnings, and another commit in
this PR extends this to PendingDeprecationWarnings. This commit
makes sure this stays the case.
2015-09-28 12:35:24 -04:00
Eric Hunsberger
e8261e0c77
`deprecated_call` detects pending warnings again
...
`deprecated_call` now looks for PendingDeprecationWarnings,
as it did previously but was broken by #897 . Fixes #1037 .
Also added a test so this does not happen again.
2015-09-28 12:11:52 -04:00
holger krekel
4e3a807733
fix issue #1073 -- shortcut plugin hook lookup if the attrname is not
...
prefixed with pytest_.
2015-09-28 13:34:28 +02:00
holger krekel
0c05ca1fd5
Merge branch 'master' into features
2015-09-26 10:03:42 +02:00
Bruno Oliveira
748da0e5d7
Fix xml generation when used with pytest-xdist
...
pytest_runtest_logreport must be careful to not depend on setup/call/teardown
being called sequentially in that order, as xdist will call them as they are reported
from the slaves
Fix #1064
2015-09-26 03:21:24 -03:00
holger krekel
4867554eec
Merge branch 'master' into features
2015-09-23 16:42:42 +02:00
Bruno Oliveira
e1063678f1
escape bytes when creating ids for parametrized values
2015-09-22 23:18:09 -03:00
Bruno Oliveira
661495e5c5
Write failing test for parametrized tests with unmarshable parameters
...
Related to #1030 ; committing directly to pytest repository to
get feedback from others on how to proceed.
2015-09-22 23:18:07 -03:00
Ronny Pfannschmidt
7f776fe19a
skip chmod using cache access warning tests on windows
2015-09-22 20:49:11 +02:00
Ronny Pfannschmidt
ea9a491fb3
add an acceptance test for cache write errors
2015-09-22 20:24:37 +02:00
Ronny Pfannschmidt
29f4da93d4
handle access errors when writing cache files silently as pytest warning, fixes #1039
2015-09-22 16:28:19 +02:00
Ronny Pfannschmidt
36924b59bd
Merge branch '653-deprecated-context-manager' of https://github.com/chiller/pytest into features
2015-09-22 15:14:06 +02:00
holger krekel
41d61ed221
Merge pull request #1023 from RonnyPfannschmidt/fix-877
...
Fix 877
2015-09-22 11:17:02 +02:00
Galaczi Endre
beaa8e55bd
Fixes #653 use deprecated_call as context_manager
2015-09-21 19:01:23 +01:00
Andy Freeland
b1c9b8b415
Make tmpdir resiliant to user ids that do not exist
...
Previously, the tmpdir fixture would fail if the current process's user
id does not correspond to a valid user (e.g. running pytest in a Docker
container with 'docker run -u').
2015-09-18 21:26:19 -04:00
Ronny Pfannschmidt
49c99a41ea
reencode non-ascii python2 assertion reprs, fixes #877
...
i decided against using a warning since the problem goes away with python3
the support code can be removed once we drop python2 in 10 years or so
2015-09-19 00:30:01 +02:00
Ronny Pfannschmidt
1aca998f3f
Merge pull request #1012 from lukas-bednar/junitxml_plugin
...
junitxml: align custom properties with junit format
2015-09-18 16:01:22 +02:00
Bruno Oliveira
e4d5f88257
Fix install cx_freeze
2015-09-17 23:32:27 -03:00
Bruno Oliveira
3a8e375efe
Fix import
2015-09-17 14:52:51 -03:00
Bruno Oliveira
f5f3a2a928
Fix flaky failure about unused shutil
2015-09-17 12:54:02 -03:00
Bruno Oliveira
6bca5a1c25
Use temporary directory for cx_freeze testing
2015-09-17 11:54:44 -03:00
Lukas Bednar
02a2272cfe
junitxml: move custom properties to properties element
...
<testsuite>
<testcase>
<properties>
<property name="ABC" value="XYZ" />
<property name="DEF" value="ZYX" />
</properties>
</testcase>
</testsuite>
2015-09-17 15:56:41 +02:00
holger krekel (rather uses bitbucket/hpk42)
3bcda48ba4
Merge pull request #1009 from mdboom/deprecation-warnings
...
avoid deprecation warnings, introduce helpers.
2015-09-17 13:37:26 +02:00
Florian Bruhin
f978b545c5
Merge pull request #1016 from hpk42/importappend3
...
revert importing test module behaviour to prepend by default
2015-09-17 12:41:28 +02:00
Michael Droettboom
7f71ce0ab2
Reorganize tests
2015-09-16 16:52:37 -04:00
holger krekel
a62d12634c
revert importing test module behaviour to prepend by default
2015-09-16 22:12:20 +02:00
holger krekel (rather uses bitbucket/hpk42)
886ac82c43
Merge pull request #1013 from nicoddemus/issue1010
...
Make tmpdir more resilient in case environment variables required by getpass are missing
2015-09-16 21:57:44 +02:00
Florian Bruhin
2575053697
Merge pull request #1015 from hpk42/cache-integration
...
refined pytest-cache integration
2015-09-16 21:46:46 +02:00
Bruno Oliveira
130e6cf8a2
Use temproot as a fallback if the current user couldn't be obtained
2015-09-16 16:42:07 -03:00
holger krekel
45065e4e2e
refine command line option naming and docs
2015-09-16 20:41:22 +02:00
Bruno Oliveira
558e5406e8
test_get_user should execute on windows only
2015-09-16 13:06:39 -03:00
Bruno Oliveira
1150e87e31
Extract get_user logic into a separate function
2015-09-16 12:47:50 -03:00
Bruno Oliveira
6676aeda5a
Make tmpdir more resilient in case environment variables required by getpass are missing
...
Fix #1010
2015-09-16 12:20:07 -03:00
Michael Droettboom
9a84c9edb6
Add tests for argument formatting
2015-09-16 11:02:48 -04:00
Michael Droettboom
a0cefb3213
Use inspect.signature instead of inspect.getargspec
2015-09-16 06:33:53 -04:00
Bruno Oliveira
a13f23d218
Merge branch 'master' into vendor-pluggy
2015-09-14 12:22:18 -03:00
Ronny Pfannschmidt
cd475c7b27
minor flake8 fixes
2015-09-13 19:55:44 +02:00
Ronny Pfannschmidt
1e107e6bd1
restrucure pytest.main.wrap_session to allow for non-testrun wraps
2015-09-13 19:55:44 +02:00
Ronny Pfannschmidt
2e87cf4a62
create the previously missing cache fixture
...
there was a disabled test
2015-09-13 19:55:44 +02:00
Ronny Pfannschmidt
1de38a25fc
use flake8 in the flakes testenv
...
and extend the ignored errors list so pytest is clean
we def have to trim down that one
2015-09-13 19:55:44 +02:00
Ronny Pfannschmidt
e035f57535
s/--cache/--show-cache/
2015-09-13 19:55:44 +02:00
Ronny Pfannschmidt
e20216a1a8
merge the pytest-cache plugin into core
2015-09-13 19:55:44 +02:00
Bruno Oliveira
41d2faccea
Merge branch 'issue_960' of https://github.com/Akasurde/pytest
2015-09-12 10:57:23 -03:00
Abhijeet Kasurde
dd69394598
Added testcase and help for report option
...
Fix added to show help of new reporting option 'a'.
Also, added testcase for checking reporting functionality
with option 'a'.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2015-09-11 12:24:45 +05:30
Bruno Oliveira
0b3f1b4a7c
Create `_pytest.vendored_packages` and _pytest._pluggy
...
- Replace imports from "pluggy" to "_pytest._pluggy"
- Fallback to import "pluggy" from global namespace if
not found in _pytest.vendored_packges
2015-09-07 13:01:54 -03:00
Bruno Oliveira
8625eb643e
Merge pull request #986 from RonnyPfannschmidt/early-logging
...
replay initial warnings when terminalreporter is loaded
2015-09-02 19:10:53 -03:00
Ronny Pfannschmidt
76f0988551
turn the pytest_logwarning hook historic
2015-09-02 18:49:49 +02:00
Ronny Pfannschmidt
348e519437
Merge pull request #962 from nicoddemus/doctest-skip
...
Make doctest SKIP option register doctests as SKIPPED rather than PASSED
2015-09-01 12:31:35 +02:00
Ronny Pfannschmidt
7292212d5a
Merge pull request #976 from nicoddemus/ren-warnings-on-terminal
...
Rename "warnings" to "pytest-warnings" in terminal output
2015-09-01 07:56:42 +02:00
Bruno Oliveira
4ad56e84a8
Make doctest SKIP option register doctests as SKIPPED rather than PASSED
...
Fix 957
2015-08-31 21:25:11 -03:00
Florian Bruhin
19791546da
Add docstring.
2015-08-31 15:11:57 +02:00
Florian Bruhin
885e461ae3
Fix overriding of fixtures with parametrization.
...
Fixes #979 , see #926 .
2015-08-31 14:38:39 +02:00
Bruno Oliveira
c0eec5d61c
Merge pull request #975 from nicoddemus/fix-regression-parse-known-args
...
Fix regression caused by changing the signature for parse_known_args
2015-08-29 23:44:32 -03:00
Brianna Laugher
c493f263b6
Merge branch 'Elizaveta239-master' closes #908
2015-08-29 17:34:35 +10:00
Bruno Oliveira
dd7112d5ea
Show a few diff lines when truncating string diffs
...
Fix #934
2015-08-27 22:20:13 -03:00
Brianna Laugher
b49bedcf0c
Merge branch 'master' of git://github.com/Elizaveta239/pytest into Elizaveta239-master
2015-08-28 11:10:22 +10:00
Bruno Oliveira
e59471766a
Rename "warnings" to "pytest-warnings" in terminal output
...
Fix #970
2015-08-27 19:59:52 -03:00
Bruno Oliveira
4533a50542
Fix regression caused by changing the signature for parse_known_args
...
Fix #973
2015-08-27 19:35:32 -03:00
Bruno Oliveira
42b43a7d7b
Paths after normal options are now properly used to discover rootdir and ini files
...
Fix #949
2015-08-25 22:08:05 -03:00
elizabeth
e67d66a5d4
Merge branch 'pytest-dev'
...
# Conflicts:
# AUTHORS
2015-08-24 22:55:11 +03:00
Ronny Pfannschmidt
b25e41e348
Merge pull request #956 from nicoddemus/record-xml-property
...
add preliminary support for extended junit xml properties
2015-08-24 09:13:04 +02:00
Bruno Oliveira
70da93145d
Improve docs and using warning system for record_xml_property fixture
2015-08-23 11:56:27 -03:00
elizabeth
06585f5bdd
Always report error about parametrize data that doesn't correspond to fixtures in test functions.
2015-08-23 13:42:40 +03:00
David Diaz
2ddbac1f98
Correcting implementation based on pull request feed back
2015-08-21 14:31:53 -06:00
Ronny Pfannschmidt
287df16c9c
Merge pull request #817 from nicoddemus/non-collection-exit-error
...
return non-zero exit code if no tests are collected
2015-08-21 18:30:57 +02:00
Bruno Oliveira
d7d418cd47
Fix forked_run_report in pytest.xdist 1.13
2015-08-20 21:17:27 -04:00
David Diaz
24212fd97f
Add support to record custom properties on xml output
2015-08-20 17:55:38 -06:00
Bruno Oliveira
2ffd37b816
return non-zero exit code if no tests are collected
...
Fix #812
Fix #500
2015-08-18 07:35:02 -03:00
Ronny Pfannschmidt
7758bcd141
terminalwriter: extract plugin printing logic and add positive unittests
2015-08-17 09:10:01 +02:00