my.hypothesis: better mypy coverage

This commit is contained in:
Dima Gerasimov 2020-09-29 16:58:50 +01:00 committed by karlicoss
parent deefa9fbbc
commit 6199ed7916
3 changed files with 19 additions and 11 deletions

View file

@ -1,6 +1,8 @@
'''
Some backwards compatibility stuff/deprecation helpers
'''
from types import ModuleType
from . import warnings
from .common import LazyLogger
@ -13,7 +15,7 @@ def pre_pip_dal_handler(
e: ModuleNotFoundError,
cfg,
requires=[],
) -> None:
) -> ModuleType:
'''
https://github.com/karlicoss/HPI/issues/79
'''

View file

@ -4,7 +4,7 @@ See https://beepb00p.xyz/mypy-error-handling.html#kiss for more detail
"""
from itertools import tee
from typing import Union, TypeVar, Iterable, List, Tuple, Type, Optional
from typing import Union, TypeVar, Iterable, List, Tuple, Type, Optional, Callable, Any
T = TypeVar('T')
@ -44,7 +44,7 @@ def split_errors(l: Iterable[ResT[T, E]], ET: Type[E]) -> Tuple[Iterable[T], Ite
return (values, errors)
def sort_res_by(items: Iterable[ResT], key) -> List[ResT]:
def sort_res_by(items: Iterable[Res[T]], key: Callable[[T], Any]) -> List[Res[T]]:
"""
The general idea is: just alaways carry errors with the entry that precedes them
"""
@ -58,7 +58,7 @@ def sort_res_by(items: Iterable[ResT], key) -> List[ResT]:
groups.append((i, group))
group = []
results = []
results: List[Res[T]] = []
for v, errs in sorted(groups, key=lambda p: key(p[0])):
results.extend(errs)
results.append(v)
@ -125,7 +125,7 @@ def extract_error_datetime(e: Exception) -> Optional[datetime]:
return None
def test_datetime_errors():
def test_datetime_errors() -> None:
import pytz
dt_notz = datetime.now()
dt_tz = datetime.now(tz=pytz.timezone('Europe/Amsterdam'))