Bruno Oliveira
2d613a03b3
Async result warn ( #5742 )
...
Async result warn
2019-08-15 09:47:56 -03:00
Bruno Oliveira
28c6c5bb71
check that tests that are partial staticmethods are supported ( #5701 )
...
check that tests that are partial staticmethods are supported
2019-08-15 09:12:01 -03:00
Thomas Grainger
6b9d729ed3
also warn on awaitable or async iterable test results
2019-08-15 12:30:44 +01:00
Bruno Oliveira
0ba774a7c3
warn for async generator functions ( #5734 )
...
warn for async generator functions
2019-08-15 08:17:12 -03:00
Thomas Grainger
137255816e
Fix collection of staticmethods defined with functools.partial
...
Related to #5701
2019-08-15 08:04:05 -03:00
Thomas Grainger
2f1b192fe6
Issue a warning for async gen functions
...
Co-Authored-By: Bruno Oliveira <nicoddemus@gmail.com>
2019-08-15 07:54:10 -03:00
dmitry.dygalo
7183335e62
Capture warnings during ``pytest_configure``
...
Fix #5115
2019-08-15 07:50:27 -03:00
Daniel Hahler
1434b66c35
pytester: spawn: skip without pexpect.spawn
...
"pexpect" can be imported on Windows, but does not have "pexpect.spawn"
then.
Ref: https://github.com/pexpect/pexpect/blob/a803933ed53/pexpect/__init__.py#L73-L76
2019-08-13 17:54:40 +02:00
Daniel Hahler
ed2425119f
Merge pull request #5731 from blueyed/assert-compare-maxsize
...
assertrepr_compare: prefer same maxsize
2019-08-12 16:02:41 +02:00
Daniel Hahler
39ba996133
assertion.rewrite: use ast.NameConstant(None) directly
...
`ast.parse("None")` was added/used in 3e6f1fa2d
for differences between
Python 2/3, but we do not support py2 anymore.
2019-08-12 07:50:52 +02:00
Daniel Hahler
cb481a354a
assertrepr_compare: prefer same maxsize
...
Previously it would say:
> assert '123456789012...901234567890A' == '1234567890123...901234567890B'"
This makes it look like the "3" might be different already.
This is clearer, and it is OK to have potentially one less char in the
right one:
> assert '123456789012...901234567890A' == '123456789012...901234567890B'"
2019-08-12 03:41:14 +02:00
Bruno Oliveira
345df99db7
Show session duration in human-readable format
...
Fix #5707
2019-08-10 10:45:53 -03:00
Bruno Oliveira
f7e81dab9a
5669: pytester: add docstrings for Testdir.copy_example ( #5719 )
...
5669: pytester: add docstrings for Testdir.copy_example
2019-08-10 09:00:42 -03:00
Ilya Stepin
ee936b27a8
pytester: fix docstrings
...
Co-Authored-By: Bruno Oliveira <nicoddemus@gmail.com>
2019-08-10 09:12:04 +03:00
martbln
e0ce8b79d5
pytester: add docstrings for Testdir.copy_example
2019-08-10 00:59:14 +03:00
Tim Hoffmann
b095e0de47
Improve docs of pytest.importorskip
2019-08-09 21:35:03 +02:00
Daniel Hahler
9f6da8cbeb
Remove unused function CallSpec2.setall
...
Fixes https://github.com/pytest-dev/pytest/issues/5253 .
2019-08-09 16:34:48 +02:00
Daniel Hahler
aa06e6c8f3
Merge master into features
2019-08-05 19:12:32 +02:00
Daniel Hahler
198fcd8a6f
Fix RuntimeError when trying to collect package with "__init__.py" only
...
Fixes https://github.com/pytest-dev/pytest/issues/4344 .
2019-08-05 17:52:21 +02:00
Anthony Sottile
82763a293a
Merge pull request #5684 from nicoddemus/errno-nomore
...
Use OSError subclasses instead of handling errno
2019-08-04 14:50:12 -07:00
Samuel Searles-Bryant
1ce45a6f67
Add hostname and timestamp to JUnit XML testsuite tag
...
Fix #5471
2019-08-03 15:54:39 +01:00
Bruno Oliveira
d3e1907899
Use OSError subclasses instead of handling errno
2019-08-02 14:17:46 -03:00
Daniel Hahler
b5b710b3ae
Merge master into features
...
Several conflicts, mostly due to 2c402f4bd
.
Conflicts:
.pre-commit-config.yaml
src/_pytest/outcomes.py
src/_pytest/python_api.py
tox.ini
2019-08-02 16:52:51 +02:00
Daniel Hahler
9064eea216
Improve rm_rf to handle only known functions
...
Warnings are emitted if we cannot safely remove
paths.
Fix #5626
2019-08-02 08:18:11 -03:00
Bruno Oliveira
dc6e7b9fcf
Cache splitnode results to improve tests collection time ( #5681 )
...
Cache splitnode results to improve tests collection time
2019-08-01 22:32:19 -03:00
Alexey Zankevich
b43ebb7d65
Cache split nodes results to reduce long tests collection time on large test suites
2019-08-01 20:46:27 -04:00
Anthony Sottile
1076a7e61d
Merge pull request #5680 from ss18/ss18/pr0
...
Fix some typos
2019-08-01 08:18:48 -07:00
Semen Zhydenko
b3f4398d64
surpressing -> suppressing
2019-08-01 15:11:38 +02:00
Kaiqi
aa13c625da
Change the warning message
2019-07-27 21:06:29 +02:00
Kaiqi
6c2f673daf
Have same name for fulltrace
2019-07-27 17:25:23 +02:00
Bruno Oliveira
b2839c4084
Merge pull request #5646 from nicoddemus/mark-info-docs
...
Update MarkDecorator docs
2019-07-23 16:42:11 -03:00
Florian Bruhin
8c47db724c
Improve output when parsing an ini configuration fails
2019-07-23 15:27:27 +02:00
Bruno Oliveira
693e9d0733
Merge pull request #5634 from blueyed/fix-unittest-exit
...
unittest: handle outcomes.Exit
2019-07-23 10:08:43 -03:00
Bruno Oliveira
d66b6c8371
Update MarkDecorator docs
...
The MarkInfo class no longer exists
2019-07-23 08:07:38 -03:00
Daniel Hahler
3c7438969a
Replace internal config._origargs with invocation_params.args
...
Added in https://github.com/pytest-dev/pytest/pull/5564 .
2019-07-23 06:46:56 +02:00
Ronny Pfannschmidt
8c7d9124ba
switch num_mock_patch_args to do identity checks for the sentinels
2019-07-20 20:21:27 +02:00
Daniel Hahler
d35d09f82d
unittest: handle outcomes.Exit
...
This is required for pytest to stop when using "quit" in pdb, and should
get honored/handled in general.
2019-07-20 07:11:49 +02:00
Daniel Hahler
63d517645c
doctest: handle BdbQuit
...
Map `BdbQuit` exception to `outcomes.Exit`.
This is necessary since we are not wrapping `pdb.set_trace` there, and
therefore our `do_quit` is not called.
2019-07-19 02:57:25 +02:00
Ran Benita
675e9507d8
Don't accept bytes message in pytest.{fail,xfail,skip}
...
It seems to have been added in #1439 to fix #1178 .
This was only relevant for Python 2 where it was tempting to use str (==
bytes) literals instead of unicode literals. In Python 3, it is unlikely
that anyone passes bytes to these functions.
2019-07-17 22:39:10 +03:00
Ran Benita
0b532fda76
Remove unnecessary checks from SetupState
...
Since 4622c28ffd
, _finalizers cannot
contain Nones or tuples, so these checks are not longer needed.
2019-07-17 22:39:10 +03:00
Ran Benita
7d1c697c30
Remove a no-longer-needed check if enum is available
...
Not needed since 4d49ba6529
.
2019-07-17 22:39:10 +03:00
Ran Benita
65aee1e0c8
Allow bytes for OutcomeException(msg=...)
...
It's __repr__ explicitly handles it so allow it.
2019-07-17 22:39:10 +03:00
Ran Benita
8d413c1926
Allow tuple of exceptions in ExceptionInfo.errisinstance
...
isinstance() accepts it and some code does pass a tuple.
Fixup for commit 55a570e513
.
2019-07-17 22:39:10 +03:00
Ran Benita
faf222f8fb
Merge pull request #5593 from bluetech/type-annotations-1
...
Type-annotate pytest.{exit,skip,fail,xfail,importorskip,warns,raises}
2019-07-16 22:38:20 +03:00
Ran Benita
9258fd1296
Merge pull request #5603 from bluetech/saferepr-simplify
...
Simplify SafeRepr a bit
2019-07-16 22:37:02 +03:00
Tim Hoffmann
6f1d358a0c
Fix some ReST indentation issues in docstrings
2019-07-15 16:16:44 +02:00
Ran Benita
129600d698
saferepr: Avoid indirect function calls
...
The DRY savings they provide are rather small, while they make it harder
to type-check, and IMO harder to understand.
2019-07-15 17:07:58 +03:00
Bruno Oliveira
499fda2349
Various cleanups in src/_pytest/python.py ( #5599 )
...
Various cleanups in src/_pytest/python.py
2019-07-14 19:00:35 -03:00
Ran Benita
c7aacc96bb
saferepr: Remove unused setting of max_other
...
max_other is used by the superclass repr_instance, but we override it
and use maxsize instead.
2019-07-14 22:50:14 +03:00
Ran Benita
0394ebffee
saferepr: Use an __init__ instead of setting attributes after construction
...
This will be easier to type-check, and also somewhat clearer.
2019-07-14 22:50:14 +03:00
Ran Benita
0225be53a2
saferepr: Remove dead SafeRepr.repr_unicode
...
This function is not called anywhere directly, and cannot be called by
the dynamic `repr_<type>()` dispatch mechanism because unicode is no
longer a type in Python 3.
2019-07-14 22:13:57 +03:00
Ran Benita
11f1f79222
Allow creating ExceptionInfo from existing exc_info for better typing
...
This way the ExceptionInfo generic parameter can be inferred from the
passed-in exc_info. See for example the replaced cast().
2019-07-14 14:28:24 +03:00
Ran Benita
3f1fb62584
Rework ExceptionInfo to not require manual __init__ call
...
Mypy doesn't like calling __init__() in this way.
2019-07-14 14:28:24 +03:00
Ran Benita
14bf4cdf44
Make ExceptionInfo generic in the exception type
...
This way, in
with pytest.raises(ValueError) as cm:
...
cm.value is a ValueError and not a BaseException.
2019-07-14 14:28:24 +03:00
Ran Benita
56dcc9e1f8
Type-annotate pytest.raises
2019-07-14 14:28:24 +03:00
Ran Benita
55a570e513
Type-annotate ExceptionInfo
2019-07-14 14:28:24 +03:00
Ran Benita
2dca68b863
Type-annotate pytest.warns
2019-07-14 14:28:24 +03:00
Ran Benita
d7ee3dac2c
Type-annotate pytest.{exit,skip,fail,xfail,importorskip}
2019-07-14 14:28:24 +03:00
Ran Benita
866904ab80
Revert "Let context-managers for raises and warns handle unknown keyword arguments"
...
This reverts commit dfe54cd82f
.
The idea in the commit was to simplify the code by removing the check
and instead letting it TypeError which has the same effect.
However this type error is caught by mypy, and rather than ignoring the
error we think it's better and clearer to go back to the previous
explicit check.
2019-07-14 14:28:21 +03:00
Ronny Pfannschmidt
374c4325a8
refactor finding xunit setup/teardown functions
...
s/_get_non_fixture_func(obj, name: str)/_get_first_non_fixture_func(obj, names: List[str])/
2019-07-13 08:13:46 +02:00
Ronny Pfannschmidt
2c071a060e
refactor resolve_arg_value_types
...
* more explicit type checks
* expand from list+tuple to sequence
2019-07-13 08:13:46 +02:00
Bruno Oliveira
0f8b462677
Include <testsuites> root tag in generated XML ( #5550 )
...
Include <testsuites> root tag in generated XML
2019-07-12 14:35:34 -03:00
Ronny Pfannschmidt
898028cb22
remove unused _get_xunit_setup_teardown
2019-07-12 17:45:23 +02:00
Ronny Pfannschmidt
4480d3e518
generate_tests: always use call_extra
...
- its a noop addition in the methods is empty list
2019-07-12 17:44:17 +02:00
Ronny Pfannschmidt
13d750db20
simplify the expression which transfers mark names to keywords
2019-07-12 06:16:06 +02:00
Ronny Pfannschmidt
e98627223f
remove the noop init of PyobjMixin
2019-07-12 06:14:36 +02:00
Albert Tugushev
c89e379f49
Fix typos
2019-07-12 02:35:44 +03:00
Bruno Oliveira
24a66db8d3
Remove support code for unittest 2
...
Also moved a pytest_runtest_makereport hook implemented in
nose.py, but nowadays makes more sense to be implemented in
unittest.py
2019-07-11 20:11:06 -03:00
Bruno Oliveira
37c37963c4
Fix rmtree to remove directories with read-only files
...
Fix #5524
2019-07-11 18:24:53 -03:00
Bruno Oliveira
666acc9b7a
doctest: Add +NUMBER option to ignore irrelevant floating-point… ( #5576 )
...
doctest: Add +NUMBER option to ignore irrelevant floating-point differences
2019-07-11 07:25:37 -03:00
Ran Benita
f7747f5dd6
Remove references to old-style classes in a couple error messages
...
These don't exist in Python 3.
2019-07-10 20:25:45 +03:00
Bruno Oliveira
2c402f4bd9
[cherry-pick to master] Add rudimentary mypy type checking ( #5583 )
...
[cherry-pick to master] Add rudimentary mypy type checking
2019-07-10 07:52:32 -03:00
Bruno Oliveira
602cd5e21f
Introduce Config.invocation_params ( #5564 )
...
Introduce Config.invocation_params
2019-07-10 07:46:34 -03:00
Bruno Oliveira
31738155b5
Remove deprecated features ( #5529 )
...
Remove deprecated features
2019-07-09 19:04:06 -03:00
Bruno Oliveira
9db1823707
Improve type-checking in OutcomeException
...
Fix #5578
2019-07-09 18:26:57 -03:00
Ran Benita
89dfde9535
Add rudimentary mypy type checking
...
Add a very lax mypy configuration, add it to tox -e linting, and
fix/ignore the few errors that come up. The idea is to get it running
before diving in too much.
This enables:
- Progressively adding type annotations and enabling more strict
options, which will improve the codebase (IMO).
- Annotating the public API in-line, and eventually exposing it to
library users who use type checkers (with a py.typed file).
Though, none of this is done yet.
Refs https://github.com/pytest-dev/pytest/issues/3342 .
2019-07-09 12:12:07 -07:00
Anthony Sottile
39a43dbae1
Merge pull request #5575 from bluetech/mypy-initial
...
Add rudimentary mypy type checking
2019-07-09 08:05:14 -07:00
Ran Benita
c1167ac552
Add rudimentary mypy type checking
...
Add a very lax mypy configuration, add it to tox -e linting, and
fix/ignore the few errors that come up. The idea is to get it running
before diving in too much.
This enables:
- Progressively adding type annotations and enabling more strict
options, which will improve the codebase (IMO).
- Annotating the public API in-line, and eventually exposing it to
library users who use type checkers (with a py.typed file).
Though, none of this is done yet.
Refs https://github.com/pytest-dev/pytest/issues/3342 .
2019-07-09 10:49:17 +03:00
David Röthlisberger
aaa7e837cc
doctest: Add +NUMBER option to ignore irrelevant floating-point differences
...
When enabled, floating-point numbers only need to match as far as the
precision you have written in the expected doctest output. This avoids
false positives caused by limited floating-point precision, like this:
Expected:
0.233
Got:
0.23300000000000001
This is inspired by Sébastien Boisgérault's [numtest] but the
implementation is a bit different:
* This implementation edits the literals that are in the "got"
string (the actual output from the expression being tested), and then
proceeds to compare the strings literally. This is similar to pytest's
existing ALLOW_UNICODE and ALLOW_BYTES implementation.
* This implementation only compares floats against floats, not ints
against floats. That is, the following doctest will fail with pytest
whereas it would pass with numtest:
>>> math.py # doctest: +NUMBER
3
This behaviour should be less surprising (less false negatives) when
you enable NUMBER globally in pytest.ini.
Advantages of this implementation compared to numtest:
* Doesn't require `import numtest` at the top level of the file.
* Works with pytest (if you try to use pytest & numtest together, pytest
raises "TypeError: unbound method check_output() must be called with
NumTestOutputChecker instance as first argument (got
LiteralsOutputChecker instance instead)").
* Works with Python 3.
[numtest]: https://github.com/boisgera/numtest
2019-07-08 17:07:58 +01:00
Bruno Oliveira
4cda7093f6
Add note about PYTEST_ADDOPTS
2019-07-06 17:27:54 -03:00
Bruno Oliveira
6a9bf2852a
Apply review suggestions: use a simple struct for invocation params
2019-07-06 12:22:19 -03:00
Bruno Oliveira
3e669a262a
Introduce Config.invocation_args and Config.invocation_plugins
...
These attributes can be used to access the unchanged arguments passed
to pytest.main().
The intention is to use these attributes to initialize workers in
the same manner as the master node is initialized in pytest-xdist.
2019-07-05 19:45:23 -03:00
Bruno Oliveira
a43ba78d3b
Include <testsuites> root tag in generated XML
...
Fix #5477
2019-07-05 11:29:35 -03:00
Bruno Oliveira
0371a3023a
Fix comment in stepwise (follow up to #5555 ) [skip ci]
2019-07-05 09:57:10 -03:00
Bruno Oliveira
d7588b8d40
Merge remote-tracking branch 'upstream/master' into merge-master-into-features
2019-07-05 08:14:18 -03:00
Bruno Oliveira
8651d880a0
Handle xfail(strict=True) properly in --step-wise mode
...
Fix #5547
2019-07-04 20:28:37 -03:00
Miro Hrončok
c54cbd63c8
Replace importlib_metadata with importlib.metadata on Python 3.8+
...
Fixes https://github.com/pytest-dev/pytest/issues/5537
2019-07-04 15:00:10 +02:00
Bruno Oliveira
1db132290f
Apply workaround for multiple short options for Python <= 3.8
...
Hopefully by Python 3.9 this will be fixed upstream, if not we will
need to bump the version again.
Fix #5523
2019-07-04 14:59:40 +02:00
Anthony Sottile
caa08ebd45
Improve quoting in raises match failure message
2019-07-04 05:55:26 -07:00
Bruno Oliveira
dfe54cd82f
Let context-managers for raises and warns handle unknown keyword arguments
...
As suggested during review
2019-07-03 13:57:28 -03:00
Bruno Oliveira
0ed7aa2db6
Make 'request' a reserved name for fixtures
2019-06-30 13:31:39 -03:00
Bruno Oliveira
85cc12e328
Move FIXTURE_FUNCTION_CALL constant to the point of error
...
This is no longer a deprecation so it makes sense to move it
to the place where it is needed instead of leaving it in deprecated.py
2019-06-30 13:31:39 -03:00
Bruno Oliveira
c470ade0a5
Remove 'RemovedInPytest4Warning'
2019-06-30 13:31:39 -03:00
Bruno Oliveira
3a17c1b30b
Remove 'pytest_logwarning' hook
2019-06-30 13:18:07 -03:00
Bruno Oliveira
7b35405033
Remove YIELD_TESTS from deprecated module as it is now an error
2019-06-30 13:18:07 -03:00
Bruno Oliveira
aa1955de72
Remove 'tmpdir_factory.ensuretemp'
2019-06-30 13:18:07 -03:00
Bruno Oliveira
7e58defc15
Remove 'pytest.config'
2019-06-30 13:18:07 -03:00
Bruno Oliveira
f2b7809d5d
Move setup.cfg error message and tests to an appropriate location
...
Those are not really deprecated anymore and are part of the normal
code for config
2019-06-30 13:18:07 -03:00
Bruno Oliveira
647d89c444
Move code about 'pytest_plugins' error to a more appropriate place
...
It is no longer deprecated, but part of the normal code for 'config'
2019-06-30 13:18:07 -03:00
Bruno Oliveira
683b2632b4
Remove explicit kwargs handling from raises, warns and ParameterSet.param
2019-06-30 13:18:06 -03:00
Bruno Oliveira
13f7f27fd2
Remove 'message' parameter from pytest.raises
2019-06-30 13:18:06 -03:00
Bruno Oliveira
279733a30b
Remove support for 'code as string' from pytest.raises and pytest.warns
2019-06-30 11:40:24 -03:00
Bruno Oliveira
be91c4d932
Remove Request.getfuncargvalue
2019-06-30 11:02:46 -03:00
Bruno Oliveira
9021194efd
Apply workaround for multiple short options for Python <= 3.8
...
Hopefully by Python 3.9 this will be fixed upstream, if not we will
need to bump the version again.
Fix #5523
2019-06-29 11:15:28 -03:00
Bruno Oliveira
e6ffa78e59
Refactoring doctests ( #5518 )
...
Refactoring doctests
2019-06-28 19:15:02 -03:00
Anthony Sottile
7ee244476a
Remove astor and reproduce the original assertion expression
2019-06-28 13:38:52 -07:00
AmirElkess
bf39e89946
Refactoring doctests
2019-06-28 21:16:17 +02:00
Anthony Sottile
4e723d6750
Fix crash when discovery fails while using `-p no:terminal`
2019-06-27 10:24:29 -07:00
Anthony Sottile
3e0e31a364
Don't crash with --pyargs and a filename that looks like a module
2019-06-27 08:32:32 -07:00
Bruno Oliveira
1be49e713a
Remove py<35 compatibility code from rewrite.py
2019-06-26 21:44:10 -03:00
Bruno Oliveira
37fb50a3ed
Features assertion pass hook ( #3479 )
...
Features assertion pass hook
2019-06-26 21:14:19 -03:00
Bruno Oliveira
790806e865
Merge pull request #5494 from Zac-HD/funcargnames-to-fixturenames
...
Deprecate funcargnames alias for fixturenames
2019-06-26 21:13:59 -03:00
Bruno Oliveira
629eb3ec6a
Move formatting variables under the "has impls" if
...
Small optimization, move the generation of the intermediate
formatting variables inside the 'if _check_if_assertion_pass_impl():'
block.
2019-06-26 19:26:12 -03:00
Bruno Oliveira
3afee36ebb
Improve docs and reference
2019-06-26 19:15:00 -03:00
Bruno Oliveira
fcbe66feba
Restore proper handling of '%' in assertion messages
2019-06-26 18:51:27 -03:00
Bruno Oliveira
eb90f3d1c8
Fix default value of 'enable_assertion_pass_hook'
2019-06-26 17:54:24 -03:00
Victor Maryama
6854ff2acc
Fixed import order pep8.
2019-06-26 19:05:17 +02:00
Victor Maryama
53234bf613
Added config back to AssertionWriter and fixed typo in check_if_assertion_pass_impl function call.
2019-06-26 19:00:31 +02:00
Victor Maryama
6f851e6cbb
Merge remote-tracking branch 'upstream/master' into features-assertion-pass-hook-master
...
# Conflicts:
# src/_pytest/assertion/rewrite.py
2019-06-26 18:12:56 +02:00
Victor Maryama
9a34d88c8d
Explanation variables only defined if failed or passed with plugins implementing the hook.
2019-06-26 18:10:16 +02:00
Victor Maryama
d91a5d3cd7
Further reverting changes.
2019-06-26 18:10:16 +02:00
Victor Maryama
f755ff6af1
Black formatting.
2019-06-26 18:10:16 +02:00
Victor Maryama
d638da5821
Using ini-file option instead of cmd option.
2019-06-26 18:10:16 +02:00
Victor Maryama
0fb52416b1
Reverted changes.
2019-06-26 18:10:15 +02:00
Bruno Oliveira
6a2d844c5d
Fix typo replace `circuting` with `circuiting`. ( #5497 )
...
Fix typo replace `circuting` with `circuiting`.
2019-06-26 11:09:22 -03:00
Anthony Sottile
6cf8e71dca
Merge pull request #5496 from pytest-dev/stray_comment
...
Delete stray comment
2019-06-26 05:59:38 -07:00
Tim Gates
fdb6e35b1b
Fix typo replace `circuting` with `circuiting`.
2019-06-26 20:23:35 +10:00
Victor Maryama
7efdd5063b
Update src/_pytest/assertion/rewrite.py
...
Co-Authored-By: Bruno Oliveira <nicoddemus@gmail.com>
2019-06-26 10:50:27 +02:00
Anthony Sottile
bfba33ec9e
Delete stray comment
2019-06-25 20:24:13 -07:00
Anthony Sottile
3f3f3e7a29
Merge pull request #5495 from nicoddemus/blueyed/cmp-bytes
...
Improve comparison of byte strings (supersedes #5267 )
2019-06-25 19:16:24 -07:00
Bruno Oliveira
aaf40314d1
Do not attempt to rewrite non-source files ( #5490 )
...
Do not attempt to rewrite non-source files
2019-06-25 20:43:23 -03:00
Bruno Oliveira
3f2344e8f7
Show bytes ascii representation instead of numeric value
2019-06-25 20:40:25 -03:00
Daniel Hahler
8c7eb82363
Fix/improve comparison of byte strings
...
Fixes https://github.com/pytest-dev/pytest/issues/5260 .
2019-06-25 20:15:45 -03:00
Zac Hatfield-Dodds
ed85c83154
Deprecate funcargnames alias
2019-06-26 08:53:17 +10:00
Victor Maryama
80ac910a24
Added msg to docstring for cleaning pyc.
2019-06-25 19:49:57 +02:00
Victor Maryama
4db5488ed8
Now dependent on command line option.
2019-06-25 19:49:05 +02:00
Bruno Oliveira
019455298b
Merge remote-tracking branch 'upstream/features' into merge-features-into-master
2019-06-25 12:07:54 -03:00
Bruno Oliveira
64a6365227
Include pytest version in the cached pyc tags ( #5484 )
...
Include pytest version in the cached pyc tags
2019-06-25 12:07:01 -03:00
Anthony Sottile
b991810f32
Do not attempt to rewrite non-source files
2019-06-25 08:00:20 -07:00
Victor Maryama
2280f28596
Black formatting.
2019-06-25 10:36:01 +02:00
Victor Maryama
f8c9a7b86d
Formatting and removed py2 support.
2019-06-25 10:35:42 +02:00
Victor Maryama
98b212cbfb
Added "experimental" note.
2019-06-25 10:35:09 +02:00
Zac Hatfield-Dodds
d72fb73fa0
Do not allow abbreviated arguments
2019-06-25 13:51:33 +10:00
Bruno Oliveira
37fce6c6e5
Pickup addition positional args passed to _parse_parametrize_ar… ( #5483 )
...
Pickup addition positional args passed to _parse_parametrize_args
2019-06-24 22:05:19 -03:00
Kevin J. Foley
95714436a1
Pickup additional positional args passed to _parse_parametrize_args
2019-06-24 20:43:52 -04:00
Bruno Oliveira
f43fb13179
Include pytest version in the cached pyc tags
...
Fix #1671
2019-06-24 20:37:07 -03:00
Bruno Oliveira
3f5b078462
Merge pull request #5441 from nicoddemus/faulthandler-5440
...
Integrate pytest-faulthandler into the core
2019-06-24 20:01:15 -03:00
Bruno Oliveira
63c4802be0
minor: clarify help with reportchars ( #5475 )
...
minor: clarify help with reportchars
2019-06-24 19:59:15 -03:00
Anthony Sottile
380ca8f880
Use new raise syntax in one case
2019-06-24 11:24:03 -07:00
Anthony Sottile
4cd08f9b52
Switch from deprecated imp to importlib
2019-06-24 09:48:38 -07:00
Victor Maryama
52e695b329
Removed debug code.
2019-06-24 17:47:48 +02:00
Victor Maryama
9a89783fbb
Assertion passed hook
2019-06-24 16:09:39 +02:00
Daniel Hahler
01a094cc43
minor: clarify help with reportchars
...
`-ra` / `-rA` will include "w" also. This does not explicitly mention
it (allowing for change the behavior), but makes it a) clearer that "w"
is a recognized reportchar, and b) less confusing that `-ra
--disable-warnings` still displays them.
2019-06-24 06:07:52 +02:00
Bruno Oliveira
3ce31b6370
Change pytest-faulthandler for simplification
...
* The --no-faulthandler option is not necessary given that we can use
`-p no:faulthandler`.
* The `--faulthandler-timeout` command-line option has become an ini
option, for the reasons described in
https://github.com/pytest-dev/pytest-faulthandler/issues/34 and
users can still set it from the command-line.
Fix pytest-dev/pytest-faulthandler#34
2019-06-22 19:22:43 -03:00
Bruno Oliveira
a37b902afe
Integrate pytest-faulthandler into the core
...
* Add pytest-faulthandler files unchanged
* Adapt imports and tests
* Add code to skip registration of the external `pytest_faulthandler`
to avoid conflicts
Fix #5440
2019-06-21 21:02:24 -03:00
Ronny Pfannschmidt
0627d92df2
fix typos in the resolution of #5125
2019-06-17 20:35:23 +02:00
Bruno Oliveira
b38a4e8e11
Fix stepwise crash when first collected module fails ( #5446 )
...
Fix stepwise crash when first collected module fails
2019-06-16 10:43:18 -03:00
Bruno Oliveira
689ce112e7
Small cleanups on _pytest.compat ( #5451 )
...
Small cleanups on _pytest.compat
2019-06-16 10:42:07 -03:00
Bruno Oliveira
87fc5a5455
Make pytest warnings show as from 'pytest' module instead of '_pytest.warning_types' ( #5452 )
...
Make pytest warnings show as from 'pytest' module instead of '_pytest.warning_types'
2019-06-16 10:41:40 -03:00
Bruno Oliveira
bbfc8d1501
conversion of exit codes to enum + exposure ( #5420 )
...
conversion of exit codes to enum + exposure
2019-06-16 10:41:18 -03:00
Bruno Oliveira
ab6ed381ac
Improve ExitCode docstring
2019-06-15 20:53:46 -03:00
Daniel Hahler
cf27af734e
Merge pull request #5404 from Zac-HD/helpful-mock-unwrapper
...
Emit warning for broken object
2019-06-15 18:54:03 +02:00
Ronny Pfannschmidt
8b3b10b14b
pre-commit
2019-06-15 17:41:13 +02:00
Ronny Pfannschmidt
103d6146b0
document exitcode members
2019-06-15 17:18:21 +02:00
Bruno Oliveira
43e8576ca3
Make pytest warnings show as from 'pytest' module instead of '_pytest.warning_types'
...
When we configure warnings as errors, users see error messages like this:
def test():
> warnings.warn(pytest.PytestWarning("some warning"))
E _pytest.warning_types.PytestWarning: some warning
This is a problem because suggests the user should use `_pytest.warning_types.PytestWarning` to configure
their warning filters, which is not nice.
This commit changes the message to:
def test():
> warnings.warn(pytest.PytestWarning("some warning"))
E pytest.PytestWarning: some warning
2019-06-15 11:48:34 -03:00
Bruno Oliveira
d8fa434d39
Remove Python 2-only workaround
2019-06-15 10:45:16 -03:00
Bruno Oliveira
177af032d2
Remove unused/unneeded code
2019-06-15 10:45:16 -03:00
Bruno Oliveira
355eb5adfb
Small cleanups on _pytest.compat
...
Small improvements and cleanups
2019-06-15 10:06:37 -03:00
Ronny Pfannschmidt
2b92fee1c3
initial conversion of exit codes to enum
2019-06-15 06:48:00 +02:00
Bruno Oliveira
7513d87b15
Remove broken/unused PytestPluginManager.addhooks
...
The function has been deprecated for ages and
the PLUGIN_MANAGER_ADDHOOKS constant doesn't even exist since 3.0.
Because the function is clearly broken, this change doesn't even
require a CHANGELOG.
2019-06-13 19:55:13 -03:00
Bruno Oliveira
bc345ac980
Remove handling of collection errors by --sw
...
Since then pytest itself adopted the behavior of interrupting
the test session on collection errors, so --sw no longer needs
to handle this.
The --sw behavior seems have been implemented when pytest
would continue execution even if there were collection errors.
2019-06-13 17:19:36 -03:00
Bruno Oliveira
4cc05a657d
Fix --sw crash when first file in cmdline fails to collect
...
Fix #5444
2019-06-13 16:47:01 -03:00
Bruno Oliveira
bad7ab721a
Minor: tox: coverage: use -m with coverage-report ( #5427 )
...
Minor: tox: coverage: use -m with coverage-report
2019-06-12 19:44:15 -03:00
Bruno Oliveira
52780f39ce
Postpone removal of --result-log to pytest 6.0
...
As we did not provide an alternative yet, it is better to postpone
the actual removal until we have provided a suitable and stable
alternative.
Related to #4488
2019-06-12 08:26:11 -03:00
Zac-HD
c5a549b5bb
Emit warning for broken object
2019-06-09 22:17:40 +10:00
Daniel Hahler
e868bb647d
remove commented code
2019-06-09 12:51:32 +02:00
Bruno Oliveira
f0cee593f2
Link deprecation docs pytest.raises 'message' warning
...
As commented in https://github.com/pytest-dev/pytest/issues/3974#issuecomment-499870914
2019-06-07 14:14:46 -03:00
Bruno Oliveira
9f5c356784
Remove ExceptionInfo.__str__, falling back to __repr__ ( #5413 )
...
Remove ExceptionInfo.__str__, falling back to __repr__
2019-06-07 08:48:03 -03:00
Anthony Sottile
ccd87f9e80
small mypy fixes
2019-06-06 09:13:02 -07:00
Bruno Oliveira
65c2a81924
Remove ExceptionInfo.__str__, falling back to __repr__
...
Fix #5412
2019-06-06 12:20:32 -03:00
Bruno Oliveira
9f8b566ea9
Turn PytestDeprecationWarning into error ( #5410 )
...
Turn PytestDeprecationWarning into error
2019-06-05 22:20:14 -03:00
Bruno Oliveira
3656885d0d
Fix verbosity bug in --collect-only ( #5391 )
...
Fix verbosity bug in --collect-only
2019-06-05 20:47:59 -03:00
Thomas Hisch
577b0dffe7
Fix verbosity bug in --collect-only
2019-06-05 20:10:16 -03:00
Bruno Oliveira
8f5cb461a8
Turn PytestDeprecationWarning into error
...
Fix #5402
2019-06-05 19:02:52 -03:00
Anthony Sottile
5fdc2d7744
Merge pull request #5400 from asottile/prefixes
...
Clean up u' prefixes and py2 bytes conversions
2019-06-04 19:03:12 -07:00
Anthony Sottile
25cef55e4a
Merge pull request #5398 from nicoddemus/kwargs-refactoring
...
Use keyword-only arguments in a few places
2019-06-04 18:21:44 -07:00
Anthony Sottile
be2be040f9
Clean up u' prefixes and py2 bytes conversions
2019-06-04 17:50:34 -07:00
Anthony Sottile
0f4992c223
Merge pull request #5393 from nicoddemus/unittest-self-5390
...
item.obj is again a bound method on TestCase function items
2019-06-04 17:48:48 -07:00
Bruno Oliveira
23cd68b667
Use keyword-only arguments in a few places
2019-06-04 21:10:59 -03:00
Bruno Oliveira
1f8fd421c4
item.obj is again a bound method on TestCase function items
...
Fix #5390
2019-06-04 20:22:49 -03:00
Dirk Thomas
0a91e181af
fix logic if importlib_metadata.PathDistribution.files is None
2019-06-04 10:41:58 -07:00
Anthony Sottile
1b381d5277
Revert "Unroll calls to any #5062 ( #5103 )"
...
This reverts commit 2b9ca34280
, reversing
changes made to 0a57124063
.
2019-06-03 08:42:03 -07:00
Anthony Sottile
2125d04501
Revert "Fix all() unroll for non-generators/non-list comprehensions ( #5360 )"
...
This reverts commit 733f43b02e
, reversing
changes made to e4fe41ebb7
.
2019-06-03 08:42:03 -07:00
Anthony Sottile
5dcf85c17e
manual: remove dependence on six
2019-06-03 12:08:02 -03:00
Anthony Sottile
ca1efd57bd
git rm src/_pytest/_code/_py2traceback.py
2019-06-03 12:08:02 -03:00
Anthony Sottile
c63320cc31
codecs.open / io.open
2019-06-03 12:08:02 -03:00
Anthony Sottile
a91fe1fedd
pre-commit run pyupgrade --all-files
2019-06-03 12:08:02 -03:00
Anthony Sottile
3f1ec520fc
pre-commit run reorder-python-imports --all-files
2019-06-03 12:08:01 -03:00
Anthony Sottile
5034399d7a
pre-commit run fix-encoding-pragma --all-files
2019-06-03 12:08:01 -03:00
Thomas Hisch
ef053193b5
logging: Extend LEVELNAME_FMT_REGEX
2019-06-03 05:53:19 +02:00