def test_translate_type_integer_formats(resolved_type, java_type): assert translate_type(resolved_type) == java_type
def test_translate_type_unavailable_format(): resolved_type = ResolvedType(ContainerType.PRIMITIVE, "integer", "int128") assert translate_type(resolved_type) == PRIMITIVE_TYPES["integer"]["default"]
def test_translate_type_set(resolved_type, native_type): traslated = translate_type(ResolvedType(ContainerType.SET, resolved_type)) assert traslated == f"Set<{native_type}>"
def test_translate_type_unknown(resolved_type, _java_type): with pytest.raises(ValueError): translate_type(ResolvedType("foo", resolved_type))
def test_translate_type_list(resolved_type, native_type): traslated = translate_type(ResolvedType(ContainerType.LIST, resolved_type)) assert traslated == f"List<{native_type}>"
def test_translate_type_multiple(): assert translate_type(ResolvedType(ContainerType.MULTIPLE, MULTIPLE)) == "Object"
def test_translate_type_dict(resolved_type, native_type): traslated = translate_type(ResolvedType(ContainerType.DICT, resolved_type)) assert traslated == f"Map<String, {native_type}>"
def test_translate_type_primitive(resolved_type, native_type): assert translate_type(resolved_type) == native_type
def test_translate_type_model_passthrough(): item_type = object() traslated = translate_type(ResolvedType(ContainerType.MODEL, item_type)) assert traslated is item_type