Ronny Pfannschmidt
235f9da432
special-case _pytest.__init__ in genscript to avoid a python3 bug
2015-07-27 11:33:27 +02:00
jakubo
e8f4819876
Test file run twice fails if it contains marked class #683
2015-07-26 12:15:29 +02:00
Floris Bruynooghe
e68fa641ff
Merge reset-capgture-on-reeadouterr-errors
...
Merge branch 'reset-capture-on-readouterr-errors' of github.com:davidszotten/pytest into merge-capmerge
2015-07-26 11:39:03 +02:00
David Szotten
983d249680
reset capture even if readouterr throws
...
otherwise that exception (and all following output) end up in /dev/null
2015-07-26 01:15:51 +02:00
Floris Bruynooghe
f64d5f1209
Merge pull request #884 from cpommranz/deprecate_genscript
...
Deprecate and warn about --genscript, fixes #730
2015-07-25 19:09:52 +02:00
Floris Bruynooghe
251fc68ef9
Merge fix for #751
...
Merge branch 'fix-751' of github.com:JanBednarik/pytest into jb-fix-751
2015-07-25 19:03:44 +02:00
Jan Bednařík
9906a19e29
Issue #751 - fix.
2015-07-25 15:38:27 +02:00
Christian Pommranz
00e1a2122a
Deprecate and warn about --genscript, fixes #730
2015-07-25 15:10:22 +02:00
Floris Bruynooghe
80ee620459
Merge pull request #881 from maartenq/master
...
setuptools not present issue deprecating gentest
2015-07-25 15:03:50 +02:00
Floris Bruynooghe
023687d8d0
Merge pull request #872 from nicoddemus/confcutdir-inifile
...
Avoid detecting conftest files upwards from setup.cfg/pytest.ini/tox.ini by default
2015-07-25 14:03:24 +02:00
Maarten
e3d60024aa
setuptools not present issue deprecating gentest
2015-07-25 13:50:40 +02:00
Ronny Pfannschmidt
a060b8ff73
use setuptools_scm to determine the version
2015-07-25 10:44:18 +02:00
Bruno Oliveira
033def0a7a
Workaround for cmdexec bug on Windows
...
This bug fails the entire pytest suite when executed with the
--lsof option in Python 2 on Windows.
2015-07-24 19:24:31 -03:00
Bruno Oliveira
9f94e443ff
Merge remote-tracking branch 'upstream/pytest-2.7'
...
Conflicts:
testing/conftest.py
2015-07-24 19:24:21 -03:00
Bruno Oliveira
91e8e59cea
Merge pull request #860 from nicoddemus/warn-plugins-as-str-main
...
Make passing plugins as str objects a more obvious failure
2015-07-24 19:13:39 -03:00
Eric Hunsberger
d104487282
importorskip: Allow non-integer version strings
...
Use `pkg_resources.parse_version` to parse version strings.
This can handle 'dev', 'rc', alpha and beta version strings,
among others.
2015-07-24 12:34:06 -04:00
Bruno Oliveira
35bbcc39a2
Interpret strings to "plugins" arg in pytest.main() as module names
...
See #855
2015-07-23 23:37:09 -03:00
Bruno Oliveira
ab9e246ab0
Avoid detecting conftest files upwards from setup.cfg/pytest.ini/tox.ini files by default
...
As discussed in #82
2015-07-23 23:21:07 -03:00
Bruno Oliveira
df29120abe
Merge branch 'pytest-2.7'
...
Conflicts:
_pytest/config.py
_pytest/genscript.py
_pytest/mark.py
tox.ini
2015-07-23 22:35:51 -03:00
Bruno Oliveira
ce96973ed5
Merge pull request #864 from pytest-dev/consider-color-yes-everywhere
...
Consider --color option in more places which deal with TerminalWriters
2015-07-23 08:03:52 -03:00
Floris Bruynooghe
0e26de2218
Merge pull request #867 from nicoddemus/autouse-yield-fixture-class
...
Fix autouse fixtures defined in a TestCase subclass
2015-07-22 01:25:21 +02:00
Bruno Oliveira
81f18f8a0f
Fix flakes
2015-07-21 19:55:01 -03:00
Bruno Oliveira
0769bb4898
Make pastebin use _pytest.config.create_terminal_writer
2015-07-21 12:55:18 -03:00
Bruno Oliveira
31cfbac1f4
Fix autouse fixtures defined in a TestCase subclass
2015-07-20 19:28:54 -03:00
Anatoly Bubenkov
6af7172204
Merge branch 'pytest-2.7'
2015-07-19 15:25:04 +02:00
Bruno Oliveira
de65737cb1
Fix flakes
2015-07-18 18:23:17 -03:00
Bruno Oliveira
953916df49
Report correct reason when using multiple skip/xfail markers
2015-07-18 18:18:45 -03:00
Bruno Oliveira
2f7d0f8bd9
Consider --color option in more places which deal with TerminalWriters
2015-07-18 16:39:55 -03:00
Thomas Kluyver
e227950b06
Style fix
2015-07-18 13:18:38 -03:00
Thomas Kluyver
d4789f1ac4
Fix AST rewriting with starred expressions in function calls
2015-07-18 13:16:47 -03:00
Thomas Kluyver
26e7532756
Move Interrupted exception class out of Session
2015-07-18 13:16:47 -03:00
Thomas Kluyver
570c4cc55a
No Starred node type on Python 2
2015-07-18 13:16:46 -03:00
Matthias Bussonnier
728d8fbdc5
generify
2015-07-18 13:16:26 -03:00
Matthias Bussonnier
fad569ae1b
simplify + fix
2015-07-18 13:16:26 -03:00
Matthias Bussonnier
a4dbb27fab
a test
2015-07-18 13:16:26 -03:00
Matthias Bussonnier
b18e6439bd
Ast Call signature changed on 3.5
...
fix issue 744 on bitbucket
port of merge request 296
https://bitbucket.org/pytest-dev/pytest/pull-request/296/astcall-signature-changed-on-35
https://bitbucket.org/pytest-dev/pytest/issue/744/
Conflicts:
CHANGELOG
2015-07-18 13:15:46 -03:00
Floris Bruynooghe
5e0235946b
Merge pull request #801 from Carreau/test-35
...
Support Python 3.5
2015-07-18 11:30:36 +01:00
Bruno Oliveira
a7b4ed89da
Use functools.partial name explicitly and simplify the code a bit as asked in review
2015-07-16 20:37:04 -03:00
Bruno Oliveira
dcdc823dd2
Support for tests created with functools.partial
...
Fix #811
2015-07-16 20:37:03 -03:00
Bruno Oliveira
330de0a93d
Use a subdirectory in the TEMP directory to speed up tmpdir creation
...
Fix #105
2015-07-16 19:50:49 -03:00
Bruno Oliveira
aa25fb05a9
Make sure marks in subclasses don't change marks in superclasses
...
Fix #842
2015-07-16 19:29:16 -03:00
Thomas Kluyver
4462b83258
Style fix
2015-07-16 11:04:36 -07:00
Bruno Oliveira
0f52856f99
Use a subdirectory in the TEMP directory to speed up tmpdir creation
...
Fix #105
2015-07-15 20:03:58 -03:00
Thomas Kluyver
195422f9c0
Fix AST rewriting with starred expressions in function calls
2015-07-15 15:31:35 -07:00
Thomas Kluyver
62ca4ae963
Move Interrupted exception class out of Session
2015-07-15 14:28:43 -07:00
Thomas Kluyver
35bea86c9f
No Starred node type on Python 2
2015-07-15 14:11:21 -07:00
Matthias Bussonnier
d774f3ca86
generify
2015-07-15 13:49:40 -07:00
Matthias Bussonnier
167625d24d
simplify + fix
2015-07-15 13:49:40 -07:00
Matthias Bussonnier
3bc6c0f936
a test
2015-07-15 13:49:40 -07:00
Matthias Bussonnier
26e64fc45c
Ast Call signature changed on 3.5
...
fix issue 744 on bitbucket
port of merge request 296
https://bitbucket.org/pytest-dev/pytest/pull-request/296/astcall-signature-changed-on-35
https://bitbucket.org/pytest-dev/pytest/issue/744/
2015-07-15 13:49:40 -07:00
Bruno Oliveira
d6033037ac
Consider session fixtures for doctest docstrings in modules
...
Fixes #768
2015-07-13 12:29:09 -03:00
Bruno Oliveira
5ec2a17f08
--fixtures only shows fixtures from first file
...
Fix #833
2015-07-12 17:32:39 -03:00
Bruno Oliveira
7445c5bd70
Add support for PEP302 get_data API
...
Fix #808
2015-07-11 14:13:43 -03:00
Bruno Oliveira
1baa1a4d01
Merge pull request #822 from nicoddemus/extra-usage-info
...
Print inifile and rootdir when there's usage errors
2015-07-11 13:43:20 -03:00
Bruno Oliveira
8a6aa5e17e
Print inifile and rootdir when there's usage errors
...
Related to #821
2015-07-10 21:56:12 -03:00
Bruno Oliveira
854e603f84
Add new testdirs ini option
...
Fix #694
2015-07-10 21:52:47 -03:00
Bruno Oliveira
0ee3ee7333
Add syntax highlighting to missing snippets in the documentation and other fixes
...
- Add explicit "code-block" for sessions without syntax highlight
- Moved Metafunc documentation to the class docstring and reused that in the
docs;
2015-07-09 21:50:38 -03:00
Bruno Oliveira
ae4c8b8635
Merge pull request #787 from pytest-dev/pluggy-bc-fix
...
Reintroduce get_plugin_manager() for backward-compatibility
2015-07-08 19:28:01 -03:00
Bruno Oliveira
d10054a38d
Merge branch 'esiegerman/summary_colors' of github.com:esiegerman/pytest
2015-07-03 18:29:17 -03:00
Kevin Cox
7fa27af408
Add `file` and `line` attributes to junit-xml output.
...
This adds the `file` and `line` attributes to the junit-xml output
which can be used by tooling to identify where tests come from. This can be
used for many things such as IDEs jumping to failures and test
runners evenly balancing tests among multiple executors.
Update test_junitxml.py
Foo.
2015-07-02 18:41:52 -04:00
Eric Siegerman
6c395cb58c
Default color is now yellow
...
Passing tests override that default, making the color green; but several other
"boring" statuses (xfailed, xpassed, deselected, skipped) have no effect.
Net effect: if only "boring" tests are seen, or no tests at all, the summary
bar is yellow.
2015-07-02 13:39:05 -04:00
Eric Siegerman
044d874c5b
If there are warnings, make the status bar yellow
...
Also if we see any statuses the code doesn't know about.
2015-07-02 13:39:05 -04:00
Eric Siegerman
cb21d844d9
Add missing "error" status to the list
2015-07-02 13:39:05 -04:00
Eric Siegerman
0282da9ddf
Refactor slightly
...
Check for the empty-key special case in the first loop,
not the second.
2015-07-02 13:39:05 -04:00
Eric Siegerman
bfc3e48fd5
Factor out build_summary_stats_line(), and add tests
...
--HG--
branch : esiegerman/summary_colors
2015-07-02 13:39:04 -04:00
Pieter Mulder
89b00d714f
deprecated_call dit not revert functions back to original
...
Make sure that the warnings.warn and warnings.warn_explicit are reverted
to there original function after running the function in deprecated_call
2015-06-25 17:11:50 +02:00
Bruno Oliveira
3c2fd833ca
Reintroduce get_plugin_manager() for backward-compatibility
...
PyCharm pytest runner depends on this function existing (see #787 ).
Added reference to get_plugin_manager() and PluginManager/PytestPluginManager to docs
2015-06-25 00:48:47 -03:00
holger krekel (rather uses bitbucket/hpk42)
08613b621e
Merge pull request #799 from pytest-dev/noconftest
...
Add a --noconftest option.
2015-06-23 16:53:22 +02:00
holger krekel
ee40ea5f6d
Merge branch 'pytest-2.7'
...
Conflicts:
AUTHORS
_pytest/__init__.py
setup.py
testing/conftest.py
tox.ini
2015-06-23 16:49:05 +02:00
Florian Bruhin
f78b6df8bc
Return an empty list directly.
2015-06-23 14:05:44 +02:00
Florian Bruhin
8664fc4102
Add a --noconftest option.
2015-06-23 09:38:54 +02:00
holger krekel
cdd25c9512
bump version to 2.7, depend on py-1.4.29
2015-06-22 23:53:41 +02:00
holger krekel (rather uses bitbucket/hpk42)
080dfb9841
Merge pull request #788 from pytest-dev/issue-767
...
Fix issue where pytest.raises() doesn't always return Exception instance in py26
2015-06-19 13:41:44 +02:00
Edison Gustavo Muenz
48d91def7e
Added workaround to still show the diff on containers with unsortable elements.
...
fix issue #718
2015-06-19 07:51:59 -03:00
Bruno Oliveira
eb73db56c7
Fix issue where pytest.raises() doesn't always return Exception instance in py26
...
Fixes #767
2015-06-19 07:46:47 -03:00
holger krekel
13c01193d6
Merge remote-tracking branch 'origin/pytest-2.7'
2015-06-19 10:03:37 +02:00
Bruno Oliveira
f90b2f845c
unittest.SkipTest now reports original function location
...
Fix #748
2015-06-18 22:27:43 -03:00
Bruno Oliveira
9d4e0365da
Skipif marker report now refers to the skipped function
...
Fix #114
2015-06-18 21:59:44 -03:00
Anatoly Bubenkov
4d6fef36f4
Merge branch 'pytest-2.7'
2015-06-17 13:42:41 +02:00
Bruno Oliveira
2653024409
Use os.path.isdir instead of os.path.exists
...
As suggested during review
2015-06-17 08:08:03 -03:00
Bruno Oliveira
2a1424e563
Merge branch 'pytest-2.7' of github.com:curzona/pytest into pytest-2.7
...
Conflicts:
AUTHORS
CHANGELOG
2015-06-17 00:02:26 -03:00
curzona
1db5c95414
Automatically create directory for results
2015-06-16 19:30:19 -07:00
Punyashloka Biswal
0c05b906d4
backport fix for #713
2015-06-16 21:27:22 -03:00
Punyashloka Biswal
0b0406fa85
Handle reports that don't have a reprcrash
...
Closes #713 (which happens because ReprFailDoctest
doesn't have a reprcrash)
2015-06-16 18:53:20 -04:00
Bruno Oliveira
b40f760cc3
Change links from bitbucket to GitHub
2015-06-15 18:28:31 -03:00
Ronny Pfannschmidt
8ee73e028f
Merged in jpvanhal/pytest/include-setup-teardown-duration-in-junitxml (pull request #287 )
...
Include setup and teardown in junitxml test durations
2015-06-06 11:50:37 +02:00
holger krekel
ca44e88e54
backport fixed issue735
...
--HG--
branch : pytest-2.7
2015-06-04 07:52:25 +02:00
Benjamin Peterson
f3ad2e4ad2
use NameConstant node when it exists ( fixes #735 )
...
--HG--
branch : issue735
2015-06-03 18:07:10 -05:00
holger krekel
584cccf7ec
Merged in nicoddemus/pytest/issue-741-pytester-output (pull request #293 )
...
Make "running" output from testdir.run copy/pastable
2015-06-03 23:40:08 +02:00
holger krekel
ad08bf79e7
Merged in The-Compiler/pytest (pull request #298 )
...
Fix monkeypatch.setenv with string and raising=False.
2015-06-03 23:37:26 +02:00
Floris Bruynooghe
d220be8468
Use platform.python_version() to show Python version number
...
This results in something like "3.5.0b2" for non-final releases
while still being "3.5.0" for final releases.
2015-05-31 20:31:31 +01:00
Florian Bruhin
ff8d787cd5
Fix monkeypatch.setenv with string and raising=False.
...
Fixes #746 .
2015-05-19 22:59:49 +02:00
Floris Bruynooghe
504b6b72a9
Set 2.7.1 version number
...
--HG--
branch : pytest-2.7
2015-05-19 01:50:32 +01:00
Bruno Oliveira
a7f880fa1f
Make "running" output from testdir.run copy/pastable
...
fix 741
--HG--
branch : issue-741-pytester-output
2015-05-09 10:24:33 -03:00
holger krekel
d9a44098ce
use new pluggy api (now at 0.3.0) for adding hookcall monitoring
...
and reraise real keyboard interrupts during inline pytest runs
to allow for better stopping of the pytest tests.
--HG--
branch : plug30
2015-05-07 11:02:55 +02:00
holger krekel
bb8141e27c
- make sure sub pytest runs use the same basetemp
...
- depend on pluggy < 0.3
--HG--
branch : pluggy1
2015-05-06 14:58:46 +02:00
holger krekel
bddc88f09e
adapt to pluggy naming, rename pytest.hookspec_opts to pytest.hookspec,s ame with hookimpl_opts
...
--HG--
branch : pluggy1
2015-05-06 10:08:08 +02:00
holger krekel
23538bcd31
- some more adaptation to most recent pluggy API
...
- avoid using pluggin underscore api
- show pluggy version in header
--HG--
branch : pluggy1
2015-05-05 21:53:04 +02:00
holger krekel
a4f2236b36
merge default
...
--HG--
branch : pluggy1
2015-05-05 14:52:16 +02:00
holger krekel
88538f13ba
adapt for current API changes of pluggy
...
--HG--
branch : pluggy1
2015-05-04 15:08:41 +02:00
holger krekel
920b5afe45
now that we are going to have wheels, py source code might be not be installed
...
and the resulting genscript is useless
--HG--
branch : pluggy1
2015-05-04 14:42:01 +02:00
Janne Vanhala
93628fc0eb
Include setup and teardown in junitxml test durations
...
--HG--
branch : include-setup-teardown-duration-in-junitxml
2015-05-01 14:55:52 +03:00
famousgarkin
47936643c9
monkeypatch.chdir docstring punctuation
...
--HG--
branch : famousgarkin/monkeypatchchdir-docstring-punctuation-1430453576841
2015-05-01 04:13:06 +00:00
Floris Bruynooghe
aa2ffb9805
Merge fix for issue 731 from pytest-2.7
2015-04-30 21:13:03 +01:00
Floris Bruynooghe
7f554f50e3
Fix collapse false to look at unescaped braces only
...
Sometimes the repr of an object can contain the "\n{" sequence which is
used as a formatting language, so they are escaped to "\\n{". But the
collapse-false code needs to look for the real "\n{" token instead of
simply "{" as otherwise it may get unbalanced braces from the object's
repr (sometimes caused by the collapsing of long reprs by saferepr).
Fixes issue #731 .
--HG--
branch : pytest-2.7
2015-04-30 02:31:12 +01:00
holger krekel
25963e0544
adapt pytest to pluggy's decoratorclass branch
...
--HG--
branch : pluggy1
2015-04-29 16:40:52 +02:00
holger krekel
5ee7ee0850
adapt pytest to using pluggy (current master)
...
--HG--
branch : pluggy1
2015-04-29 16:40:51 +02:00
holger krekel
db5649ec6a
streamline pytester API majorly:
...
- integrate conftest into pytester plugin
- introduce runpytest() to either call runpytest_inline (default) or
runpytest_subprocess (python -m pytest)
- move testdir.inline_runsource1 to pdb tests
- strike some unneccessary methods.
- a new section "writing plugins" and some better pytester docs
--HG--
branch : testrefactor
2015-04-28 11:54:53 +02:00
holger krekel
a8afba054a
- refine lsof checking
...
- make runpytest() create an inline testing process instead of
a subprocess one
--HG--
branch : testrefactor
2015-04-28 11:54:46 +02:00
holger krekel
d3e363b97a
- make API between runpytest() and inline_run() more similar
...
- shift a number of tests to become inline_run() tests
--HG--
branch : testrefactor
2015-04-28 11:54:45 +02:00
holger krekel
424e5d1394
make test suite more tolerable against xdist causing warnings itself (which it does
...
currently)
--HG--
branch : plugtestfix
2015-04-27 15:06:47 +02:00
holger krekel
b2d66b9e7b
simplify load_setuptools_entrypoints and refine comments/docstrings
...
--HG--
branch : more_plugin
2015-04-27 14:10:33 +02:00
holger krekel
c54afbe42e
deprecate and warn about __multicall__ usage in hooks, refine docs about hook ordering,
...
make hookwrappers respect tryfirst/trylast
--HG--
branch : more_plugin
2015-04-27 12:50:34 +02:00
holger krekel
dea1c96031
actually revert back to using older simpler method for subset hook
...
calling. It is slightly more inefficient but easier to implement and
read.
--HG--
branch : more_plugin
2015-04-26 17:17:59 +02:00
holger krekel
d2ea7387f2
re-add tryfirst/trylast marker documentation, mark it as to be removed
...
--HG--
branch : more_plugin
2015-04-26 00:47:24 +02:00
holger krekel
8e009ee31c
move consider_setuptools_entrypoints to core pluginmanager
...
--HG--
branch : more_plugin
2015-04-26 00:41:29 +02:00
holger krekel
0c961deeaa
fix some doc strings
...
--HG--
branch : more_plugin
2015-04-26 00:22:34 +02:00
holger krekel
32165d82b1
introduce a new subset_hook_caller instead of remove make_hook_caller
...
and adapat and refine conftest/global plugin management accordingly
--HG--
branch : more_plugin
2015-04-26 00:10:52 +02:00
holger krekel
d422247433
specialize make_hook_caller to work with a subset of the registered plugins.
...
--HG--
branch : more_plugin
2015-04-25 22:13:42 +02:00
holger krekel
a042c57227
ensure proper get_name references
...
--HG--
branch : more_plugin
2015-04-25 20:42:41 +02:00
holger krekel
3a1374e69c
simplify plugins bookkeeping further, refine API
...
--HG--
branch : more_plugin
2015-04-25 20:17:32 +02:00
holger krekel
1c0582eaa7
simplify addition of method and scanning of plugins
...
--HG--
branch : more_plugin
2015-04-25 18:15:42 +02:00
holger krekel
1e883f5979
simplify tracing mechanics by simply going through an indirection
...
--HG--
branch : more_plugin
2015-04-25 18:15:39 +02:00
holger krekel
9c5495832c
avoid direct circular reference between config and pluginmanager
...
--HG--
branch : more_plugin
2015-04-25 18:14:41 +02:00
holger krekel
7364647f2f
fix issue732: make sure removed plugins remove all hook callers.
...
--HG--
branch : more_plugin
2015-04-25 18:14:39 +02:00
holger krekel
4e116ed503
make pytest_plugin_registered a historic hook
...
--HG--
branch : more_plugin
2015-04-25 13:38:30 +02:00
holger krekel
e7a2e53108
Streamline data structures
...
--HG--
branch : more_plugin
2015-04-25 13:38:29 +02:00
holger krekel
2f8a1aed6e
properly perform hook calls with extra methods
...
--HG--
branch : more_plugin
2015-04-25 11:29:11 +02:00
holger krekel
a63585dcab
introduce historic hook spec which will memorize calls to a hook
...
in order to call them on later registered plugins
--HG--
branch : more_plugin
2015-04-25 11:29:11 +02:00
holger krekel
d2a5c7f99b
add documented hookimpl_opts and hookspec_opts decorators
...
so that one doesn't have to use pytest.mark or function-attribute setting anymore
--HG--
branch : more_plugin
2015-04-25 11:29:11 +02:00
holger krekel
bbbb6dc2e3
remove _do_register indirection between PluginManager and PytestPluginManager
...
--HG--
branch : more_plugin
2015-04-25 11:29:11 +02:00
holger krekel
f41528433b
also incrementally remove plugins from hook callers
...
--HG--
branch : more_plugin
2015-04-25 11:29:11 +02:00
holger krekel
02a4042dca
incrementally update hook call lists instead of regenerating the whole
...
list on each registered plugin
--HG--
branch : more_plugin
2015-04-25 11:29:11 +02:00
holger krekel
b03c1342ac
allow to register plugins with hooks that are only added later
...
--HG--
branch : more_plugin
2015-04-25 11:29:11 +02:00
holger krekel
9020bf48b7
remove useless check
...
--HG--
branch : plugin_no_pytest
2015-04-24 14:09:57 +02:00
holger krekel
237ac8562f
minimize HookCaller attributes: avoid passing in hookrelay to HookCallers
...
--HG--
branch : plugin_no_pytest
2015-04-24 13:02:49 +02:00
holger krekel
feb4b2249a
remove some redundancy when parsing import spec
...
--HG--
branch : plugin_no_pytest
2015-04-23 13:15:34 +02:00
holger krekel
95dd2eb1da
streamline and document handling of builtin module special casing.
...
--HG--
branch : plugin_no_pytest
2015-04-23 12:39:11 +02:00
holger krekel
8fde2f98ae
merge default
...
--HG--
branch : plugin_no_pytest
2015-04-23 12:35:15 +02:00
Floris Bruynooghe
e450218daa
Merge _pytest fixture reintroduction from pytest-2.7 branch
...
This was accidentally removed while some plugins depend on it.
2015-04-23 00:55:58 +01:00
holger krekel
a3aebfaefe
accomodate Floris' comments. (The reason was i just reinstanted the old code :)
...
--HG--
branch : reintroduce_pytest_fixture
2015-04-22 21:04:36 +02:00
holger krekel
9d5182eaad
reintroduced _pytest fixture of the pytester plugin which is used
...
at least by pytest-xdist.
--HG--
branch : reintroduce_pytest_fixture
2015-04-22 17:06:00 +02:00
holger krekel
27589eb7e1
reshuffle pluginmanager methods and add some docstrings.
...
--HG--
branch : plugin_no_pytest
2015-04-22 16:42:41 +02:00
holger krekel
715a235b45
remove shutdown logic from PluginManager and add a add_cleanup() API
...
for the already existing cleanup logic of the config object.
This simplifies lifecycle management as we don't keep two
layers of shutdown functions and also simplifies the pluginmanager
interface.
also add some docstrings.
--HG--
branch : plugin_no_pytest
2015-04-22 16:33:20 +02:00
holger krekel
f746c190ac
slight cleanup of plugin register() functionality
...
--HG--
branch : plugin_no_pytest
2015-04-22 14:54:28 +02:00
holger krekel
d632a0d5c2
merge conftest management into PytestPluginManager
...
--HG--
branch : plugin_no_pytest
2015-04-22 14:15:42 +02:00
holger krekel
894d7dca22
avoid undocumented special casing of "pytest_" prefix
...
--HG--
branch : plugin_no_pytest
2015-04-22 13:44:37 +02:00
holger krekel
20d6c0b560
simplify exception capturing
...
--HG--
branch : plugin_no_pytest
2015-04-22 13:37:42 +02:00
holger krekel
c08dfdc330
move bookkeeping of conftest plugins in core pluginmanager to PytestPluginManager
...
--HG--
branch : plugin_no_pytest
2015-04-22 13:33:01 +02:00
holger krekel
7049ebe4e2
avoid prepend to register api as it's redundant wrt to hooks
...
--HG--
branch : plugin_no_pytest
2015-04-22 13:31:46 +02:00
holger krekel
1ef49ac5ab
minimize HookRelay to become a pure container, refactor initialization and
...
tests of plugin management to be a bit better split between pytest
and pytest-independent bits
--HG--
branch : plugin_no_pytest
2015-04-22 13:31:46 +02:00
holger krekel
db650de372
remove redundant py check as our setup.py excludes py <=1.4 already
...
--HG--
branch : plugin_no_pytest
2015-04-22 10:04:13 +02:00
Floris Bruynooghe
240cd1f28d
Merge cleaning of sys.modules after pytester.inline_run()
...
Merged in schettino72/pytest/pytester-inline-run-clean-sys-modules
(pull request #278 ).
2015-04-21 11:00:32 +01:00
Floris Bruynooghe
31af381c56
Merged in hpk42/pytest-patches/prefer_installed (pull request #275 )
...
change test module importing behaviour to append to sys.path
2015-04-21 10:47:33 +01:00
Eduardo Schettino
bc0ecd1d06
pytester: add method ``TmpTestdir.delete_loaded_modules()``
...
, and call it from ``inline_run()`` to allow temporary modules to be reloaded.
--HG--
branch : pytester-inline-run-clean-sys-modules
2015-04-21 10:18:04 +08:00
holger krekel
bac1ccd5b3
merge fix of issue553 on pytest-2.7
2015-04-17 22:32:49 +02:00
holger krekel
0b361c62c8
Merged in getsourcelines-error-issue-553-pytest2.7 (pull request #273 )
...
Handle inspect.getsourcelines failures in FixtureLookupError
--HG--
branch : pytest-2.7
2015-04-17 22:31:55 +02:00
holger krekel
5c8e5acf9d
change test module importing behaviour to append to sys.path
...
instead of prepending. This better allows to run test modules
against installated versions of a package even if the package
under test has the same import root. In this example::
testing/__init__.py
testing/test_pkg_under_test.py
pkg_under_test/
the tests will preferrably run against the installed version
of pkg_under_test whereas before they would always pick
up the local version.
--HG--
branch : prefer_installed
2015-04-17 22:25:35 +02:00
Floris Bruynooghe
fb07a09964
Merge pull request #274 from pytest-2.7
...
fixed regression to 2.6.4 which surfaced e.g. in lost stdout capture printing
2015-04-17 11:10:47 +01:00
Floris Bruynooghe
6e2bc7712c
Merged in hpk42/pytest-patches/systemexit (pull request #274 )
...
fixed regression to 2.6.4 which surfaced e.g. in lost stdout capture printing
--HG--
branch : pytest-2.7
2015-04-17 11:07:24 +01:00
holger krekel
173bd13ece
backport Y->y fix from floris
...
--HG--
branch : pytest-2.7
2015-04-17 11:57:09 +02:00
holger krekel
e04273df57
fixed regression to 2.6.4 which surfaced e.g. in lost stdout capture printing
...
when tests raised SystemExit.
--HG--
branch : systemexit
2015-04-17 11:47:29 +02:00
Bruno Oliveira
15328c04eb
Handle inspect.getsourcelines failures in FixtureLookupError
...
Fixes #553
--HG--
branch : getsourcelines-error-issue-553-pytest2.7
2015-04-15 19:31:22 -03:00
Floris Bruynooghe
c7a60af666
Use capital Y as the tests look for that
2015-04-13 09:08:10 +01:00
Floris Bruynooghe
09dff73607
Merge pytest-2.7 for issue660 fix
2015-04-13 00:04:53 +01:00
Floris Bruynooghe
bf0b70aa66
Some docstrings for the pytester plugin
...
These aren't quite complete but are a jolly good start anyway. It
seems better to commit this now then leave it lingering until it
gets lost.
2015-04-11 17:07:37 +01:00
holger krekel
79c0515945
merge pytest-2.7 branch
...
--HG--
branch : issue660
2015-04-04 16:35:14 +02:00
holger krekel
74019025b9
shift default to 2.8.0.dev
2015-04-04 16:32:25 +02:00
holger krekel
b55d66d0cf
- avoid setting of versions and targets in conf.py and Makefile
...
as discussed on pytest-dev
- "make help" now prints pytest specific information.
- add a "_getdoctarget.py" helper
- make ``setup.py`` read the version from ``_pytest/__init__.py``
--HG--
branch : release-checklist
2015-04-02 10:38:25 +02:00
holger krekel
3ed3e51997
fix issue660: properly report fixture scope mismatches independent
...
from fixture argument ordering.
--HG--
branch : issue660
2015-04-01 18:42:48 +02:00
holger krekel
e16983d265
bump versions to dev, including changing the doc-install target to "dev"
...
instead of "latest"
2015-03-26 13:48:59 +01:00
holger krekel
d2a8866bce
bump verrsion to python2.7, fix a too precise test for windows, regen docs
2015-03-26 09:34:10 +01:00
Anatoly Bubenkov
55eb82c434
fix pep257
2015-03-23 21:28:29 +01:00
Anatoly Bubenkov
d94a29e866
merge almarklein/default
2015-03-23 21:25:10 +01:00
Anatoly Bubenkov
ce95437dee
merge with default
...
--HG--
branch : issue463
2015-03-23 20:41:27 +01:00
Brianna Laugher
c019e489d2
Change docstring style
...
--HG--
branch : issue463
2015-03-23 20:27:53 +01:00
Brianna Laugher
43e4fcf6dd
Raise specific MarkerError rather than generic ValueError
...
--HG--
branch : issue463
2015-03-23 20:01:58 +01:00
tigeraniya
65ca554230
duplicate assignment
2015-03-23 20:47:34 +05:30
holger krekel
f3580bee2d
fix issue435: make reload() work when assert rewriting is active.
...
Thanks Daniel Hahler.
2015-03-23 10:08:47 +01:00
Brianna Laugher
deb163d237
Change string format syntax from {} to {0} for py2.6
...
--HG--
branch : issue463
2015-03-21 23:57:06 +01:00
Brianna Laugher
6f81602ba2
Use hasattr instead of try/except
...
--HG--
branch : issue463
2015-03-21 23:30:13 +01:00
Brianna Laugher
ac17f20d98
#463
...
Raise a ValueError early if user misspells 'parametrize' as 'parameterize'.
--HG--
branch : issue463
2015-03-21 23:06:25 +01:00
Almar Klein
9726fafa98
allow postmortem debugging on failed test
2015-03-21 09:26:35 +01:00
Bruno Oliveira
eead0365b5
Merged in parametrized-fixture-override (pull request #257 )
...
allow to override parametrized fixtures with non-parametrized ones and vice versa
2015-03-12 09:40:56 -03:00
Daniel Hahler
5d6b0a59c0
Strip docstrings in output with `--fixtures`
...
Fixes https://bitbucket.org/pytest-dev/pytest/issue/550 .
--HG--
branch : strip-docstrings-from-fixtures
2015-03-04 17:00:24 +01:00
Daniel Hahler
c629f6b18b
Fix `reload()` with modules handled via `python_files`
...
If a module exists in `sys.modules` already, `load_module` has to return it.
Fixes https://bitbucket.org/pytest-dev/pytest/issue/435
--HG--
branch : fix-reload
2015-03-04 16:21:27 +01:00
Anatoly Bubenkov
33c2a3a3e5
make loop more readable
...
--HG--
branch : parametrized-fixture-override
2015-03-02 08:55:57 +01:00
Anatoly Bubenkov
c4623939af
support override of the parametrized fixture on the test level
...
--HG--
branch : parametrized-fixture-override
2015-03-01 15:15:37 +01:00
Anatoly Bubenkov
060609317a
allow to override parametrized fixtures with non-parametrized ones and vice versa
...
--HG--
branch : parametrized-fixture-override
2015-03-01 13:54:43 +01:00
Ronny Pfannschmidt
1e6e373913
Merged in issue616 (pull request #252 )
...
fix issue616 - conftest visibility fixes.
2015-02-28 10:02:58 +01:00
holger krekel
c3ca44b46f
change links to go to the new pytest-dev bitbucket team's repo location
...
--HG--
branch : docs_community
2015-02-27 12:27:40 +01:00
holger krekel
660b84a052
Merged in cpcloud/pytest/ignore-doctest-import-errors (pull request #243 )
...
Add option to ignore import errors in doctests
2015-02-26 21:59:54 +01:00
holger krekel
d73e689991
fix issue616 - conftest visibility fixes. This is achieved by
...
refactoring how nodeid's are constructed. They now are always
relative to the "common rootdir" of a test run which is determined by
finding a common ancestor of all testrun arguments.
--HG--
branch : issue616
2015-02-26 21:56:44 +01:00
Ronny Pfannschmidt
415c76b255
Merged in tush/pytest/junit-verbose-failures (pull request #240 )
...
Made failure message in junit xml report more informative
2015-02-22 19:13:07 +01:00
Phillip Cloud
f2ca0b8170
Add option to ignore import errors in doctests
...
--HG--
branch : ignore-doctest-import-errors
2015-02-08 01:25:23 -05:00
Dave Hunt
8f12269db7
Use shlex to split the arguments from PYTEST_ADDOPTS.
...
--HG--
branch : env-addopts
2015-01-26 10:39:21 +00:00
Dave Hunt
7325a5fe2e
Support setting configuration using the PYTEST_ADDOPTS environment variable.
...
--HG--
branch : env-addopts
2015-01-23 20:09:42 +00:00
tush home
9f4d0be895
Failure message in junit xml report now are more informative
...
--HG--
branch : junit-verbose-failures
2015-01-20 01:45:26 +03:00
Bruno Oliveira
7e15fb7f2d
Attempting to patch terminal only if terminalreporter is available
...
This fixes the flag "--paste=all" when running tests with xdist, as slaves would
attempt to patch a non-existing terminal during pytest_configure. Only the master
node has a terminalreporter installed.
--HG--
branch : pastebin-xdist
2015-01-19 19:20:01 -02:00
Ronny Pfannschmidt
5941b2e071
fix issue 655: crude workarounds around python2/3 exception leaks
2015-01-09 19:55:49 +01:00
James Tatum
bca19a1156
Cleaning up the docstrings in monkeypatch.py
2015-01-08 17:15:22 -08:00
Floris Bruynooghe
1d15bb2880
Merged in tomviner/pytest/format_boolop_percent6 (pull request #231 )
...
fix for issue #615 : _format_boolop must escape %
2014-10-28 13:26:21 +00:00
holger krekel
959395b796
fix py26 compatibility
2014-10-27 10:02:15 +01:00
TomV
f6caf230f8
fix for issue615: _format_boolop must escape %
...
fix test for issue615: expression must eval False
--HG--
branch : format_boolop_percent6
2014-10-27 08:57:58 +00:00
holger krekel
f2cdbe776e
bump version to 2.7 on default
2014-10-26 10:52:04 +01:00
Dinu Gherman
0c8569dcb0
Added explanation for the binary blob in runtests.py
2014-10-24 13:04:20 +02:00
holger krekel
5f2444d2a2
Merged in nicoddemus/pytest/fix-pastebin (pull request #228 )
...
Fix --pastebin option
2014-10-23 09:08:30 +02:00
Bruno Oliveira
537dca477b
Fixing --pastebin option by using a POST request instead of a XMLRPC call
...
fixes #614
--HG--
branch : fix-pastebin
2014-10-22 21:52:40 -02:00
Floris Bruynooghe
8d19ccb56f
Merged in pfctdayelise/pytest/issue351 (pull request #161 )
...
Fixes issue351: Add ability to specify parametrize ids as a
callable, to generate custom test ids. + tests, docs
Hg branch merge
2014-10-22 23:18:01 +01:00
holger krekel
eac4514227
Merged in nicoddemus/pytest/python-classes-glob (pull request #225 )
...
added support for glob-style patterns to python_classes and python_functions config options
2014-10-22 07:14:10 +02:00
Bruno Oliveira
0b620c304b
checking that option contains glob characters before calling fnmatch
...
requested during code review
--HG--
branch : python-classes-glob
2014-10-20 18:36:31 -02:00
David Röthlisberger
7371d436d2
Fix assertion.rewrite on read-only filesystem
2014-10-17 21:18:37 +01:00
Bruno Oliveira
b928928942
added support for glob-style patterns to python_classes and python_functions config options
...
fixes #600
--HG--
branch : python-classes-glob
2014-10-16 19:27:10 -03:00
TomV
857db415bc
fix some spelling mistakes
...
--HG--
branch : some_spelling_fixes
2014-10-13 23:16:26 +01:00
Bruno Oliveira
b2341899c5
Adding "auto" to help for "--tb" option
2014-10-10 20:43:33 +00:00
holger krekel
b7dd8eac8e
remove unused import
2014-10-09 22:45:33 +02:00
holger krekel
cea9367739
Merged in HolgerPeters/pytest (pull request #221 )
...
Make doctest flags configurable
2014-10-09 17:05:48 +02:00
holger krekel
8c91ffc701
some docs and refined semantics for wrappers
2014-10-09 12:21:01 +02:00
holger krekel
c58770bfef
re-scan methods during plugin register and unregister and not
...
during hook calling anymore. Simplify register/getplugin api of PluginManager
2014-10-09 10:47:32 +02:00
holger krekel
04b8111f8f
improve docstring, remove unused custom Exception
2014-10-09 09:55:46 +02:00
holger krekel
5999368002
remove all occurences of "__multicall__" on hook impls in pytest/*.
...
also simplify pytest_runtest_markereport hook in _pytest/skipping.py
while touching the code anyway.
2014-10-08 20:23:40 +02:00
Holger Peters
61caa4f776
Add documentation for doctest flags and remove dead code
2014-10-08 15:48:41 +02:00
Holger Peters
f66e0825b2
Add configuration option for doctest flags
2014-10-08 14:31:17 +02:00
holger krekel
c3d1986101
- refactor wrapped call support to also accomodate
...
pytest.mark.hookwrapper
- introduce a CallOutcome class to hold the result/excinfo status of
calling a function.
- rename add_method_controller to add_method_wrapper
2014-10-08 11:27:14 +02:00
holger krekel
b6e619413f
merge pytest default
2014-10-07 18:11:15 +02:00
holger krekel
68f3818562
fix add_method_controller to deal properly in the event of exceptions.
...
add a docstring as well.
2014-10-07 16:16:47 +02:00
Anatoly Bubenkov
a298077461
merge with default
2014-10-07 01:06:15 +02:00
Anatoly Bubenkov
a759da0208
Escape % character in the assertion message. closes #604
2014-10-07 01:01:21 +02:00
holger krekel
c45b7012f5
docs for "pytest_addhooks" hook. Thanks Bruno Oliveira.
...
updated plugin index docs. Thanks Bruno Oliveira.
fix issue557: with "-k" we only allow the old style "-" for negation
at the beginning of strings and even that is deprecated. Use "not" instead.
This should allow to pick parametrized tests where "-" appeared in the parameter.
2014-10-06 14:26:03 +02:00
holger krekel
767e44ef29
cleanup core collection of python methods and remove unncessary cache
2014-10-06 14:06:17 +02:00
holger krekel
818a412d29
simplify internal pytester machinery
2014-10-06 13:37:57 +02:00
holger krekel
2cb0145bce
fix issue557: with "-k" we only allow the old style "-" for negation
...
at the beginning of strings and even that is deprecated. Use "not" instead.
This should allow to pick parametrized tests where "-" appeared in the parameter.
2014-10-06 12:11:48 +02:00
holger krekel
3d84f35850
simplify method to record calls
2014-10-04 15:49:31 +02:00
holger krekel
d8f4663f49
factor out a small "wrapping" helper
2014-10-04 15:49:31 +02:00
Dj Gilcrease
a098226ee4
change the defaults from a tuple to a list so I can use config.addinivalue_line("python_files", "...") to append new options in my own plugins
2014-10-02 21:32:35 +00:00
Dj Gilcrease
05d4a3f9eb
change the defaults from a tuple to a list so I can use config.addinivalue_line("norecursedirs", "...") to append new options in my own plugins
2014-10-02 21:27:19 +00:00
holger krekel
69ff29bf44
remove overhead for tracing of hook calls and remove some old unused code
2014-10-02 15:25:42 +02:00
holger krekel
c7c4f62f77
optimize argument slicing when calling plugin hooks
2014-10-01 14:55:54 +02:00
holger krekel
f250e912eb
simplify _scan_plugin implementation and store argnames on HookCaller
2014-10-01 13:57:35 +02:00
holger krekel
28c785a0d1
call scanning of plugins directly, code is shifted from helpconfig.py to core.py
2014-10-01 12:20:11 +02:00
holger krekel
ea5fb0c153
refine internal management of plugins and conftest files
2014-10-01 12:19:11 +02:00
Anatoly Bubenkov
9a0f2a9fb7
Improve assertion failure reporting on iterables, by using ndiff and pprint.
2014-09-27 01:29:47 +00:00
holger krekel
49b7237581
bump version to 2.6.4.dev
2014-09-24 16:27:34 +02:00
holger krekel
2eef674615
regen and fix some docs (tox -e regen)
...
bump versions, depend on already released py-1.4.25
2014-09-24 14:46:56 +02:00
Floris Bruynooghe
62b8712ca9
Let xfail work on non-python Items
...
For some reason xfail was only implemented on non-python Item
instances. This removes this guard which means plugins creating new
items can raise pytest.xfail.Exception and it will work as expected.
2014-09-23 23:55:26 +01:00
holger krekel
be503f1c43
Merged in wosc/pytest (pull request #204 )
...
Introduce pytest_enter_pdb hook
2014-09-23 14:04:47 +02:00
holger krekel
5abca55412
Merged in nicoddemus/pytest (pull request #203 )
...
fix issue575: xunit-xml reporting collection errors as failures
2014-09-22 19:25:34 +02:00
holger krekel
79d2edcbff
Merged in flub/pytest (pull request #207 )
...
Show both user assertion msg as explanation (issue549)
2014-09-22 19:16:10 +02:00
David Szotten
bc4eecbbac
add `encoding` attr to DontReadFromInput
...
required by https://docs.python.org/2/library/stdtypes.html#file.encoding
and used e.g. by ipdb at _import_ time
--HG--
branch : dontreadfrominput-encoding
2014-09-22 12:19:27 +01:00
Wolfgang Schnerring
1408c9f077
Introduce pytest_enter_pdb hook
2014-09-18 14:58:42 +02:00