Sadra Barikbin
e8a8a5f320
python: fix scope assignment for indirect parameter sets ( #11277 )
...
Previously, when assigning a scope for a fully-indirect parameter set,
when there are multiple fixturedefs for a param (i.e. same-name fixture
chain), the highest scope was used, but it should be the lowest scope,
since that's the effective scope of the fixture.
2023-08-06 13:59:54 +00:00
pre-commit-ci[bot]
c9163402e0
[pre-commit.ci] pre-commit autoupdate ( #11269 )
...
* [pre-commit.ci] pre-commit autoupdate
updates:
- [github.com/PyCQA/flake8: 6.0.0 → 6.1.0](https://github.com/PyCQA/flake8/compare/6.0.0...6.1.0 )
- [github.com/asottile/pyupgrade: v3.9.0 → v3.10.1](https://github.com/asottile/pyupgrade/compare/v3.9.0...v3.10.1 )
* Use is instead of type comparison with equal to appease the linter
---------
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>
2023-08-01 23:52:09 +02:00
Ran Benita
71e627aa8f
fixtures: fix crash when `parametrize(scope="package")` is used without a Package
...
There as handling for `scope="class"` without a class, but not for
`scope="package"` without a package. It would fail the assert.
2023-07-28 16:13:02 +03:00
Isaac Virshup
1de0923e83
Have pytest.raises match against exception `__notes__` ( #11227 )
...
The doctest is skipped because add_note is only available in 3.11,
Closes #11223
2023-07-18 08:39:39 -03:00
Ran Benita
396bfbf30b
fixtures: add a test for a currently non-covered scope mismatch scenario
...
This test makes clear the need for the `_check_scope()` call in the
`pytest_setup_fixture` impl in fixtures.py, which otherwise seems
redundant with the one in `_compute_fixture_value`.
2023-07-18 00:01:40 +03:00
Ran Benita
29010d23a6
Merge pull request #11217 from bluetech/fixtures-skip-xunit-loc
...
fixtures: show test as skip location if skipped from an xunit setup function
2023-07-17 17:30:06 +03:00
dependabot[bot]
cfda801ebf
build(deps): Bump pytest-asyncio in /testing/plugins_integration ( #11222 )
...
Bumps [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio ) from 0.21.0 to 0.21.1.
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases )
- [Commits](https://github.com/pytest-dev/pytest-asyncio/compare/v0.21.0...v0.21.1 )
---
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>
2023-07-17 09:27:38 +02:00
Ran Benita
c5262b0c42
fixtures: show test as skip location if skipped from an xunit setup function
...
Fix #11216 .
2023-07-16 23:26:04 +03:00
Ran Benita
32f480814c
Merge pull request #11209 from bluetech/fixtures-doc-comments
...
fixtures: some tweaks & improvements
2023-07-15 19:40:48 +03:00
Ran Benita
01f38aca44
fixtures: expand comments and annotations on fixture internals
2023-07-15 10:06:06 +03:00
Ran Benita
b41acaea12
Switch to new-style pluggy hook wrappers
...
Fix #11122 .
2023-07-14 22:47:48 +03:00
dependabot[bot]
b20e7f6d0c
build(deps): Bump anyio[curio,trio] in /testing/plugins_integration ( #11191 )
...
Bumps [anyio[curio,trio]](https://github.com/agronholm/anyio ) from 3.7.0 to 3.7.1.
- [Changelog](https://github.com/agronholm/anyio/blob/master/docs/versionhistory.rst )
- [Commits](https://github.com/agronholm/anyio/compare/3.7.0...3.7.1 )
---
updated-dependencies:
- dependency-name: anyio[curio,trio]
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>
2023-07-10 10:23:47 -03:00
dependabot[bot]
b91d5a3112
build(deps): Bump pytest-rerunfailures in /testing/plugins_integration ( #11190 )
...
Bumps [pytest-rerunfailures](https://github.com/pytest-dev/pytest-rerunfailures ) from 11.1.2 to 12.0.
- [Changelog](https://github.com/pytest-dev/pytest-rerunfailures/blob/master/CHANGES.rst )
- [Commits](https://github.com/pytest-dev/pytest-rerunfailures/compare/11.1.2...12.0 )
---
updated-dependencies:
- dependency-name: pytest-rerunfailures
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-10 10:23:33 -03:00
Kenny Y
db37e34613
Merge branch 'main' into add-none-support-approxmapping
2023-07-07 15:55:19 -04:00
Kenny Y
c5b13099e6
Fix error assertion handling in approx when None in dict comparison
...
Dict comparsion in the ApproxMapping class did not check if values were None before attempting to subtract for max_abs_diff stat, which was throwing an TypeError instead of being handled by pytest error assertion. Check for None has been added before these calculations, so that None will properly show as Obtained/Expected in pytest assert message
2023-07-07 14:42:59 -04:00
Zac Hatfield-Dodds
97ed533f63
Merge pull request #11169 from hugovk/test-me-rm-3.7
2023-07-06 22:28:44 -07:00
dependabot[bot]
44604f49cd
build(deps): Bump django in /testing/plugins_integration
...
Bumps [django](https://github.com/django/django ) from 4.2.2 to 4.2.3.
- [Commits](https://github.com/django/django/compare/4.2.2...4.2.3 )
---
updated-dependencies:
- dependency-name: django
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-07-05 22:57:45 +00:00
Zac Hatfield-Dodds
084d756ae6
Merge pull request #11143 from tushar-deepsource/patch-1
2023-07-04 10:47:13 -07:00
Zac Hatfield-Dodds
cb732f7f49
Merge branch 'main' into patch-1
2023-07-04 10:17:06 -07:00
Zac Hatfield-Dodds
7775e494b1
Further tweaks from code review
2023-07-04 10:00:29 -07:00
Hugo van Kemenade
6baf9f2d31
Update docs and code after dropping EOL 3.7
2023-07-04 18:55:08 +03:00
Lesnek
c4876c7106
chore(CR): Add changes from code review
2023-07-04 11:49:11 +02:00
Lesnek
3d0dedb5ec
test(warnings-recorder): Add attribute error test
2023-07-04 10:30:19 +02:00
Lesnek
2706271f66
test(warnings-recorder): Add another warning
2023-07-04 10:30:19 +02:00
Lesnek
18e87c9831
test(warnings-recorder): Add non working subclass behaviour of pop
2023-07-04 10:30:19 +02:00
Ronny Pfannschmidt
561f1a993b
fix #10447 - consider marks in reverse mro order to give base classes priority
2023-07-01 22:27:18 +02:00
Bruno Oliveira
b77d0deaf5
Fix duplicated imports with importlib mode and doctest-modules ( #11148 )
...
The initial implementation (in #7246 ) introduced the `importlib` mode, which
never added the imported module to `sys.modules`, so it included a test
to ensure calling `import_path` twice would yield different modules.
Not adding modules to `sys.modules` proved problematic, so we began to add the imported module to `sys.modules`
in #7870 , but failed to realize that given we are now changing `sys.modules`, we might
as well avoid importing it more than once.
Then #10088 came along, passing `importlib` also when importing application modules
(as opposed to only test modules before), which caused problems due to imports
having side-effects and the expectation being that they are imported only once.
With this PR, `import_path` returns the module immediately if already in
`sys.modules`.
Fix #10811
Fix #10341
2023-07-01 15:37:46 +00:00
akhilramkee
2f7415cfbc
Add child modules as attributes of parent modules. ( #10338 )
...
Failing to add child modules as attributes of parent module will prevent them from being accessible through parent module.
Fix #10337
2023-07-01 15:12:41 +00:00
Cheukting
15524f34d2
capture warning when exception is raised ( fix #9036 )
2023-06-30 16:04:37 -07:00
Zac Hatfield-Dodds
7022fb455d
Update tests for re-emitted warnings
2023-06-30 15:29:03 -07:00
Zac Hatfield-Dodds
a1b37022af
Refactor warns() exit logic
2023-06-30 15:29:02 -07:00
Reagan Lee
9279ea2882
Emit unmatched warnings from pytest.warns()
2023-06-30 15:29:02 -07:00
Zac Hatfield-Dodds
0353a94cd1
Explicit GC for PyPy, take 2
2023-06-30 20:33:12 -07:00
Zac Hatfield-Dodds
7fdc8391e2
Explicit GC for PyPy
2023-06-30 16:23:18 -07:00
Zac Hatfield-Dodds
f4e3b4ad98
Drop Python 3.7
2023-06-30 14:55:42 -07:00
Tushar Sadhwani
a14fc10cac
add a test function to the test
2023-06-26 13:06:11 +05:30
Tushar Sadhwani
05d7e60904
Add test
2023-06-26 12:37:23 +05:30
Thomas Grainger
45f1a462d5
Apply suggestions from code review
...
Co-authored-by: Zac Hatfield-Dodds <zac.hatfield.dodds@gmail.com>
2023-06-25 16:08:53 +01:00
Thomas Grainger
4cd95eeabf
Merge branch 'main' into warn-when-a-mark-is-applied-to-a-fixture
2023-06-25 16:08:11 +01:00
Ran Benita
c8b1790ee7
python: change `pytest pkg/__init__.py` to only collect the `__init__.py` Module
...
Previously it would collect the entire package, but this is not what
users expect.
Refs #3749
Fixes #8976
Fixes #9263
Fixes #9313
2023-06-23 20:42:50 +03:00
Ran Benita
a4a189ad99
Change PytestRemovedIn8Warning to error by default
...
Per our backward compatibility policy.
2023-06-23 16:42:24 +03:00
Zac Hatfield-Dodds
661b938fca
Add encoding in more tests
2023-06-20 04:55:40 -07:00
Zac Hatfield-Dodds
7e510769b4
Encoding for subprocess.run
2023-06-20 04:55:39 -07:00
nondescryptid
a704605cf1
Fix encoding warnings
2023-06-20 04:55:39 -07:00
Ran Benita
14890329dc
config: fix the paths considered for initial conftest discovery
...
Fixes #11104 .
See the issue for a description of the problem.
Now, we use the same logic for initial conftest paths as we do for
deciding the initial args, which was the idea behind checking
`namespace.file_or_dir` and `testpaths` previously.
This fixes the issue of `testpaths` being considered for initial
conftests even when it's not used for the args.
(Another issue in faeb16146b
was that the
`testpaths` were not glob-expanded, this is also fixed.)
2023-06-21 09:01:42 +03:00
dependabot[bot]
1eb83706b6
build(deps): Bump pytest-mock in /testing/plugins_integration ( #11119 )
...
Bumps [pytest-mock](https://github.com/pytest-dev/pytest-mock ) from 3.10.0 to 3.11.1.
- [Release notes](https://github.com/pytest-dev/pytest-mock/releases )
- [Changelog](https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pytest-dev/pytest-mock/compare/v3.10.0...v3.11.1 )
---
updated-dependencies:
- dependency-name: pytest-mock
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>
2023-06-19 04:15:50 +00:00
dependabot[bot]
2d824329eb
build(deps): Bump django in /testing/plugins_integration ( #11102 )
...
Bumps [django](https://github.com/django/django ) from 4.2.1 to 4.2.2.
- [Commits](https://github.com/django/django/compare/4.2.1...4.2.2 )
---
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>
2023-06-12 04:19:01 +00:00
Ran Benita
4059000834
testing/python/collect: replace use of deprecated/removed `imp` module
2023-06-07 17:05:52 +03:00
dependabot[bot]
85c5bd26b6
build(deps): Bump pytest-xvfb in /testing/plugins_integration ( #11079 )
...
Bumps [pytest-xvfb](https://github.com/The-Compiler/pytest-xvfb ) from 2.0.0 to 3.0.0.
- [Changelog](https://github.com/The-Compiler/pytest-xvfb/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/The-Compiler/pytest-xvfb/compare/v2.0.0...v3.0.0 )
---
updated-dependencies:
- dependency-name: pytest-xvfb
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 12:06:55 +02:00
Ran Benita
fda8024622
cacheprovider: make file-skipping work with any File, not just Modules
...
No reason for `--lf`'s whole-file-skipping feature to not for for
non-Python files.
Fix #11068 .
2023-06-03 09:32:26 +03:00