mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-04 15:28:27 +01:00
* drop Python 3.8 Note that this PR only makes typing related changes. Other changes can be done once this gets merged, they are relatively few in numbers. * bump build python version * add typing_extensions to lint group
22 lines
587 B
Python
22 lines
587 B
Python
from typing import TYPE_CHECKING, Any
|
|
from unittest.mock import ANY
|
|
|
|
if TYPE_CHECKING:
|
|
from unittest.mock import Mock
|
|
|
|
|
|
def issubset(subset: dict, superset: dict) -> bool:
|
|
assert superset == {**superset, **subset}
|
|
return True
|
|
|
|
|
|
def called_once_with_subset(m: "Mock", *args: Any, **kwargs: Any) -> bool:
|
|
m.assert_called_once()
|
|
m_args, m_kwargs = m.call_args
|
|
|
|
expected_args = m_args + (ANY,) * (len(m_args) - len(args) - 1)
|
|
expected_kwargs = {k: kwargs.get(k, ANY) for k in m_kwargs}
|
|
m.assert_called_with(*expected_args, **expected_kwargs)
|
|
|
|
return True
|