Abdullah Ahmed and Claude Sonnet 5.5
3f7e8adddc
Honor return annotations of async pytest fixtures
...
Async fixtures skipped the annotation branch, so a `-> T` annotation was
ignored and only the body was inferred. Infer the annotation directly:
the awaited value for coroutines, and the yielded value for annotated
async generators. Add cases where the body is not inferable.
Also drop the tooling note from the AUTHORS entry.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-12 04:52:32 -04:00
Abdullah Ahmed
d8efff8e30
Recognize asynchronous pytest fixtures
2026-10-12 04:05:48 -04:00
Dave Halter
aa72381ed1
Implement Self, fixes #2023 , fixes #2068
2026-04-29 17:51:01 +02:00
Dave Halter
a662298e2f
Remove a bit more python3.8/3.9 specific code
2026-04-27 00:42:07 +02:00
Dave Halter
30ef824abd
Introduce some stricter typing
2026-02-04 01:19:14 +01:00
Dave Halter
3ac1632a5c
Avoid the need to import search_ancestor
2026-01-19 20:30:03 +01:00
Martin Vielsmaier
950ce70239
Prioritize conftest over plugins for pytest fixtures
2024-01-26 10:39:15 +01:00
Martin Vielsmaier
6982a49977
Fix codestyle
2024-01-24 13:11:26 +01:00
Martin Vielsmaier
9b8cece7ef
Improve pytest plugin loading
2024-01-23 20:54:21 +01:00
Martin Vielsmaier
162034b387
Fix line length.
2024-01-23 20:54:21 +01:00
Martin Vielsmaier
7d77f61040
Add support for pytest fixtures from local pytest plugins.
2024-01-23 20:54:21 +01:00
Peter Law
54cb64292c
Support importlib.metadata entry points for newer python
...
pkg_resources is deprecated and liable to be dropped at some point.
2023-05-28 11:48:19 +01:00
Marcio Mazza
e25750ecef
Make code compatible with python < 3.8
2022-09-05 17:05:11 -03:00
Marcio Mazza
1a306fddbf
Fix check pytest fixture from import on the right context
2022-09-04 13:12:13 -03:00
Marcio Mazza
fa1e9ce9a7
Simplify entry points enumeration
2022-09-03 17:16:32 -03:00
Marcio Mazza
8447d7f3e4
Discard imports of modules as pytest fixtures
2022-09-03 17:16:32 -03:00
Marcio Mazza
27e13e4072
Allow for multiple returns from goto_import
2022-09-03 17:16:32 -03:00
Marcio Mazza
9fd4aab5da
Find pytest fixtures from external plugins registered via setuptools entry points
...
Using setuptools entry points is probably the main pytest mechanism of
plugin discovery.
See https://docs.pytest.org/en/stable/how-to/writing_plugins.html#setuptools-entry-points
This extends the functionality of #791
and maybe eliminates the need for #1786 .
2022-09-03 17:16:32 -03:00
Dave Halter
42508d9309
Fix fixture annotations for pytest
...
This means mostly these:
@fixture
def foo() -> Generator[int, None, None]: ...
2021-11-16 22:57:25 +01:00
boerde
3cf98f6ba1
paramters with annotation do not need special pytest handling
2021-08-29 09:17:04 +02:00
Samuele FAVAZZA
613cb08325
BUGFIX: prevent an infinite loop seeking for a "conftest.py" file
2021-01-30 16:31:26 +01:00
Dave Halter
85ec94cf65
Fix pytest issues, fixes #1699
2020-12-26 03:32:17 +01:00
Peter Law
35c2d660cb
Fix most import related mypy errors
2020-07-24 16:10:34 +01:00
Dave Halter
480a464179
Implement all remaining Path issues and use it instead of strings
2020-07-12 01:14:00 +02:00
Dave Halter
24a1bbb3ca
Even more super deletions
2020-07-02 12:29:10 +02:00
Dave Halter
f9a35ae42a
Remove FileNotFoundError compatibility
2020-07-02 01:05:13 +02:00
Dave Halter
d8deceb4b1
Make sure fixture resolving works in conftest.py, see #791
2020-01-06 23:27:25 +01:00
Dave Halter
4243d01560
Make sure inheritance works for fixtures, fixes #791
2020-01-05 19:13:56 +01:00
Dave Halter
2d31e2e760
Fix a small pytest fixture bug
2020-01-03 00:03:32 +01:00
Dave Halter
dfd7910dd3
Make sure test prefixed functions are checked for pytest fixtures, see #791
2019-12-31 21:31:58 +01:00
Dave Halter
1da0a7bd58
Make sure pytester is also used for fixtures, see #791
2019-12-31 21:30:56 +01:00
Dave Halter
35fb8a942c
Make sure pytest stdlib fixtures are completable
2019-12-27 16:28:07 +01:00
Dave Halter
e86487cb96
Make sure the monkeypatch fixture completion works
2019-12-27 16:13:20 +01:00
Dave Halter
0931c5492d
Fix tests
2019-12-27 13:30:53 +01:00
Dave Halter
7715655c96
Fix selection of what is a pytest fixture and what isn't
2019-12-27 13:26:31 +01:00
Dave Halter
4c22f4dbb1
Fix completion for non-pytest params
2019-12-27 13:02:16 +01:00
Dave Halter
31936776a5
Make completion of pytest fixtures possible
2019-12-27 12:29:18 +01:00
Dave Halter
8c737ba17e
Make goto work for pytest fixtures
2019-12-27 10:51:49 +01:00
Dave Halter
02320f832d
Check better for when something is a picture
2019-12-27 02:12:02 +01:00
Dave Halter
148fffae28
Make yield pytest fixtures work
2019-12-27 01:50:17 +01:00
Dave Halter
c45c8ec8ef
Get some pytest fixtures working with some side effects
2019-12-27 01:04:01 +01:00