Ran Benita
aee04cd49f
config: avoid stat storm in _getconftestmodules
...
Fix #9478 .
2022-01-22 00:27:43 +02:00
Ran Benita
bb5a4e2d63
Merge pull request #9531 from bluetech/misc
...
python: fix confused docstring of `Metafunc._resolve_arg_ids`
2022-01-21 17:24:56 +02:00
Ran Benita
471634d6bd
python: fix confused docstring of `Metafunc._resolve_arg_ids`
...
The docstring (and function name itself) described things as if IDs are
being assigned to the argnames, but actually they're assigned to the
parameter sets.
2022-01-21 16:18:44 +02:00
Ran Benita
888026f7a6
Merge pull request #9171 from bluetech/optimize-keywords-init
...
Optimizations/fixes around Function `keywords`
2022-01-21 15:19:53 +02:00
Ran Benita
6d128cd52e
python: use a more memory-friendly generator
2022-01-21 14:35:25 +02:00
Ran Benita
74571ba55f
Add missing `keywords` type annotations
2022-01-21 14:35:25 +02:00
Ran Benita
456a2538ac
python: optimize node keywords initialization
...
If we do the `update`s in the right order, we can avoid the `mark.name
not in self.keywords` check, since `self.keywords` starts out clean and
`update` will override previously set keywords.
2022-01-21 14:35:25 +02:00
Ran Benita
3c69bc919c
python: remove broken/ineffectual keywords marks initialization
...
By my analysis, this deleted code block has no effect:
1. `self.keywords` is `update`d with `callspec.marks`.
2. `self.own_markers` is `update`d with `callspec.marks`.
3. `self.keywords` is `update`d with `self.own_markers`.
So together steps 2+3 completely undo step 1.
2022-01-21 14:35:24 +02:00
Ran Benita
d9bcfa0c2b
python: don't redundantly duplicate parent markers to own keywords
...
This does have a slight semantic change: in a node hierarchy parent ->
child, if parent has a marker applied, then child is constructed, then
`parent.themarker = "overridden"`, previously
`child.keywords['themarker']` would return `True`, now it returns
`"overridden"`. But that's actually what I would have expected so I see
it as more of a bugfix.
2022-01-21 14:34:27 +02:00
Ran Benita
8713c32462
python: unpacked marks need to be added to keywords on all node types
...
(except `Instance`)
Currently, `Function` does this manually, but other node types don't get
their markers added to their `keywords`, but they should, if only for
consistency.
2022-01-21 14:34:27 +02:00
Ran Benita
e9bb1aa233
python: be consistent with what value marks have in keywords
...
Marks are added to keywords in three places:
- `Node.add_marker`: name -> `Mark`
- `Function.__init__(callspec)`: name -> `Mark`
- `Function.__init__ iter_markers`: name -> True
I think it should be consistent, which will also help with some upcoming
code cleaning. The `Mark` seems more useful than just a `True`, so
switch to that.
2022-01-21 14:34:27 +02:00
Ran Benita
4e5fb520b6
python: remove an unneeded normalize_mark_list call
...
`callspec.mark` is already `List[Mark]` so no need to normalize it.
2022-01-21 14:34:27 +02:00
Ran Benita
6672a10354
fixtures: use node.ihook instead of open-coding it
2022-01-21 14:29:47 +02:00
Bruno Oliveira
4c8fb6f0af
Merge pull request #9522 from holmanb/rewrite-test
2022-01-20 13:18:12 -03:00
Chris NeJame
1fd0dcd510
fix missing ref to flattened fixture order image
2022-01-19 09:26:07 -05:00
Brett Holman
3f44b4078c
Add test coverage to test rewrite
2022-01-18 11:26:46 -07:00
dependabot[bot]
c393f95c99
build(deps): Bump anyio[curio,trio] in /testing/plugins_integration
...
Bumps [anyio[curio,trio]](https://github.com/agronholm/anyio ) from 3.4.0 to 3.5.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/3.4.0...3.5.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>
2022-01-17 03:02:30 +00:00
Bruno Oliveira
fe1f0e5376
Merge pull request #9516 from pytest-dev/update-plugin-list/patch-a6310c20c
...
[automated] Update plugin list
2022-01-16 09:03:31 -03:00
pytest bot
947b5dbc47
[automated] Update plugin list
2022-01-16 00:13:41 +00:00
Ran Benita
a6310c20c1
Merge pull request #9512 from bluetech/pluggy-private
...
testing: avoid private pluggy attributes in test
2022-01-14 18:09:10 +02:00
Ran Benita
3f4eab3f8f
testing: avoid private pluggy attributes in test
2022-01-14 17:49:38 +02:00
Olga Matoula
2ad1b589af
Add docs on pytest.warns(None) deprecation ( #9495 )
...
* Add docs on pytest.warns(None) deprecation
* Add new section for common warnings use cases
* Fix references for warnings use cases
* Fix reference link
2022-01-13 18:32:22 +00:00
Bruno Oliveira
e9ed4827a4
Merge pull request #9506 from eamanu/fix-9505
2022-01-13 13:52:09 -03:00
Emmanuel Arias
5c2d752e74
improve docs
2022-01-13 13:29:08 -03:00
Emmanuel Arias
0fe0b78a9f
Improve on configuration file docs section
...
To avoid confusions the part of that "the configuration file can
be locate on your tests folder" is removed.
2022-01-13 12:52:18 -03:00
Ran Benita
f1aa7a25de
Merge pull request #9493 from bluetech/conftesting
...
Some conftest changes
2022-01-12 10:38:14 +02:00
Anthony Sottile
202e44b5e6
Merge pull request #9500 from pytest-dev/pre-commit-ci-update-config
...
[pre-commit.ci] pre-commit autoupdate
2022-01-10 18:33:35 -05:00
pre-commit-ci[bot]
8891d1f449
[pre-commit.ci] pre-commit autoupdate
...
updates:
- [github.com/pre-commit/mirrors-mypy: v0.930 → v0.931](https://github.com/pre-commit/mirrors-mypy/compare/v0.930...v0.931 )
2022-01-10 21:28:04 +00:00
Ran Benita
a425f15330
Merge pull request #9494 from bluetech/instance-property
...
python: add back `instance` accessor to all python nodes, not just Function
2022-01-10 21:08:46 +02:00
Bruno Oliveira
610edd156e
Merge pull request #9497 from pytest-dev/dependabot/pip/testing/plugins_integration/django-4.0.1
...
build(deps): Bump django from 4.0 to 4.0.1 in /testing/plugins_integration
2022-01-10 07:58:56 -03:00
dependabot[bot]
0d5f52b127
build(deps): Bump django in /testing/plugins_integration
...
Bumps [django](https://github.com/django/django ) from 4.0 to 4.0.1.
- [Release notes](https://github.com/django/django/releases )
- [Commits](https://github.com/django/django/compare/4.0...4.0.1 )
---
updated-dependencies:
- dependency-name: django
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-10 03:02:30 +00:00
Ran Benita
0995e84adb
Merge pull request #9492 from pytest-dev/update-plugin-list/patch-abe2a8f4e
...
[automated] Update plugin list
2022-01-09 13:14:03 +02:00
Ran Benita
161bc48117
config: get rid of _conftestpath2mod
...
It duplicates what PluginManager already knows, and no longer needed now
that symlinks are not resolved (see previous commit).
2022-01-09 12:33:45 +02:00
Ran Benita
0ef882364e
config: stop resolving symlinks in conftest paths
...
This became the wrong thing to do since
322190fd84
.
2022-01-09 12:33:45 +02:00
Ran Benita
f08a77de77
python: add back `instance` accessor to all python nodes, not just Function
...
Regressed in 062d91ab4
(pytest 7.0.0rc1 only).
Fix #9486 .
2022-01-09 12:14:46 +02:00
pytest bot
f0dab8ba8d
[automated] Update plugin list
2022-01-09 00:12:59 +00:00
Ran Benita
d98b695fec
config: return Sequence instead of List from _getconftestmodules
...
Nothing should mutate the internal data structure here.
2022-01-09 00:30:18 +02:00
Ran Benita
ed83efaf4b
testing/test_monkeypatch: fix some patches leaking into pytest code
...
The tests patch `os.path.abspath` which can break some pytest internal
code since the patching is not undone immediately.
2022-01-09 00:13:40 +02:00
Ran Benita
0c98f19231
config: make confcutdir check a bit more clear & correct
...
I think this named function makes the code a bit easier to understand.
Also change the check to explicitly check for "is a sub-path of" instead
of the previous check which only worked assuming that path is within
confcutdir or a direct parent of it.
2022-01-08 22:48:40 +02:00
Ran Benita
1c7644cc7a
config: some comments
2022-01-08 22:30:48 +02:00
Ran Benita
5f23157b39
config: remove always truthy condition
2022-01-08 12:36:43 +02:00
Ran Benita
abe2a8f4e1
Merge pull request #9484 from bluetech/getconftestmodules-cache-fix
...
config: fix incorrect cache hit check in _getconftestmodules
2022-01-07 13:27:45 +02:00
Ran Benita
b19374bc19
config: fix incorrect cache hit check in _getconftestmodules
...
This made the cache not work as intended, causing a major slowdown.
See #9478 for discussion and context.
Authored-by: Anthony Sottile <asottile@umich.edu>
2022-01-07 12:47:39 +02:00
Dan Alvizu
71baf24b6d
Doc update: clarify -W syntax ( #9464 )
...
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Bruno Oliveira <nicoddemus@gmail.com>
2022-01-04 13:55:01 +00:00
Bruno Oliveira
fa43b8dfb2
Merge pull request #9400 from nicoddemus/configinifile-9396
2022-01-04 10:22:35 -03:00
Bruno Oliveira
696f955ff8
Split wrappers and non-wrappers in test_load_initial_conftest_last_ordering
...
Seems better to test which one is which explicitly.
2022-01-04 10:03:30 -03:00
Bruno Oliveira
4038752bf3
Ensure Config.inifile is available during pytest_cmdline_main
...
Fix #9396
2022-01-04 10:03:28 -03:00
Anthony Sottile
1860140460
Merge pull request #9472 from pytest-dev/pre-commit-ci-update-config
...
[pre-commit.ci] pre-commit autoupdate
2022-01-03 19:43:46 -05:00
pre-commit-ci[bot]
b6350b8b97
[pre-commit.ci] pre-commit autoupdate
...
updates:
- [github.com/asottile/pyupgrade: v2.29.1 → v2.31.0](https://github.com/asottile/pyupgrade/compare/v2.29.1...v2.31.0 )
2022-01-03 21:08:03 +00:00
github-actions[bot]
56081ca075
[automated] Update plugin list ( #9468 )
...
Co-authored-by: pytest bot <pytestbot@users.noreply.github.com>
2022-01-03 18:57:32 +01:00