def test_inner_type_dict(resolved_type, native_type): inner_type = get_inner_type(ResolvedType(ContainerType.DICT, resolved_type)) assert inner_type.type == native_type assert inner_type.classes == ["Map"]
def test_inner_type_list(resolved_type, native_type): inner_type = get_inner_type(ResolvedType(ContainerType.LIST, resolved_type)) assert inner_type.type == native_type assert inner_type.classes == ["Array"]
def test_inner_type_primitive(resolved_type, native_type): inner_type = get_inner_type(resolved_type) assert inner_type.type == native_type assert inner_type.primitive is True
def test_inner_type_model_passthrough(): item_type = object() inner_type = get_inner_type(ResolvedType(ContainerType.MODEL, item_type)) assert inner_type.type is item_type assert inner_type.primitive is False
def test_inner_type_unknown(resolved_type, _native_type): with pytest.raises(ValueError): get_inner_type(ResolvedType("foo", resolved_type))
def test_inner_type_multiple(resolved_type, _native_type): inner_type = get_inner_type( ResolvedType(ContainerType.MULTIPLE, resolved_type)) assert inner_type.type == "object" assert inner_type.primitive is True
def test_inner_type_set(resolved_type, native_type): inner_type = get_inner_type(ResolvedType(ContainerType.SET, resolved_type)) assert inner_type.type == native_type assert inner_type.classes == ["Set"]