Skip to content

Commit 8d6d490

Browse files
committed
chore(test_version): Updates for mypy
1 parent 76028e3 commit 8d6d490

File tree

1 file changed

+23
-3
lines changed

1 file changed

+23
-3
lines changed

tests/test_version.py

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
import operator
2+
import typing as t
23
from contextlib import nullcontext as does_not_raise
34

45
import pytest
56

67
from libtmux._compat import LooseVersion
78

9+
if t.TYPE_CHECKING:
10+
from _pytest.python_api import RaisesContext
11+
812

913
@pytest.mark.parametrize(
1014
"version",
@@ -19,10 +23,17 @@
1923
"1.0.0-next.1",
2024
],
2125
)
22-
def test_version(version):
26+
def test_version(version: str) -> None:
2327
assert LooseVersion(version)
2428

2529

30+
class VersionCompareFixture(t.NamedTuple):
31+
version: object
32+
op: t.Callable[[object, object], bool]
33+
versionb: object
34+
raises: t.Union[t.Type[Exception], bool]
35+
36+
2637
@pytest.mark.parametrize(
2738
"version,op,versionb,raises",
2839
[
@@ -37,7 +48,16 @@ def test_version(version):
3748
["1", operator.lt, "1", AssertionError],
3849
],
3950
)
40-
def test_version_compare(version, op, versionb, raises):
41-
raises_ctx = pytest.raises(raises) if raises else does_not_raise()
51+
def test_version_compare(
52+
version: str,
53+
op: t.Callable[[object, object], bool],
54+
versionb: str,
55+
raises: t.Union[t.Type[Exception], bool],
56+
) -> None:
57+
raises_ctx: "RaisesContext[Exception]" = (
58+
pytest.raises(t.cast(t.Type[Exception], raises))
59+
if raises
60+
else t.cast("RaisesContext[Exception]", does_not_raise())
61+
)
4262
with raises_ctx:
4363
assert op(LooseVersion(version), LooseVersion(versionb))

0 commit comments

Comments
 (0)