pytest-codspeed 5.0.3__tar.gz → 5.0.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. {pytest_codspeed-5.0.3/src/pytest_codspeed.egg-info → pytest_codspeed-5.0.4}/PKG-INFO +3 -3
  2. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/README.md +2 -2
  3. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/pyproject.toml +2 -2
  4. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/setup.py +1 -0
  5. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/__init__.py +2 -2
  6. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/plugin.py +59 -25
  7. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/utils.py +2 -0
  8. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4/src/pytest_codspeed.egg-info}/PKG-INFO +3 -3
  9. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/tests/test_pytest_plugin.py +8 -4
  10. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/tests/test_pytest_plugin_cpu_instrumentation.py +2 -1
  11. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/tests/test_pytest_plugin_walltime.py +2 -2
  12. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/LICENSE +0 -0
  13. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/setup.cfg +0 -0
  14. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/config.py +0 -0
  15. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/__init__.py +0 -0
  16. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/analysis.py +0 -0
  17. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/__init__.py +0 -0
  18. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument-hooks/dist/core.c +0 -0
  19. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument-hooks/includes/callgrind.h +0 -0
  20. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument-hooks/includes/compat.h +0 -0
  21. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument-hooks/includes/core.h +0 -0
  22. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument-hooks/includes/valgrind.h +0 -0
  23. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument-hooks/includes/zig.h +0 -0
  24. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument-hooks/scripts/release.py +0 -0
  25. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/hooks/instrument_hooks_module.c +0 -0
  26. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/instruments/walltime.py +0 -0
  27. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed/py.typed +0 -0
  28. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed.egg-info/SOURCES.txt +0 -0
  29. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed.egg-info/dependency_links.txt +0 -0
  30. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed.egg-info/entry_points.txt +0 -0
  31. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed.egg-info/requires.txt +0 -0
  32. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/src/pytest_codspeed.egg-info/top_level.txt +0 -0
  33. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/tests/test_format_time.py +0 -0
  34. {pytest_codspeed-5.0.3 → pytest_codspeed-5.0.4}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pytest-codspeed
3
- Version: 5.0.3
3
+ Version: 5.0.4
4
4
  Summary: Pytest plugin to create CodSpeed benchmarks
5
5
  Author-email: Arthur Pastel <arthur@codspeed.io>
6
6
  License: The MIT License (MIT)
@@ -60,7 +60,7 @@ Requires-Dist: pytest-xdist~=3.6.1; extra == "compat"
60
60
 
