Commit Graph

9742 Commits

Author SHA1 Message Date
Anthony Sottile
3d92d5a659 Make sure parametrize ids are printable 2018-11-19 11:03:52 -08:00
Anthony Sottile
50e3783f07 Merge pull request #4421 from RonnyPfannschmidt/remove-pytest-namespace
remove pytest namespace hook
2018-11-19 09:35:33 -08:00
Michael D. Hoyle
1568e38997 Use pkg_resources.parse_version in minver check
Use pkg_resources.parse_version in minver check

Add meself to AUTHORS & changelog

Format CHANGELOG
2018-11-19 11:25:27 -05:00
Daniel Hahler
6e85febf20 Merge pull request #4420 from blueyed/merge-master
Merge master into features
2018-11-19 14:53:01 +01:00
Ronny Pfannschmidt
ba17363d75 remove pytest namespace hook 2018-11-19 14:04:41 +01:00
Daniel Hahler
92a2884b09 pdb: support kwargs with pdb.set_trace
This handles `header` similar to Python 3.7 does it, and forwards any
other keyword arguments to the Pdb constructor.

This allows for `__import__("pdb").set_trace(skip=["foo.*"])`.

Fixes https://github.com/pytest-dev/pytest/issues/4416.
2018-11-19 13:04:14 +01:00
Daniel Hahler
2754a13f86 Merge master into features 2018-11-19 12:55:29 +01:00
Anthony Sottile
a281d6620b Merge pull request #4417 from blueyed/tox-mock
tox.ini: remove additionally missed mock deps
2018-11-18 12:06:59 -08:00
Nicholas Devenish
4eddf634e7 Rename and split out the testing, and reword the changelog. 2018-11-18 20:01:11 +00:00
Nicholas Devenish
1a8d9bf254 Let approx() work on more generic sequences
approx() was updated in 9f3122fe to work better with numpy arrays,
however at the same time the requirements were tightened from
requiring an Iterable to requiring a Sequence - the former being
tested only on interface, while the latter requires subclassing or
registration with the abc.

Since the ApproxSequence only used __iter__ and __len__ this commit
reduces the requirement to only what's used, and allows unregistered
Sequence-like containers to be used.

Since numpy arrays qualify for the new criteria, reorder the checks so
that generic sequences are checked for after numpy arrays.
2018-11-18 20:01:11 +00:00
Daniel Hahler
c56cc93cbd tox.ini: remove additionally missed mock deps
Ref: https://github.com/pytest-dev/pytest/pull/4415#discussion_r234452144
2018-11-18 19:37:04 +01:00
Daniel Hahler
cdbe2299ec Merge pull request #4409 from blueyed/str
Add Testdir.__str__ to return str(self.tmpdir)
2018-11-18 12:52:31 +01:00
Daniel Hahler
62967b3110 Merge pull request #4367 from blueyed/determine_setup
Optimize/revisit determine_setup
2018-11-18 12:52:07 +01:00
Ronny Pfannschmidt
5c24430555 Merge pull request #4415 from blueyed/extras-testing
setup.py: add "testing" extra requirement
2018-11-18 12:16:06 +01:00
Daniel Hahler
e46f995cc7 setup.py: add "testing" extra requirement
Use this in tox to stream-line base testing requirements.

