Ronny Pfannschmidt
76f3f3da00
fix #11797 : be more lenient on SequenceLike approx
...
this needs a validation as it allows partially implemented sequences
2024-06-18 17:01:24 +02:00
Sviatoslav Sydorenko (Святослав Сидоренко)
fe4961afae
Modernize the skipped `test_issue_9765` regression test ( #12468 )
...
* 🚑 Explicitly set encoding @ `subprocess.run()`
This invocation is present in the `test_issue_9765` regression test
that is always skipped unconditionally, resulting in the
`EncodingWarning` never manifesting itself in CI or development
environments of the contributors.
* Change `setup.py` call w/ `pip install` @ tests
Using this CLI interface has been deprecated in `setuptools` [[1]].
[1]: https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html
2024-06-17 15:44:14 +00:00
Ran Benita
7ef9da1f02
terminalwriter: improve `PYTEST_THEME`, `PYTEST_THEME_MODE` usage errors
2024-06-10 11:50:08 +03:00
dependabot[bot]
3d91e42229
build(deps): Bump pytest-bdd in /testing/plugins_integration ( #12442 )
...
Bumps [pytest-bdd](https://github.com/pytest-dev/pytest-bdd ) from 7.1.2 to 7.2.0.
- [Release notes](https://github.com/pytest-dev/pytest-bdd/releases )
- [Changelog](https://github.com/pytest-dev/pytest-bdd/blob/master/CHANGES.rst )
- [Commits](https://github.com/pytest-dev/pytest-bdd/compare/7.1.2...7.2.0 )
---
updated-dependencies:
- dependency-name: pytest-bdd
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-10 08:28:57 +02:00
Ran Benita
f85289ba87
Merge pull request #12436 from bluetech/unittest-rerun-assertion
...
unittest: fix assertion errors on unittest reruns
2024-06-08 02:11:20 +03:00
Ran Benita
18f15a38fc
Merge pull request #12435 from bluetech/avoid-type-checking
...
Avoid some `TYPE_CHECKING`
2024-06-08 02:11:06 +03:00
Ran Benita
de47b73520
unittest: fix assertion errors on unittest reruns
...
This fixes unittest test reruns when using plugins like
pytest-rerunfailures.
The `instance` property uses AttributeError to check if the instance
needs to be initialized, so `del` is the correct way to clear it, not
setting to `None`.
Regressed in 8.2.2.
2024-06-07 10:21:15 +03:00
dependabot[bot]
13f97632c6
build(deps): Bump pytest-trio in /testing/plugins_integration
...
Bumps [pytest-trio](https://github.com/python-trio/pytest-trio ) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/python-trio/pytest-trio/releases )
- [Commits](https://github.com/python-trio/pytest-trio/compare/v0.7.0...v0.8.0 )
---
updated-dependencies:
- dependency-name: pytest-trio
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-07 07:03:09 +00:00
Ran Benita
c07bbdfa5b
Avoid some TYPE_CHECKING
...
It's better not to use it when possible.
2024-06-07 09:36:55 +03:00
Tomasz Kłoczko
6b2daaa2e9
[pre-commit] Add pyupgrade back as a manual stage ( #12418 )
...
Launchable with ``pre-commit run --hook-stage manual pyupgrade -a``
---------
Signed-off-by: Tomasz Kłoczko <kloczek@github.com>
Co-authored-by: Pierre Sassoulas <pierre.sassoulas@gmail.com>
2024-06-06 23:52:29 +02:00
Ran Benita
d4dbe771f0
Merge pull request #12409 from bluetech/reorder-items-perf
...
fixtures: fix catastrophic performance problem in `reorder_items`
2024-06-04 10:16:19 +03:00
Ran Benita
e89d23b247
fixtures: fix catastrophic performance problem in `reorder_items`
...
Fix #12355 .
In the issue, it was reported that the `reorder_items` has quadratic (or
worse...) behavior with certain simple parametrizations. After some
debugging I found that the problem happens because the "Fix
items_by_argkey order" loop keeps adding the same item to the deque,
and it reaches epic sizes which causes the slowdown.
I don't claim to understand how the `reorder_items` algorithm works, but
if as far as I understand, if an item already exists in the deque, the
correct thing to do is to move it to the front. Since a deque doesn't
have such an (efficient) operation, this switches to `OrderedDict` which
can efficiently append from both sides, deduplicate and move to front.
2024-06-04 10:15:50 +03:00
Michael Vogt
7be95f9b30
code: do not truncate args when running with -vvv ( #12241 )
...
Related to #2871 .
2024-06-03 12:11:41 +00:00
Pierre Sassoulas
908e112999
[pylint 'implicit-str-concat'] fix existing unwanted implicit str concat
2024-05-29 14:36:01 +02:00
Pierre Sassoulas
88fae23bdd
[pylint] Fixes all ``use-maxplit-args``, ``consider-using-enumerate`` ( #12172 )
...
* [pylint 'use-maxsplit-arg'] Do not split more than necessary when using the first element
* [pylint 'consider-using-enumerate'] Use zip when iterating on two iterators
* [pylint] 'cell-var-from-loop' and 'disallowed-name' permanent disable
* [pylint] Disable 'possibly-used-before-assignment' following 3.2.0 release
2024-05-27 12:18:03 -07:00
dependabot[bot]
24abe4eb03
build(deps): Bump anyio[curio,trio] in /testing/plugins_integration ( #12374 )
...
Bumps [anyio[curio,trio]](https://github.com/agronholm/anyio ) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/agronholm/anyio/releases )
- [Changelog](https://github.com/agronholm/anyio/blob/master/docs/versionhistory.rst )
- [Commits](https://github.com/agronholm/anyio/compare/4.3.0...4.4.0 )
---
updated-dependencies:
- dependency-name: anyio[curio,trio]
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-27 06:43:30 +02:00
Ran Benita
c3c51037f0
unittest: fix class instances no longer released on test teardown since pytest 8.2.0
...
Fix #12367 .
2024-05-26 10:18:42 +03:00
dependabot[bot]
00be7c0739
build(deps): Bump pytest-asyncio in /testing/plugins_integration ( #12345 )
...
Bumps [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio ) from 0.23.6 to 0.23.7.
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases )
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.23.6...v0.23.7 )
---
updated-dependencies:
- dependency-name: pytest-asyncio
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 07:11:04 +02:00
Ran Benita
1cb704ff2c
Add Python 3.13 (beta1) support
2024-05-19 09:25:13 +03:00
Ran Benita
dbee3fa34a
testing: remove conditionals for Python 3.11 beta releases
...
No need to support beta releases of an older version anymore.
Ref: 09b2c95320
2024-05-18 19:53:50 +03:00
Jelle Zijlstra
ee9ea703f9
Fix new typing issues in AST code ( #12337 )
...
python/typeshed#11880 adds more precise types for AST nodes. I'm submitting some changes to adapt pytest to these changes.
2024-05-18 19:07:06 +03:00
Ran Benita
fdf3aa3fc3
Merge pull request #12329 from pytest-dev/fix-package-scope-reorder
...
fixtures: fix non-working package-scope parametrization reordering
2024-05-16 10:30:34 +03:00
Josh Soref
8d00811822
Spelling and minor changes ( #12122 )
2024-05-15 13:49:34 -03:00
Ran Benita
1acf56d033
fixtures: fix non-working package-scope parametrization reordering
...
The `.parent` was incorrectly removed in
a21fb87a90
, but it was actually correct
(well, it assumes that Module.path.parent == Package.path, which I'm not
sure is always correct, but that's a different matter). Restore it.
Fix #12328 .
2024-05-15 17:29:43 +03:00
Ran Benita
3a64c47f1f
cacheprovider: fix `.pytest_cache` not being world-readable
...
Fix #12308 .
2024-05-14 23:47:12 +03:00
Ran Benita
704792ecbd
Merge pull request #12311 from bluetech/pkg-collect-perm-error
...
python: add workaround for permission error crashes from non-selected directories
2024-05-13 20:32:23 +03:00
Ran Benita
37489d3c6c
python,unittest: don't collect abstract classes
...
Fix #12275 .
2024-05-13 13:00:47 +03:00
dependabot[bot]
eea04c2891
build(deps): Bump django in /testing/plugins_integration ( #12314 )
...
Bumps [django](https://github.com/django/django ) from 5.0.4 to 5.0.6.
- [Commits](https://github.com/django/django/compare/5.0.4...5.0.6 )
---
updated-dependencies:
- dependency-name: django
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-13 05:56:16 +02:00
Ran Benita
90a3ef2f36
python: add workaround for permission error crashes from non-selected directories
...
Fix #12120 .
2024-05-12 22:38:49 +03:00
Yutian Li
5af46f3d4e
Fix crashing under squashfuse_ll read-only mounts ( #12301 )
...
Fixes #12300
2024-05-09 15:04:58 -03:00
Brian Okken
8efbefb2d7
New --xfail-tb flag ( #12280 )
...
Fix #12231
2024-05-07 14:37:00 -03:00
Anita Hammer
97610067ac
Handle KeyboardInterrupt and SystemExit at collection time ( #12191 )
2024-05-02 11:59:09 +00:00
Ben Brown
4c5298c395
Add back "Fix teardown error reporting when --maxfail=1 ( #11721 )" ( #12279 )
...
Closes #11706 .
Originally fixed in #11721 , but then reverted in #12022 due to a regression in pytest-xdist.
The regression was fixed on the pytest-xdist side in pytest-dev/pytest-xdist#1026 .
2024-05-02 10:42:31 +03:00
Ran Benita
c3e9bd4518
Merge pull request #12271 from bluetech/restore-bdd
...
testing: restore integration testing with pytest-bdd
2024-05-02 10:27:08 +03:00
Pierre Sassoulas
2b6c946a2b
[mypy 1.10.0] Remove 'type: ignore' that became useless
2024-04-30 18:11:06 +02:00
Pierre Sassoulas
4788165e69
[ruff UP031] Fix to use format specifiers instead of percent format
2024-04-30 18:06:26 +02:00
Ran Benita
b660596f61
testing: restore integration testing with pytest-bdd
...
The problem was fixed.
2024-04-29 20:52:35 +03:00
Ran Benita
3e81cb2f45
runner: fix tracebacks for failed collectors getting longer and longer
...
Refs https://github.com/pytest-dev/pytest/issues/12204#issuecomment-2081239376
2024-04-28 13:30:05 +03:00
Ran Benita
0b91d5e3e8
fixtures: fix tracebacks for higher-scoped failed fixtures getting longer and longer
...
Fix #12204 .
2024-04-28 13:06:32 +03:00
Daniel Miller
7e7503c0b0
unittest: report class cleanup exceptions ( #12250 )
...
Fixes #11728
---------
Co-authored-by: Bruno Oliveira <bruno@soliv.dev>
2024-04-27 09:49:05 -03:00
Ran Benita
1a332802ff
Avoid slicing `sys.version_info` in version conditionals
...
It is unnecessary, and some static analyzers don't handle it.
2024-04-27 01:14:21 +03:00
Shekhar verma
4eb8b6d525
Changed importError to ModuleNotFoundError ( #12220 )
...
* Changed importError to ModuleNotFoundError
* added testing for importorskip
* added exc_types parameter in importorskip
* Added warning and Test Cases
* Improve tests and docs
* Improve deprecation docs
* Change exc_type to kw only
* Apply suggestions from code review
Co-authored-by: Florian Bruhin <me@the-compiler.org>
* Fix check
---------
Co-authored-by: Bruno Oliveira <bruno@soliv.dev>
Co-authored-by: Florian Bruhin <me@the-compiler.org>
2024-04-26 09:48:57 +02:00
pre-commit-ci[bot]
fafab1dbfd
[pre-commit.ci] pre-commit autoupdate ( #12238 )
...
* [pre-commit.ci] pre-commit autoupdate
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.3.7 → v0.4.1](https://github.com/astral-sh/ruff-pre-commit/compare/v0.3.7...v0.4.1 )
- [github.com/tox-dev/pyproject-fmt: 1.7.0 → 1.8.0](https://github.com/tox-dev/pyproject-fmt/compare/1.7.0...1.8.0 )
* noqa a test
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Pierre Sassoulas <pierre.sassoulas@gmail.com>
2024-04-23 11:59:12 -03:00
poulami-sau
5cffef7f07
Fixed Bug Regarding Attribute Error in pytest.approx For Types Implicitly Convertible to Numpy Arrays ( #12232 )
...
* added test case in testing/python/approx.py based on test case provided by reporter in issue #12114
* test cases pass for pytest testing/python/approx.py
* expanded the type annotation to include objects which may cast to a array and renamed other_side to other_side_as_array and asserted that it is not none
2024-04-23 10:45:33 +02:00
Ran Benita
58136c5376
hookspec: deprecate hookimpls requesting py.path parameters
2024-04-21 11:37:56 +03:00
Bruno Oliveira
ff806b239e
importlib: set children as attribute of parent modules ( #12208 )
...
Now `importlib` mode will correctly set the imported modules as an attribute of their parent modules.
As helpfully posted on #12194 , that's how the Python import module works so we should follow suit.
In addition, we also try to import the parent modules as part of the process of importing a child module, again mirroring how Python importing works.
Fix #12194
2024-04-20 11:31:33 +00:00
dj
ad95d59d61
Use monkeypatch in test_pytest_version_env_var
...
Follow up to #12190
2024-04-18 23:05:29 -03:00
dj
48b6d18834
Add PYTEST_VERSION environment variable ( #12190 )
...
Among other things, it can be used to check if a code is running from within a pytest session.
Fixes #9502
2024-04-18 07:45:47 -03:00
HolyMagician03-UMich
089116bdff
short test summary: do not truncate text when -vv is given
...
Fix #11777
---------
Co-authored-by: Bruno Oliveira <bruno@soliv.dev>
2024-04-10 08:07:18 -03:00
Ran Benita
1f001cd105
Merge pull request #12199 from tamird/mkdir-test-init
...
Add test for Cache.mkdir
2024-04-09 22:26:36 +03:00