Jay
ca40380e99
Add check for zero denominator in approx ( #10624 )
...
Closes #10533
2023-01-24 07:07:42 -03:00
Ran Benita
02893139f9
Merge pull request #10680 from bluetech/capture-typing
...
capture: improve typing
2023-01-23 14:38:28 +02:00
Ran Benita
8c53dbf9d7
capture: fix pyright type error
...
This is OK in mypy, but doesn't hurt to fix.
2023-01-23 14:12:01 +02:00
Ran Benita
54b8b40f83
capture: improve NoCapture typing
2023-01-23 14:12:01 +02:00
Ran Benita
54911acf8d
capture: improve `captureclass` typing
...
Previously, the any `captureclass` arguments were Any. We need to
introduce another common base class to fix this.
2023-01-23 14:12:01 +02:00
Ran Benita
c746d2b016
capture: improve `SysCapture`/`FDCapture` typing
...
Instead of `SysCapture`/`FDCapture` inheriting from
`SysCaptureBinary`/`FDCaptureBinary`, have both inherit from a common
`SysCaptureBase`/`FDCaptureBase`. This fixes a Liskov substitution
violation.
2023-01-23 14:12:01 +02:00
Ran Benita
a3693ce503
capture: improve `DontReadFromInput` typing
...
Have `DontReadFromInput` inherit from `TextIO`, ensuring it's fully
compatible with `sys.stdin` (which has type `TextIO`).
2023-01-23 14:12:01 +02:00
Yannick PÉROUX
af4143729f
Allow spaces in -p arguments ( #10658 )
2023-01-21 08:22:44 -03:00
q0w
bd7919e03d
Initialize args and args_source during Config.__init__
...
Closes #10626
Co-authored-by: Bruno Oliveira <nicoddemus@gmail.com>
2023-01-21 08:19:54 -03:00
Ran Benita
7d4b40337b
capture: fix some Anys
2023-01-21 10:39:58 +02:00
Ran Benita
6a714d7b70
capture: `CaptureResult` can be a namedtuple again ( #10678 )
...
mypy now supports generic NamedTuple.
2023-01-21 09:39:58 +02:00
Ran Benita
310b67b227
Drop attrs dependency, use dataclasses instead ( #10669 )
...
Since pytest now requires Python>=3.7, we can use the stdlib attrs
clone, dataclasses, instead of the OG package.
attrs is still somewhat nicer than dataclasses and has some extra
functionality, but for pytest usage there's not really a justification
IMO to impose the extra dependency on users when a standard alternative
exists.
2023-01-20 11:13:36 +02:00
Ramsey
4d4ed42c34
Fix crash if `--cache-show` and `--help` are passed at the same time
...
Closes #10592
2023-01-19 09:44:57 -03:00
Ronny Pfannschmidt
096b942ec4
Merge pull request #10660 from ikonst/2023-01-13-raises-typing
...
Derive pytest.raises from AbstractContextManager
2023-01-18 06:42:46 +01:00
Ilya Konstantinov
1a96f16401
Derive pytest.raises from AbstractContextManager
...
Makes `AbstractContextManager` the shared base class between "raises" and other context managers.
The motivation is for type checkers to narrow `pytest.raises(...) if x else nullcontext()` to a `ContextManager` rather than `object`.
2023-01-13 13:58:49 -05:00
s-padmanaban
8efb4bb9c1
Do not update cache from xdist worker ( #10641 )
2023-01-13 07:14:52 -03:00
Kadino
3ad4344656
Mitigate directory creation race condition ( #10607 )
...
Fixes https://github.com/pytest-dev/pytest/issues/10604 which could intermittently display unexpected behavior between checking if the path exists and requesting creation. This was fairly prevalent when pytest was being invoked in parallel by another test runner (CTest) and trying to create the same parent-folder for multiple XMLs. A modest amount of testing did not reproduce other filesystem race conditions.
This notably does not work around an edge case where the parent path of the XML could be created as a file instead of a folder or link. That vanishingly rare case should cause file creation to fail on the next line, with a fairly obvious exception message.
2023-01-06 09:12:24 -03:00
Yusuke Kadowaki
10220d3f31
Change the default policy to all
2022-12-25 00:18:38 +09:00
Pierre Sassoulas
b31db4809b
Avoid truncation when truncating means longer output ( #10446 )
...
Fixes #6267
2022-12-17 10:24:46 -03:00
Marko Pacak
9fbd67dd4b
Class methods can now be discovered as tests ( #10552 )
...
Fix #10525
2022-12-02 15:53:04 +00:00
Daniel Scheffler
fb701b538c
Use os.sep instead of os.path.sep.
...
Signed-off-by: Daniel Scheffler <danschef@gfz-potsdam.de>
2022-12-01 18:16:02 +01:00
Yusuke Kadowaki
62e75c7d55
Documentation update for tmp_path configurations
2022-12-01 22:29:46 +09:00
Yusuke Kadowaki
f513d33d5a
Modify documentation to use `.stash` when storing test results. ( #10535 )
2022-11-27 22:09:56 +02:00
Prerak Patel
857e34ef85
Fix bug where file system root was erroneously be used as rootdir on Windows
...
Fix #10506
2022-11-23 14:46:00 -03:00
Yusuke Kadowaki
99dfc19fe6
Fix `tmp_path_retention_policy` crash when skipping from fixture ( #10517 )
...
Also uses the stash to save the test status.
Fix #10502
2022-11-23 10:48:29 -03:00
Daniel Valenzuela
791b51d0fa
Show test name when skipping from fixture ( #10482 )
...
Fixes #10457
2022-11-18 09:20:38 -03:00
Anthony Sottile
66b28912ac
Merge pull request #10497 from pytest-dev/pre-commit-ci-update-config
...
[pre-commit.ci] pre-commit autoupdate
2022-11-16 13:18:59 -05:00
Yusuke Kadowaki
cca029d55e
Add configuration options to control how `tmp_path` directories are kept ( #10442 )
...
Close #8141
2022-11-15 09:11:39 -03:00
Bruno Oliveira
d5466b3917
Fix typing errors after mypy update
2022-11-15 08:53:23 -03:00
Hugo van Kemenade
0314b50c52
Fix 'importlib.abc.TraversableResources' deprecation warning in Python 3.12 ( #10452 )
2022-10-31 12:49:51 -03:00
Cal Jacobson
549839bac5
fix type in python_api.py
...
excpected -> expected
2022-10-30 21:59:09 -05:00
Zac Hatfield-Dodds
3a68c08426
Use exceptiongroup for teardown errors
2022-10-23 15:45:50 -07:00
Itxaso Aizpurua
9e1804a6ee
Add --log-disable CLI option ( #10371 )
...
Fixes #7431
2022-10-23 18:23:34 -03:00
Anthony Sottile
59d8f8a223
_pytest._py.path: get mypy passing
2022-10-19 21:42:40 -04:00
Anthony Sottile
ed4c18f686
_pytest._py.path: combine PathBase and LocalPath
2022-10-19 21:42:40 -04:00
Anthony Sottile
6660d45521
_pytest._py.path: combine PosixPath into LocalPath
2022-10-19 21:42:40 -04:00
Anthony Sottile
af078f3a96
_pytest._py.path: combine Checkers classes
2022-10-19 21:42:40 -04:00
Anthony Sottile
73349ef3e1
_pytest._py.path: flake8 fixes
2022-10-19 21:42:40 -04:00
Anthony Sottile
63c4d45c59
_pytest._py.path: importlib mode always available
2022-10-19 21:42:40 -04:00
Anthony Sottile
eebbfc65c9
_pytest._py.error: mypy typing
2022-10-19 21:42:40 -04:00
Anthony Sottile
382209d9e9
_pytest._py.path: remove decorator compat
2022-10-19 16:52:26 -04:00
Anthony Sottile
00e2f1c15c
_pytest._py.path: remove _cmp compat
2022-10-19 16:52:26 -04:00
Anthony Sottile
8a151774b8
_pytest._py.path: remove fspath compat
2022-10-19 16:52:26 -04:00
Anthony Sottile
a7c1fc204b
remove other py.* accesses in _pytest._py.path
2022-10-19 16:52:26 -04:00
Anthony Sottile
965e942dfb
use getrawcode from _pytest._code
2022-10-19 16:52:26 -04:00
Anthony Sottile
349f4bffa0
use module __getattr__ for py.error to fix doctesting
2022-10-19 16:52:26 -04:00
pre-commit-ci[bot]
49abbf2485
[pre-commit.ci] auto fixes from pre-commit.com hooks
...
for more information, see https://pre-commit.ci
2022-10-19 16:52:26 -04:00
Anthony Sottile
19dda7c9bd
vendor py.path and py.error
2022-10-19 16:52:26 -04:00
Zac Hatfield-Dodds
3dac833a52
Merge pull request #10383 from gabriellandau/dont-pdb-break-for-skiptest-exceptions
2022-10-15 11:14:26 -07:00
Zac Hatfield-Dodds
36b6384ff2
Merge pull request #10384 from tony/showlocals-negation
2022-10-15 10:43:59 -07:00