Closes https://github.com/pytest-dev/pytest/issues/4410.
2018-11-18 08:55:17 +01:00
Anthony Sottile
10cdae8e38 Merge pull request #4414 from asottile/starred_with_side_effect
Fix assertion rewriting involving Starred + side-effects
2018-11-17 16:17:24 -08:00
Daniel Hahler
5fab0ca312 Merge pull request #4403 from RonnyPfannschmidt/fix-4400
Fix #4400 - rearrange the handling of yield test warnings/errors
2018-11-18 00:57:44 +01:00
Daniel Hahler
7f990e2b9a Merge pull request #4408 from blueyed/default-invalid-escape-sequence
tox.ini: do not cause SyntaxWarning with py37  [ci skip]
2018-11-17 20:08:37 +01:00
Anthony Sottile
690a63b921 Fix assertion rewriting involving Starred + side-effects 2018-11-17 10:42:51 -08:00
Daniel Hahler
4c9cde74ab Merge pull request #4411 from blueyed/fix-testpaths-with-pyargs
Fix collection of testpaths with `--pyargs`.
2018-11-17 17:20:29 +01:00
Ronny Pfannschmidt
94e5bdd4e0 Merge pull request #4413 from blueyed/tox-posargs
tox: fix/improve posargs with pexpect factor(s)  [ci skip]
2018-11-17 17:18:31 +01:00
Daniel Hahler
cb1d4044e6 tox: fix/improve posargs with pexpect factor(s) [ci skip] 2018-11-17 15:35:40 +01:00
Daniel Hahler
a252e81ced Fix collection of testpaths with --pyargs
Fixes https://github.com/pytest-dev/pytest/issues/4405.
2018-11-17 13:28:10 +01:00
Daniel Hahler
3acfa3abdc Add Testdir.__str__ to return str(self.tmpdir)
I just expected this with `monkeypatch.setenv("PYTHONPATH", str(testdir))`,
wondering why it was not picked up correctly.
`
2018-11-17 13:18:54 +01:00
Daniel Hahler
084c36d538 tox.ini: do not cause SyntaxWarning with py37 [ci skip]
Do not cause a SyntaxError for something like:

> DeprecationWarning: invalid escape sequence \w

This was happening via pdb++ when it imported pygments (and that had no
compiled .pyc file).
2018-11-17 11:53:15 +01:00
Ronny Pfannschmidt
950d30e6e0 fix #4400 - rearrange the handling of yield test warnings/errors 2018-11-16 13:49:46 +01:00
Ronny Pfannschmidt
5872e1c35a Merge pull request #4392 from nicoddemus/merge-master-into-features
Merge master into features
2018-11-15 06:59:42 +01:00
Daniel Hahler
0385c27343 cacheprovider: do not write README/.gitignore to existing dir
Fixes https://github.com/pytest-dev/pytest/issues/4393.
2018-11-14 22:09:09 +01:00
Bruno Oliveira
9dec146edf Merge pull request #4388 from nicoddemus/release-4.0.0
Release 4.0.0
2018-11-14 15:11:09 -02:00
Bruno Oliveira
c2d6b3524c Preparing release version 4.0.0 4.0.0 2018-11-13 21:01:51 +00:00
Bruno Oliveira
e025974cbd Merge remote-tracking branch 'upstream/master' into release-4.0.0 2018-11-13 20:58:24 +00:00
Bruno Oliveira
fea09cda6c Merge pull request #4383 from nicoddemus/merge-master-into-features
Merge master into features (about to prepare 4.0)
2018-11-13 18:57:41 -02:00
Daniel Hahler
ba457f5feb Optimize/revisit determine_setup 2018-11-13 20:14:24 +01:00
Daniel Hahler
ed91d5f086 config: set invocation_dir in the constructor already
This allows to make use of it when determining the rootdir etc.
2018-11-13 20:14:24 +01:00
Daniel Hahler
b7863a5f48 Merge pull request #4381 from blueyed/callinfo-repr
Fix CallInfo.__repr__ for unfinished call
2018-11-13 18:13:58 +01:00
Aly Sivji
b83e97802e improve failure output 2018-11-13 09:37:02 -06:00
Daniel Hahler
a72eff5a08 Merge pull request #4382 from blueyed/pytester-pop-TOX_ENV_DIR
pytester: pop TOX_ENV_DIR from os.environ
2018-11-13 12:42:51 +01:00
Daniel Hahler
46c8363e12 Merge pull request #4380 from blueyed/improve-ci
Travis: move faster builds to baseline
2018-11-13 12:40:26 +01:00
Bruno Oliveira
557cb6cffe Merge remote-tracking branch 'upstream/master' into merge-master-into-features 2018-11-13 09:01:37 -02:00
Bruno Oliveira
8198e7cd33 Merge pull request #4349 from nicoddemus/pytest4-warnings-as-errors
Change RemovedInPytest4Warnings to errors by default
2018-11-13 08:31:47 -02:00
Daniel Hahler
a6a96469ca pytester: pop TOX_ENV_DIR from os.environ
Closes: https://github.com/pytest-dev/pytest/pull/4378
Fixes: https://github.com/pytest-dev/pytest/issues/4366
2018-11-13 09:02:52 +01:00
Daniel Hahler
27dab4e05f Fix CallInfo.__repr__ for unfinished call
Fixes https://github.com/pytest-dev/pytest/issues/3554
Ref: https://github.com/pytest-dev/pytest/pull/3560
Ref: https://github.com/pytest-dev/pytest/pull/3562
2018-11-13 08:51:43 +01:00
Daniel Hahler
3e05848ab9 AppVeyor: run py{27,37}-xdist first 2018-11-13 01:33:05 +01:00
Daniel Hahler
5902e5a2ce Travis: move faster builds to baseline
- use py27-pexpect,py27-trial,py27-numpy and py37-xdist in baseline,
  using pexpect there catches errors with pdb tests early, and
  py37-xdist is much faster than py37.
- move py34 and py36 out of baseline.
2018-11-13 01:26:22 +01:00
Bruno Oliveira
243d898b38 Merge pull request #4373 from blueyed/py37-by-default
CI: use py37 instead of py36 by default
2018-11-12 20:56:10 -02:00
Aly Sivji
2bffd6829e Move dataclass tests for 3.7 to separate file 2018-11-12 15:36:16 -06:00
Bruno Oliveira
f8f22d29ee Use a custom cache directory for test_stepwise tests
Otherwise the tests will use tox's env cache which makes them flaky
2018-11-12 16:57:39 -02:00
Bruno Oliveira
dc20dedbc7 Change RemovedInPytest4Warnings to errors by default
To keep existing tests which emit RemovedInPytest4Warnings running, decided
to go with a command line option because:

* Is harder to integrate an ini option with tests which already use an ini file
* It also marks tests which need to be removed/updated in 4.1, when
  RemovedInPytest4Warning and related functionality are removed.

Fix #3737
2018-11-12 16:10:57 -02:00
Aly Sivji
4e99c80425 have tests pass in python37; move to separate file 2018-11-12 11:24:15 -06:00
Bruno Oliveira
3cec1482eb Merge branch 'master' into py37-by-default 2018-11-12 14:03:59 -02:00