Esempio n. 1
0
def test_type():
    class User:
        pass

    class BasicUser(User):
        pass

    class ProUser(User):
        pass

    class TeamUser(ProUser):
        pass

    assert isinstanceof(User, Type[User])
    assert isinstanceof(BasicUser, Type[User])
    assert isinstanceof(ProUser, Type[User])
    assert isinstanceof(TeamUser, Type[User])
    assert not isinstanceof(str, Type[User])
    assert isinstanceof(str, Type[Any])
Esempio n. 2
0
def test_any():
    assert isinstanceof(None, Any)
    assert isinstanceof(1, Any)
    assert isinstanceof('1', Any)
Esempio n. 3
0
def test_example_global_isinstanceof():
    from typing import Union
    from istype import isinstanceof

    assert isinstanceof(1, Union[int, str])
Esempio n. 4
0
def test_tuple():
    assert isinstanceof((1, '1'), Tuple[int, str])
    assert not isinstanceof((1, 1), Tuple[int, str])
Esempio n. 5
0
def test_list_generic_empty():
    assert isinstanceof([], typing.List[int])
Esempio n. 6
0
def test_union():
    assert isinstanceof(1, Union[int])
    assert isinstanceof(1, Union[int, str])
    assert isinstanceof(1, Union[int, Union[float, str]])
Esempio n. 7
0
def test_optional():
    assert isinstanceof('1', Optional[str])
    assert isinstanceof(None, Optional[str])
    assert not isinstanceof(1, Optional[str])
Esempio n. 8
0
def test_collection_generic_empty():
    assert isinstanceof([], typing.Collection[int])
Esempio n. 9
0
def test_iterable_generic_empty():
    assert isinstanceof([], typing.Iterable[int])
Esempio n. 10
0
def test_frozenset():
    assert isinstanceof(frozenset([1, '2']), frozenset)
Esempio n. 11
0
def test_frozenset_generic():
    assert isinstanceof(frozenset([1, 2]), typing.FrozenSet[int])
    assert not isinstanceof(frozenset([1, '2']), typing.FrozenSet[int])
Esempio n. 12
0
def test_set_generic():
    assert isinstanceof(set([1, 2]), typing.Set[int])
    assert not isinstanceof(set([1, '2']), typing.Set[int])
Esempio n. 13
0
def test_set():
    assert isinstanceof(set([1, '2']), set)
Esempio n. 14
0
def test_list_generic():
    assert isinstanceof([1, 1], typing.List[int])
    assert not isinstanceof([1, '1'], typing.List[int])
    assert isinstanceof([1, '1'], typing.List[object])
Esempio n. 15
0
def test_anystr():
    assert not isinstanceof(None, AnyStr)
    assert not isinstanceof([1, '1'], AnyStr)
    assert isinstanceof('1', AnyStr)
    assert isinstanceof(b'1', AnyStr)
Esempio n. 16
0
def test_dict():
    assert isinstanceof({'2': 1}, dict)
Esempio n. 17
0
def test_class_var():
    assert not isinstanceof(None, ClassVar[int])
    assert isinstanceof(1, ClassVar[int])
    assert not isinstanceof(1, ClassVar[str])
Esempio n. 18
0
def test_dict_generic():
    assert isinstanceof({1: '2'}, typing.Dict[int, str])
    assert not isinstanceof({'2': 1}, typing.Dict[int, str])
Esempio n. 19
0
def test_union_complex():
    assert isinstanceof([1], Union[int, List[int]])
Esempio n. 20
0
def test_mutable_mapping():
    assert isinstanceof({'2': 1}, collections.abc.MutableMapping)
Esempio n. 21
0
def test_optional_with_union():
    assert isinstanceof('1', Optional[Union[str, int]])
    assert isinstanceof(1, Optional[Union[str, int]])
    assert isinstanceof(None, Optional[Union[str, int]])
    assert not isinstanceof(1.1, Optional[Union[str, int]])
Esempio n. 22
0
def test_mutable_mapping_generic():
    assert isinstanceof({1: '2'}, typing.MutableMapping[int, str])
    assert not isinstanceof({'2': 1}, typing.MutableMapping[int, str])
Esempio n. 23
0
def checked_cast(type: Type[_T], obj: Any) -> _T:
    """
    Method for executing a safe cast in python
    """
    assert istype.isinstanceof(obj, type)
    return obj  # type: ignore
Esempio n. 24
0
def test_list():
    assert isinstanceof([], list) is isinstance([], list)