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
Bruno Oliveira
d749021a31
Fix coverage
...
Also make sure a test that doesn't set ALLOW_UNICODE fails
on Python 2 and passes Python 3.
2015-08-12 22:49:41 -03:00
Bruno Oliveira
420823070b
Add ALLOW_UNICODE doctest option
...
When enabled, the ``u`` prefix is stripped from unicode strings in
expected doctest output. This allows doctests which use unicode
to run in Python 2 and 3 unchanged.
Fix #710
2015-08-12 22:16:44 -03:00
Markus Unterwaditzer
41cef6f5f2
Don't skip fixtures that are substrings of params
...
Bug introduced with
https://bitbucket.org/pytest-dev/pytest/pull-requests/257/allow-to-override-parametrized-fixtures
Fix #736
2015-08-11 00:41:21 +02:00
Bruno Oliveira
e103932aad
Reintroduce hasplugin to PytestPluginManager
...
Fix #932
2015-08-09 19:30:49 -03:00
TomV
e130a0257d
add test for @nose.tools.istest
2015-08-08 21:08:05 +01:00
Bruno Oliveira
729b5e9b2f
Merge pull request #923 from The-Compiler/parametrize-idfunc
...
Generate parametrize IDs for enum/re/class objects.
2015-08-08 15:09:54 -03:00
Brianna Laugher
36b86af4b9
Added more test cases
2015-08-08 19:20:09 +02:00
Brianna Laugher
40fa7b25c5
Merge branch 'master' of git://github.com/Elizaveta239/pytest into Elizaveta239-master
...
Fixed merge conflict in CHANGELOG
2015-08-08 18:54:53 +02:00
Florian Bruhin
b59376bea4
Alert user about other parametrize spellings.
2015-08-07 07:51:59 +02:00
Florian Bruhin
13c5456868
Generate parametrize IDs for enum/re/class objects.
2015-08-07 07:37:59 +02:00
Bruno Oliveira
2bbe709bce
Use testdir fixture in test_double_test to ensure controlled environment for execution
...
Because the test relies that two subsequent tests try to use pytest.warns to capture
the exact same warning, it is better to use testdir to ensure test execution
occurs in the order we expect (which might be different with pytest-xdist or
pytest-random for example)
2015-08-06 22:30:01 -03:00
Eric Hunsberger
39f1471e93
Warnings always raised in WarningsRecorder
...
This ensures that if tests for warnings are run more than once,
the warning is still raised as expected.
2015-08-06 15:05:01 -04:00
Bruno Oliveira
02e742b7a6
Move WarningsChecker import in test to a local import to workaround flakes issue
...
See #897 for discussion
2015-08-04 19:27:13 -03:00
elizabeth
657ca97dbd
Some refactorings after code review
2015-08-04 00:02:03 +03:00
elizabeth
db9809d6dc
Update test for error in 'indirect' parameter
2015-08-02 23:53:44 +03:00
elizabeth
63bac67fb5
Add test for bad value in argument 'indirect'
2015-08-02 23:06:24 +03:00
elizabeth
15b865f502
Rewrite test using @pytest.fixture
2015-08-02 20:30:23 +03:00
elizabeth
2fc7aede0b
Request #714 : Apply indirect=True on particular argnames
2015-08-02 16:40:40 +03:00
Eric Hunsberger
52b4eb6c46
Added `warns` to assert warnings are thrown
...
Works in a similar manner to `raises`, but for warnings instead
of exceptions. Also refactored `recwarn.py` so that all the
warning recording and checking use the same core code.
2015-07-30 23:28:32 -04:00
Bruno Oliveira
4302972c23
Use pytest-of-$user as base directory for tmpdir_factory
...
Before tmpdir_factory, pytest used to create a link named "pytest-$user" to the current numbered directory. Use
a different name so there's no conflict when running different pytest versions.
Fix #894
2015-07-28 20:57:48 -03:00
Florian Bruhin
2ab4bf13ab
Document and test stacking of parametrize.
...
Closes #815 .
2015-07-26 14:39:13 +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
3e6bee2fc6
fail if snap is removed in the future
2015-07-26 01:28:00 +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
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
f78d87ee38
Issue #751 - test.
2015-07-25 15:38:11 +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
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
Bruno Oliveira
4f1ae8c45e
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 18:05:30 -03:00
Eric Hunsberger
3cd19a7e45
Use monkeypatch for setting modules in tests
...
Instead of directly setting `sys.modules`. This ensures that they
get removed at the end of the test.
2015-07-24 12:34:06 -04: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
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
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
Bruno Oliveira
dcdc823dd2
Support for tests created with functools.partial
...
Fix #811
2015-07-16 20:37:03 -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
Bruno Oliveira
74bc50e97c
Fix flakes
2015-07-15 20:45:35 -03: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
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
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
438ea86137
Fix flaky test_timing_function in Windows
...
This tests fails consistently on Windows due to small time
difference:
> assert float(val) >= 0.03
E assert 0.0299999713898 >= 0.03
E + where 0.0299999713898 = float('0.0299999713898')
Windows time.time() function is not as accurate as linux's,
so relaxed the test a bit.
2015-07-04 15:05:45 -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
afcad74be8
PEP8ify parametrized-test parameters
2015-07-02 13:39:05 -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
e07144aeb4
Add tests for the empty-key special case
2015-07-02 13:39:05 -04:00
Eric Siegerman
7993afae46
test_summary_stats() now prints its parameter values
...
This makes it easier to identify failing tests.
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
Bruno Oliveira
9fb1637ce2
Test that deprecated_call keeps internal warnings structures intact
2015-06-26 00:26:59 -03:00
Pieter Mulder
444cdfe6e3
Correct test_deprecated_call_preserves test.
...
Test if we preserve the correct functions.
2015-06-25 17:33:40 +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
holger krekel
e84c00efae
finish pytest-2.7.2 release
2015-06-23 16:31:24 +02:00
Florian Bruhin
01d067ec2b
Check conftest.py is not loaded with --confcutdir.
...
The test creates a conftest.py with "assert 0" which never should be loaded.
However, if it were loaded, the test would still pass as it never checks if it
was loaded or not.
See #799 .
2015-06-23 10:12:30 +02:00
Florian Bruhin
8664fc4102
Add a --noconftest option.
2015-06-23 09:38:54 +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
af77a23501
Add docs for new tests
2015-06-17 00:04:25 -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
9346e18d8c
Test creating directory for junit-xml and resultlog
2015-06-16 19:30:43 -07:00
Punyashloka Biswal
0c05b906d4
backport fix for #713
2015-06-16 21:27:22 -03:00
Bruno Oliveira
a0da7b9774
Mention issue 713 in the test's docstring
2015-06-16 20:42:49 -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
Florian Bruhin
ff8d787cd5
Fix monkeypatch.setenv with string and raising=False.
...
Fixes #746 .
2015-05-19 22:59:49 +02: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
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
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
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
9aec5cd52d
use runpytest() instead of runpytest_inprocess if a test can run as subprocess as well
...
--HG--
branch : testrefactor
2015-04-28 12:05:08 +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
8e009ee31c
move consider_setuptools_entrypoints to core pluginmanager
...
--HG--
branch : more_plugin
2015-04-26 00:41:29 +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
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
holger krekel
2b80caf1af
merge cxfreeze fix
2015-04-23 12:07:12 +02:00
Bruno Oliveira
6fe5493c3c
Fix py27-cxfreeze tox environment
...
Use a custom script to install a patched version of cx_freeze,
as required in Ubuntu 14.04 systems
--HG--
branch : cx_freeze_ubuntu
2015-04-22 19:46:06 -03: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
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
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
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
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
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
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
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
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
43e4fcf6dd
Raise specific MarkerError rather than generic ValueError
...
--HG--
branch : issue463
2015-03-23 20:01:58 +01:00
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
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
a9b7de8bf0
address reviewer comments
2015-03-21 17:26:23 +01:00