|
| 1 | +from typing import cast |
| 2 | + |
1 | 3 | import numpy as np |
2 | 4 | from numpy import typing as npt # noqa: F401 |
3 | 5 | import pandas as pd |
@@ -124,14 +126,15 @@ def test_sub_pd_series() -> None: |
124 | 126 | f = pd.Series([1.0, 2.0, 3.0]) |
125 | 127 | c = pd.Series([1.1j, 2.2j, 4.1j]) |
126 | 128 |
|
| 129 | + # In the following two cases, mypy fails to recognise the second operand as pd.Series[bool] |
127 | 130 | if TYPE_CHECKING_INVALID_USAGE: |
128 | | - _ = left - b # pyright: ignore[reportOperatorIssue] |
| 131 | + _ = left - cast("pd.Series[bool]", b) # type: ignore[redundant-cast,operator] # pyright: ignore[reportUnnecessaryCast,reportOperatorIssue] |
129 | 132 | check(assert_type(left - i, "pd.Series[int]"), pd.Series, np.integer) |
130 | 133 | check(assert_type(left - f, "pd.Series[float]"), pd.Series, np.floating) |
131 | 134 | check(assert_type(left - c, "pd.Series[complex]"), pd.Series, np.complexfloating) |
132 | 135 |
|
133 | 136 | if TYPE_CHECKING_INVALID_USAGE: |
134 | | - _ = b - left # pyright: ignore[reportOperatorIssue] |
| 137 | + _ = b - cast("pd.Series[bool]", left) # type: ignore[redundant-cast,operator] # pyright: ignore[reportUnnecessaryCast,reportOperatorIssue] |
135 | 138 | check(assert_type(i - left, "pd.Series[int]"), pd.Series, np.integer) |
136 | 139 | check(assert_type(f - left, "pd.Series[float]"), pd.Series, np.floating) |
137 | 140 | check(assert_type(c - left, "pd.Series[complex]"), pd.Series, np.complexfloating) |
|
0 commit comments