Skip to content

Commit 3463eb7

Browse files
committed
Fix / ignore mypy issues
1 parent 6a6dcbb commit 3463eb7

File tree

5 files changed

+14
-16
lines changed

5 files changed

+14
-16
lines changed

src/pytest_split/algorithms.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,12 @@ def least_duration(
5151
items_with_durations_indexed, key=lambda tup: tup[1], reverse=True
5252
)
5353

54-
selected: "List[List[Tuple[nodes.Item, int]]]" = [[] for _ in range(splits)]
55-
deselected: "List[List[nodes.Item]]" = [[] for _ in range(splits)]
56-
duration: "List[float]" = [0 for _ in range(splits)]
54+
selected: List[List[Tuple[nodes.Item, int]]] = [[] for _ in range(splits)]
55+
deselected: List[List[nodes.Item]] = [[] for _ in range(splits)]
56+
duration: List[float] = [0 for _ in range(splits)]
5757

5858
# create a heap of the form (summed_durations, group_index)
59-
heap: "List[Tuple[float, int]]" = [(0, i) for i in range(splits)]
59+
heap: List[Tuple[float, int]] = [(0, i) for i in range(splits)]
6060
heapq.heapify(heap)
6161
for item, item_duration, original_index in sorted_items_with_durations:
6262
# get group with smallest sum
@@ -102,9 +102,9 @@ def duration_based_chunks(
102102
items_with_durations = _get_items_with_durations(items, durations)
103103
time_per_group = sum(map(itemgetter(1), items_with_durations)) / splits
104104

105-
selected: "List[List[nodes.Item]]" = [[] for i in range(splits)]
106-
deselected: "List[List[nodes.Item]]" = [[] for i in range(splits)]
107-
duration: "List[float]" = [0 for i in range(splits)]
105+
selected: List[List[nodes.Item]] = [[] for i in range(splits)]
106+
deselected: List[List[nodes.Item]] = [[] for i in range(splits)]
107+
duration: List[float] = [0 for i in range(splits)]
108108

109109
group_idx = 0
110110
for item, item_duration in items_with_durations:

src/pytest_split/ipynb_compatibility.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from pytest_split.algorithms import TestGroup
77

88

9-
def ensure_ipynb_compatibility(group: "TestGroup", items: list) -> None:
9+
def ensure_ipynb_compatibility(group: "TestGroup", items: list) -> None: # type: ignore[type-arg]
1010
"""
1111
Ensures that group doesn't contain partial IPy notebook cells.
1212

src/pytest_split/plugin.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
from _pytest import nodes
1616
from _pytest.config import Config
1717
from _pytest.config.argparsing import Parser
18-
from _pytest.main import ExitCode
18+
from _pytest.main import ExitCode # type: ignore[attr-defined]
1919

2020

2121
# Ugly hack for freezegun compatibility: https://github.com/spulec/freezegun/issues/286
@@ -193,9 +193,9 @@ def pytest_sessionfinish(self) -> None:
193193
https://github.com/pytest-dev/pytest/blob/main/src/_pytest/main.py#L308
194194
"""
195195
terminal_reporter = self.config.pluginmanager.get_plugin("terminalreporter")
196-
test_durations: "Dict[str, float]" = {}
196+
test_durations: Dict[str, float] = {}
197197

198-
for test_reports in terminal_reporter.stats.values():
198+
for test_reports in terminal_reporter.stats.values(): # type: ignore[union-attr]
199199
for test_report in test_reports:
200200
if isinstance(test_report, TestReport):
201201
# These ifs be removed after this is solved: # https://github.com/spulec/freezegun/issues/286
@@ -224,8 +224,6 @@ def pytest_sessionfinish(self) -> None:
224224
json.dump(self.cached_durations, f, sort_keys=True, indent=4)
225225

226226
message = self.writer.markup(
227-
"\n\n[pytest-split] Stored test durations in {}".format(
228-
self.config.option.durations_path
229-
)
227+
f"\n\n[pytest-split] Stored test durations in {self.config.option.durations_path}"
230228
)
231229
self.writer.line(message)

tests/test_algorithms.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ def test__split_tests_same_set_regardless_of_order(self):
125125
items = [item(t) for t in tests]
126126
algo = Algorithms["least_duration"].value
127127
for n in (2, 3, 4):
128-
selected_each: "List[Set[Item]]" = [set() for _ in range(n)]
128+
selected_each: List[Set[Item]] = [set() for _ in range(n)]
129129
for order in itertools.permutations(items):
130130
splits = algo(splits=n, items=order, durations=durations)
131131
for i, group in enumerate(splits):

tests/test_plugin.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from typing import ClassVar
55

66
import pytest
7-
from _pytest.main import ExitCode
7+
from _pytest.main import ExitCode # type: ignore[attr-defined]
88

99
pytest_plugins = ["pytester"]
1010

0 commit comments

Comments
 (0)