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