Skip to content

Commit 9285bd7

Browse files
authored
chore(docs): add benchmark marker to test case reference (#1960)
* chore(docs): add benchmark marker to test case ref. * chore(docs): update benchmark conftest instead.
1 parent e2d9b2f commit 9285bd7

File tree

1 file changed

+20
-13
lines changed

1 file changed

+20
-13
lines changed

tests/benchmark/conftest.py

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,33 @@
77

88
def pytest_collection_modifyitems(config, items):
99
"""Add the `benchmark` marker to all tests under `./tests/benchmark`."""
10+
benchmark_dir = Path(__file__).parent
11+
benchmark_marker = pytest.mark.benchmark
12+
gen_docs = config.getoption("--gen-docs", default=False)
13+
14+
if gen_docs:
15+
for item in items:
16+
if benchmark_dir in Path(item.fspath).parents and not item.get_closest_marker(
17+
"benchmark"
18+
):
19+
item.add_marker(benchmark_marker)
20+
return
21+
1022
marker_expr = config.getoption("-m", default="")
11-
gas_benchmark_values = config.getoption("--gas-benchmark-values", default=None)
12-
run_benchmarks = marker_expr and (
13-
"benchmark" in marker_expr and "not benchmark" not in marker_expr
14-
)
15-
if gas_benchmark_values:
16-
run_benchmarks = True
23+
run_benchmarks = (
24+
marker_expr and "benchmark" in marker_expr and "not benchmark" not in marker_expr
25+
) or config.getoption("--gas-benchmark-values", default=None)
26+
1727
items_for_removal = []
1828
for i, item in enumerate(items):
19-
is_in_benchmark_dir = Path(__file__).parent in Path(item.fspath).parents
20-
has_benchmark_marker = item.get_closest_marker("benchmark") is not None
21-
is_benchmark_test = is_in_benchmark_dir or has_benchmark_marker
22-
if is_benchmark_test:
23-
if is_in_benchmark_dir and not has_benchmark_marker:
24-
benchmark_marker = pytest.mark.benchmark
29+
is_in_benchmark_dir = benchmark_dir in Path(item.fspath).parents
30+
is_benchmark_test = is_in_benchmark_dir or item.get_closest_marker("benchmark")
2531

32+
if is_benchmark_test:
33+
if is_in_benchmark_dir and not item.get_closest_marker("benchmark"):
2634
item.add_marker(benchmark_marker)
2735
if not run_benchmarks:
2836
items_for_removal.append(i)
29-
3037
elif run_benchmarks:
3138
items_for_removal.append(i)
3239

0 commit comments

Comments
 (0)