61
61
  [![CI](https://github.com/CodSpeedHQ/pytest-codspeed/actions/workflows/ci.yml/badge.svg)](https://github.com/CodSpeedHQ/pytest-codspeed/actions/workflows/ci.yml)
62
62
  [![PyPi Version](https://img.shields.io/pypi/v/pytest-codspeed?color=%2334D058&label=pypi)](https://pypi.org/project/pytest-codspeed)
63
- ![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-informational.svg)
63
+ ![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14%20%7C%203.15-informational.svg)
64
64
  [![Discord](https://img.shields.io/badge/chat%20on-discord-7289da.svg)](https://discord.com/invite/MxpaCfKSqF)
65
65
  [![CodSpeed Badge](https://img.shields.io/endpoint?url=https://codspeed.io/badge.json)](https://codspeed.io/CodSpeedHQ/pytest-codspeed)
66
66
 
@@ -168,7 +168,7 @@ jobs:
168
168
  run: pip install -r requirements.txt
169
169
 
170
170
  - name: Run benchmarks
171
- uses: CodSpeedHQ/action@v4
171
+ uses: CodSpeedHQ/action@v5
172
172
  with:
173
173
  mode: simulation # or `walltime`
174
174
  token: ${{ secrets.CODSPEED_TOKEN }}
@@ -3,7 +3,7 @@
3
3
 
4
4
  [![CI](https://github.com/CodSpeedHQ/pytest-codspeed/actions/workflows/ci.yml/badge.svg)](https://github.com/CodSpeedHQ/pytest-codspeed/actions/workflows/ci.yml)
5
5
  [![PyPi Version](https://img.shields.io/pypi/v/pytest-codspeed?color=%2334D058&label=pypi)](https://pypi.org/project/pytest-codspeed)
6
- ![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-informational.svg)
6
+ ![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14%20%7C%203.15-informational.svg)
7
7
  [![Discord](https://img.shields.io/badge/chat%20on-discord-7289da.svg)](https://discord.com/invite/MxpaCfKSqF)
8
8
  [![CodSpeed Badge](https://img.shields.io/endpoint?url=https://codspeed.io/badge.json)](https://codspeed.io/CodSpeedHQ/pytest-codspeed)
9
9
 
@@ -111,7 +111,7 @@ jobs:
111
111
  run: pip install -r requirements.txt
112
112
 
113
113
  - name: Run benchmarks
114
- uses: CodSpeedHQ/action@v4
114
+ uses: CodSpeedHQ/action@v5
115
115
  with:
116
116
  mode: simulation # or `walltime`
117
117
  token: ${{ secrets.CODSPEED_TOKEN }}
@@ -82,7 +82,7 @@ version = { attr = "pytest_codspeed.__version__" }
82
82
 
83
83
 
84
84
  [tool.bumpver]
85
- current_version = "5.0.3"
85
+ current_version = "5.0.4"
86
86
  version_pattern = "MAJOR.MINOR.PATCH[-TAG[NUM]]"
87
87
  commit_message = "Release v{new_version} 🚀"
88
88
  tag_message = "Release v{new_version} 🚀"
@@ -136,7 +136,7 @@ force_grid_wrap = 0
136
136
  float_to_top = true
137
137
 
138
138
  [tool.pytest.ini_options]
139
- addopts = "--ignore=tests/benchmarks --ignore=tests/examples --ignore=tests/benchmarks/TheAlgorithms"
139
+ addopts = "--ignore=tests/benchmarks --ignore=tests/benchmarks/TheAlgorithms"
140
140
  filterwarnings = ["ignore::DeprecationWarning:pytest_benchmark.utils.*:"]
141
141
  pythonpath = ["tests/benchmarks/TheAlgorithms", "./scripts"]
142
142
 
@@ -41,6 +41,7 @@ native_extension = Extension(
41
41
  # upstream silences; in particular distros like Nix/Debian/Fedora inject
42
42
  # -Werror=format-security, which would otherwise fail the build.
43
43
  extra_compile_args=[
44
+ "-std=c11",
44
45
  "-Wno-format",
45
46
  "-Wno-format-security",
46
47
  "-Wno-unused-but-set-variable",
@@ -1,6 +1,6 @@
1
- __version__ = "5.0.3"
1
+ __version__ = "5.0.4"
2
2
  # We also have the semver version since __version__ is not semver compliant
3
- __semver_version__ = "5.0.3"
3
+ __semver_version__ = "5.0.4"
4
4
 
5
5
  from .plugin import BenchmarkFixture
6
6
 
@@ -5,13 +5,14 @@ import gc
5
5
  import json
6
6
  import os
7
7
  import random
8
+ import sys
9
+ import warnings
8
10
  from dataclasses import dataclass, field
9
11
  from pathlib import Path
10
12
  from time import time
11
13
  from typing import TYPE_CHECKING, cast
12
14
 
13
15
  import pytest
14
- from _pytest.fixtures import FixtureManager
15
16
 
16
17
  from pytest_codspeed.config import (
17
18
  BenchmarkMarkerOptions,
@@ -21,6 +22,7 @@ from pytest_codspeed.config import (
21
22
  from pytest_codspeed.instruments import MeasurementMode, get_instrument_from_mode
22
23
  from pytest_codspeed.utils import (
23
24
  BEFORE_PYTEST_8_1_1,
25
+ HAS_PYTEST_REGISTER_FIXTURE,
24
26
  IS_PYTEST_BENCHMARK_INSTALLED,
25
27
  IS_PYTEST_SPEED_INSTALLED,
26
28
  get_environment_metadata,
@@ -37,6 +39,32 @@ if TYPE_CHECKING:
37
39
  T = TypeVar("T")
38
40
  P = ParamSpec("P")
39
41
 
42
+ # Keep these bounds in sync with `requires-python`, the Python classifiers in
43
+ # pyproject.toml, and the CI test matrix.
44
+ MIN_SUPPORTED_PYTHON_VERSION = (3, 9)
45
+ MAX_SUPPORTED_PYTHON_VERSION = (3, 15)
46
+
47
+
48
+ def warn_if_unsupported_python_version() -> None:
49
+ version = sys.version_info[:2]
50
+ if MIN_SUPPORTED_PYTHON_VERSION <= version <= MAX_SUPPORTED_PYTHON_VERSION:
51
+ return
52
+
53
+ supported = " to ".join(
54
+ f"{major}.{minor}"
55
+ for major, minor in (
56
+ MIN_SUPPORTED_PYTHON_VERSION,
57
+ MAX_SUPPORTED_PYTHON_VERSION,
58
+ )
59
+ )
60
+ warnings.warn(
61
+ f"Python {version[0]}.{version[1]} is not officially supported by "
62
+ f"pytest-codspeed (supported: {supported}). Support is experimental and "
63
+ "untested, measurements may be unreliable.",
64
+ RuntimeWarning,
65
+ stacklevel=2,
66
+ )
67
+
40
68
 
41
69
  @pytest.hookimpl(trylast=True)
42
70
  def pytest_addoption(parser: pytest.Parser):
@@ -101,6 +129,7 @@ def get_plugin(config: pytest.Config) -> CodSpeedPlugin:
101
129
 
102
130
  @pytest.hookimpl(tryfirst=True)
103
131
  def pytest_configure(config: pytest.Config):
132
+ warn_if_unsupported_python_version()
104
133
  config.addinivalue_line(
105
134
  "markers", "codspeed_benchmark: mark an entire test for codspeed benchmarking"
106
135
  )
@@ -152,33 +181,38 @@ def pytest_configure(config: pytest.Config):
152
181
  config.pluginmanager.register(plugin, PLUGIN_NAME)
153
182
 
154
183
 
155
- @pytest.hookimpl()
156
- def pytest_plugin_registered(plugin, manager: pytest.PytestPluginManager):
184
+ def _benchmark_compat(codspeed_benchmark, request: pytest.FixtureRequest):
185
+ return codspeed_benchmark
186
+
187
+
188
+ @pytest.hookimpl(trylast=True)
189
+ def pytest_sessionstart(session: pytest.Session):
157
190
  """
158
- Patch the benchmark fixture to use the codspeed one if codspeed is enabled and an
159
- alternative benchmark fixture is available
191
+ Override the benchmark fixture of pytest-benchmark/pytest-speed after pytest has
192
+ initialized the fixture manager. Use the public API since pytest 9.1, falling
193
+ back to the private fixture mapping on older versions.
160
194
  """
161
- if (IS_PYTEST_BENCHMARK_INSTALLED or IS_PYTEST_SPEED_INSTALLED) and isinstance(
162
- plugin, FixtureManager
163
- ):
164
- fixture_manager = plugin
165
- codspeed_plugin: CodSpeedPlugin = cast(
166
- "CodSpeedPlugin", manager.get_plugin(PLUGIN_NAME)
195
+ if not (IS_PYTEST_BENCHMARK_INSTALLED or IS_PYTEST_SPEED_INSTALLED):
196
+ return
197
+ codspeed_plugin = session.config.pluginmanager.get_plugin(PLUGIN_NAME)
198
+ if codspeed_plugin is None or not codspeed_plugin.is_codspeed_enabled:
199
+ return
200
+
201
+ if HAS_PYTEST_REGISTER_FIXTURE:
202
+ pytest.register_fixture(name="benchmark", func=_benchmark_compat, node=session)
203
+ else:
204
+ fixture_manager = session._fixturemanager
205
+ codspeed_benchmark_fixtures = fixture_manager.getfixturedefs(
206
+ "codspeed_benchmark",
207
+ session.nodeid if BEFORE_PYTEST_8_1_1 else cast("str", session),
167
208
  )
168
- if codspeed_plugin.is_codspeed_enabled:
169
- codspeed_benchmark_fixtures = plugin.getfixturedefs(
170
- "codspeed_benchmark",
171
- fixture_manager.session.nodeid
172
- if BEFORE_PYTEST_8_1_1
173
- else cast("str", fixture_manager.session),
174
- )
175
- assert codspeed_benchmark_fixtures is not None
176
- # Archive the alternative benchmark fixture
177
- fixture_manager._arg2fixturedefs["__benchmark"] = (
178
- fixture_manager._arg2fixturedefs["benchmark"]
179
- )
180
- # Replace the alternative fixture with the codspeed one
181
- fixture_manager._arg2fixturedefs["benchmark"] = codspeed_benchmark_fixtures
209
+ assert codspeed_benchmark_fixtures is not None
210
+ # Archive the alternative benchmark fixture
211
+ fixture_manager._arg2fixturedefs["__benchmark"] = (
212
+ fixture_manager._arg2fixturedefs["benchmark"]
213
+ )
214
+ # Replace the alternative fixture with the codspeed one
215
+ fixture_manager._arg2fixturedefs["benchmark"] = codspeed_benchmark_fixtures
182
216
 
183
217
 
184
218
  @pytest.hookimpl(trylast=True)
@@ -19,6 +19,8 @@ else:
19
19
  IS_PYTEST_BENCHMARK_INSTALLED = importlib.util.find_spec("pytest_benchmark") is not None
20
20
  IS_PYTEST_SPEED_INSTALLED = importlib.util.find_spec("pytest_speed") is not None
21
21
  BEFORE_PYTEST_8_1_1 = pytest.version_tuple < (8, 1, 1)
22
+ # Public API since pytest 9.1, required since 9.2 removed `_arg2fixturedefs`
23
+ HAS_PYTEST_REGISTER_FIXTURE = hasattr(pytest, "register_fixture")
22
24
  SUPPORTS_PERF_TRAMPOLINE = sysconfig.get_config_var("PY_HAVE_PERF_TRAMPOLINE") == 1
23
25
 
24
26
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pytest-codspeed
3
- Version: 5.0.3
3
+ Version: 5.0.4
4
4
  Summary: Pytest plugin to create CodSpeed benchmarks
5
5
  Author-email: Arthur Pastel <arthur@codspeed.io>
6
6
  License: The MIT License (MIT)
@@ -60,7 +60,7 @@ Requires-Dist: pytest-xdist~=3.6.1; extra == "compat"
60
60
 
61
61
  [![CI](https://github.com/CodSpeedHQ/pytest-codspeed/actions/workflows/ci.yml/badge.svg)](https://github.com/CodSpeedHQ/pytest-codspeed/actions/workflows/ci.yml)
62
62
  [![PyPi Version](https://img.shields.io/pypi/v/pytest-codspeed?color=%2334D058&label=pypi)](https://pypi.org/project/pytest-codspeed)
63
- ![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-informational.svg)
63
+ ![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14%20%7C%203.15-informational.svg)
64
64
  [![Discord](https://img.shields.io/badge/chat%20on-discord-7289da.svg)](https://discord.com/invite/MxpaCfKSqF)
65
65
  [![CodSpeed Badge](https://img.shields.io/endpoint?url=https://codspeed.io/badge.json)](https://codspeed.io/CodSpeedHQ/pytest-codspeed)
66
66
 
@@ -168,7 +168,7 @@ jobs:
168
168
  run: pip install -r requirements.txt
169
169
 
170
170
  - name: Run benchmarks
171
- uses: CodSpeedHQ/action@v4
171
+ uses: CodSpeedHQ/action@v5
172
172
  with:
173
173
  mode: simulation # or `walltime`
174
174
  token: ${{ secrets.CODSPEED_TOKEN }}
@@ -1,11 +1,13 @@
1
1
  import pytest
2
2
  from conftest import (
3
+ ADDITION_BENCHMARK,
3
4
  IS_PERF_TRAMPOLINE_SUPPORTED,
4
5
  MeasurementMode,
5
6
  run_pytest_codspeed_with_mode,
6
7
  skip_with_perf_trampoline,
7
8
  skip_without_pytest_benchmark,
8
9
  skip_without_valgrind,
10
+ xfail_pytest_benchmark_on_pytest_9_2,
9
11
  )
10
12
 
11
13
 
@@ -30,7 +32,7 @@ def test_plugin_enabled_with_kwargs(
30
32
  def test_bench_enabled_header_without_perf(
31
33
  pytester: pytest.Pytester, codspeed_env
32
34
  ) -> None:
33
- pytester.copy_example("tests/examples/test_addition_fixture.py")
35
+ pytester.makepyfile(ADDITION_BENCHMARK)
34
36
  with codspeed_env():
35
37
  result = pytester.runpytest()
36
38
  result.stdout.fnmatch_lines(
@@ -40,7 +42,7 @@ def test_bench_enabled_header_without_perf(
40
42
 
41
43
  @skip_without_valgrind
42
44
  def test_plugin_enabled_by_env(pytester: pytest.Pytester, codspeed_env) -> None:
43
- pytester.copy_example("tests/examples/test_addition_fixture.py")
45
+ pytester.makepyfile(ADDITION_BENCHMARK)
44
46
  with codspeed_env():
45
47
  result = pytester.runpytest()
46
48
  result.stdout.fnmatch_lines(["*1 benchmarked*", "*1 passed*"])
@@ -48,7 +50,7 @@ def test_plugin_enabled_by_env(pytester: pytest.Pytester, codspeed_env) -> None:
48
50
 
49
51
  @skip_without_valgrind
50
52
  def test_plugin_enabled_and_env(pytester: pytest.Pytester, codspeed_env) -> None:
51
- pytester.copy_example("tests/examples/test_addition_fixture.py")
53
+ pytester.makepyfile(ADDITION_BENCHMARK)
52
54
  with codspeed_env():
53
55
  result = pytester.runpytest("--codspeed")
54
56
  result.stdout.fnmatch_lines(["*1 benchmarked*", "*1 passed*"])
@@ -119,8 +121,9 @@ def test_plugin_enabled_and_env_bench_hierachy_called(
119
121
  )
120
122
 
121
123
 
124
+ @xfail_pytest_benchmark_on_pytest_9_2
122
125
  def test_plugin_disabled(pytester: pytest.Pytester) -> None:
123
- pytester.copy_example("tests/examples/test_addition_fixture.py")
126
+ pytester.makepyfile(ADDITION_BENCHMARK)
124
127
  result = pytester.runpytest()
125
128
  result.stdout.fnmatch_lines(["*1 passed*"])
126
129
 
@@ -191,6 +194,7 @@ def test_plugin_only_benchmark_collection(
191
194
  )
192
195
 
193
196
 
197
+ @xfail_pytest_benchmark_on_pytest_9_2
194
198
  @skip_without_pytest_benchmark
195
199
  def test_pytest_benchmark_compatibility(pytester: pytest.Pytester) -> None:
196
200
  pytester.makepyfile(
@@ -2,6 +2,7 @@ import os
2
2
 
3
3
  import pytest
4
4
  from conftest import (
5
+ ADDITION_BENCHMARK,
5
6
  run_pytest_codspeed_with_mode,
6
7
  skip_with_pytest_benchmark,
7
8
  skip_without_perf_trampoline,
@@ -17,7 +18,7 @@ from pytest_codspeed.instruments import MeasurementMode
17
18
  def test_bench_enabled_header_with_perf(
18
19
  pytester: pytest.Pytester, codspeed_env
19
20
  ) -> None:
20
- pytester.copy_example("tests/examples/test_addition_fixture.py")
21
+ pytester.makepyfile(ADDITION_BENCHMARK)
21
22
  with codspeed_env():
22
23
  result = pytester.runpytest()
23
24
  result.stdout.fnmatch_lines(
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  from typing import TYPE_CHECKING
4
4
 
5
- from conftest import run_pytest_codspeed_with_mode
5
+ from conftest import ADDITION_BENCHMARK, run_pytest_codspeed_with_mode
6
6
 
7
7
  if TYPE_CHECKING:
8
8
  import pytest
@@ -19,7 +19,7 @@ from pytest_codspeed.instruments.walltime import WallTimeInstrument
19
19
  def test_bench_enabled_header_with_perf(
20
20
  pytester: pytest.Pytester,
21
21
  ) -> None:
22
- pytester.copy_example("tests/examples/test_addition_fixture.py")
22
+ pytester.makepyfile(ADDITION_BENCHMARK)
23
23
  result = run_pytest_codspeed_with_mode(pytester, MeasurementMode.WallTime)
24
24
  result.stdout.fnmatch_lines(["*test_some_addition_performance*", "*1 benchmarked*"])
25
25
 
File without changes