Bruno Oliveira
5891061ac1
Merge pull request #1675 from kvas-it/issue-1562
...
Add warning for assertions on tuples #1562
2016-06-26 16:09:15 -03:00
RedBeardCode
1b0dbd8c40
Move the freezing function from genscript.py to a new module freeze_support.py
2016-06-26 19:37:24 +02:00
RedBeardCode
0e2ebc96ff
Remove deprecated cmd options
...
Fixes #1657
2016-06-26 19:26:04 +02:00
aostr
1ce4670062
* removed tailing whitespaces
2016-06-26 06:51:57 +02:00
Vasily Kuznetsov
c17027e576
Warn about asserts on tuples ( fixes #1562 )
2016-06-25 19:21:48 +02:00
aostr
e04d9ff80b
* now showing pytest warnings summary by default.
...
* added ``--disable-pytest-warnings` flag to let users disable the warnings summary.
* extended/changed unit tests for the changes in the pytest core.
2016-06-25 18:16:13 +02:00
RedBeardCode
e2f550156e
Improve of the test output for logical expression with brackets.
...
Fixes #925
2016-06-25 18:10:36 +02:00
Ted Xiao
856e6cab75
add --override-ini option to overrides ini values
...
Signed-off-by: Ted Xiao <xiao.xj@gmail.com>
2016-06-25 23:45:32 +08:00
holger krekel
13a188fe37
Merge pull request #1647 from sallner/features
...
Add new options to report fixture setup and teardown
2016-06-25 16:38:37 +02:00
Bruno Oliveira
c519b9517a
Merge pull request #1663 from aostr/master
...
Rename the default plugin "pdb" into "debugging"
2016-06-25 09:56:54 -03:00
Bruno Oliveira
df17f862fa
Merge pull request #1648 from blueyed/simplify-Argument-__repr__
...
Simplify Argument.__repr__
2016-06-25 09:26:50 -03:00
aostr
9a5224e2f8
Renamed the pdb module and changed unit tests accordingly
2016-06-25 12:37:31 +02:00
Danielle Jenkins
da5c579d82
Move setupplan and setuponly options to their respective modules.
...
Also, changed their group from "general" to "debugconfig".
2016-06-25 12:20:56 +02:00
Danielle Jenkins
032ce8baf6
Switch setuponly and setupplan options to a hook-based implementation.
2016-06-25 12:19:46 +02:00
aostr
05b5554cac
Renamed pytest pdb to debugging which conflicts with python pdb.
...
Combining multiple imports the "import pdb" imports the pytest module
as opposed to the python debugger.
2016-06-25 12:09:05 +02:00
Florian Bruhin
757f37f445
Don't ignore ImportError with setuptools plugins
...
This was added in b2d66b9e7b
but is a bad
idea. When a plugin can't be imported, commandline options (optionally
set in pytest.ini) could be undefined, which means pytest bails out
much earlier before showing the warning, which is hard to debug.
Fixes #1479 , also see #1307 and #1497
2016-06-25 09:56:22 +02:00
Daniel Hahler
939407ef63
Simplify Argument.__repr__
...
I have came across this when noticing that universal-ctags fails to parse
this correctly (https://github.com/universal-ctags/ctags/issues/997 ).
2016-06-25 09:31:31 +02:00
Omar Kohl
d81f23009b
Raise CollectError if pytest.skip() is called during collection
...
pytest.skip() must not be used at module level because it can easily be
misunderstood and used as a decorator instead of pytest.mark.skip, causing the
whole module to be skipped instead of just the test being decorated.
This is unexpected for users used to the @unittest.skip decorator and therefore
it is best to bail out with a clean error when it happens.
The pytest equivalent of @unittest.skip is @pytest.mark.skip .
Adapt existing tests that were actually relying on this behaviour and add a
test that explicitly test that collection fails.
fix #607
2016-06-24 20:56:21 +02:00
Tom Viner
77689eb486
Fixes #1503 no longer collapse false explanations
2016-06-24 15:35:24 +02:00
Tom Viner
df9918eda3
issue1625, name getfuncargvalue to getfixturevalue
2016-06-24 10:08:19 +02:00
Vasily Kuznetsov
c6af737d4e
Fix fixture parameter display when ids is a function
2016-06-23 10:54:22 +02:00
Vasily Kuznetsov
1a5e530b98
Fix capturing with --setup-only/--setup-plan
2016-06-23 10:23:04 +02:00
Stefan Zimmermann
69bab4ab04
added check for already existing option names to OptionGroup.addoption()
2016-06-22 18:01:35 +02:00
Steffen Allner
dd97a2e7c8
Merge from upstream
2016-06-22 17:51:48 +02:00
Vasily Kuznetsov
61992b4e22
Implement --setup-plan option
2016-06-22 16:45:36 +02:00
Ronny Pfannschmidt
18ef7de96b
merge from master again
2016-06-22 16:03:52 +02:00
Vasily Kuznetsov
5e0d78f4f1
Fix .format string failures on python 2.6
2016-06-22 14:53:37 +02:00
Ronny Pfannschmidt
083f64100d
merge master into features
2016-06-22 14:39:33 +02:00
Vasily Kuznetsov
2c5c4f3f78
Add printing of fixture dependencies
2016-06-22 12:54:36 +02:00
Steffen Allner
2c6cfa42fa
Disable capturing for setuponly output
2016-06-22 12:14:35 +02:00
Steffen Allner
de9ed5e3f4
Merge pull request #1 from kvas-it/features
...
Factor setuponly code out of runtestprotocol().
2016-06-22 12:04:45 +02:00
Steffen Allner
92bcc36266
Refactor logging of fixtures
2016-06-22 12:01:51 +02:00
Vasily Kuznetsov
6874c3a3cc
Factor setuponly code out of runtestprotocol().
2016-06-22 11:09:54 +02:00
Tom Viner
98adf204b2
issue 1553: Include terminal newlines in diffs
2016-06-22 09:50:15 +02:00
Steffen Allner
499c9551c8
Implement working version of --setuponly
2016-06-22 09:42:45 +02:00
Bruno Oliveira
c3ee1c17bc
Merge pull request #1620 from tomviner/issue460/parameterized-subrequest
...
Issue 460: Fail on getfuncargvalue(<fixture with params>)
2016-06-21 13:43:06 -03:00
Bruno Oliveira
4350f499b2
Merge branch 'issue1629' of https://github.com/davehunt/pytest into features
2016-06-21 18:37:14 +02:00
Bruno Oliveira
61ede096a3
Merge pull request #1631 from Avira/master
...
help the user in the rare case this assertion actually fails
2016-06-21 13:17:52 -03:00
Bruno Oliveira
573866bfad
Merge remote-tracking branch 'upstream/features' into issue-1619-conftest-assert-rewrite
2016-06-21 18:10:19 +02:00
Dave Hunt
ef9dd14963
Introduce pytest command as recommended entry point
...
Fixes #1629
2016-06-21 16:16:57 +02:00
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