def test_openapi_types_anyurl(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(AnyUrl) assert openapi_type == Schema(type="string", format="uri") openapi_type = type_converter.get_openapi_type(AnyHttpUrl) assert openapi_type == Schema(type="string", format="uri") openapi_type = type_converter.get_openapi_type(PostgresDsn) assert openapi_type == Schema(type="string", format="uri")
def test_openapi_types_list_of_list_of_optional_model(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(List[List[Optional[model.Project]]]) assert openapi_type.type == "array" assert openapi_type.items.type == "array" assert openapi_type.items.items.ref == type_converter.ref_prefix + "Project" assert openapi_type.items.items.nullable
def test_openapi_types_dict_of_union(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(Dict[str, Union[model.Project, model.Environment]]) assert openapi_type.type == "object" assert len(openapi_type.additionalProperties.anyOf) == 2 assert openapi_type.additionalProperties.anyOf[0].ref == type_converter.ref_prefix + "Project" assert openapi_type.additionalProperties.anyOf[1].ref == type_converter.ref_prefix + "Environment"
def test_openapi_types_list_of_list_of_optional_model(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type( List[List[Optional[model.Project]]]) assert openapi_type.type == "array" assert openapi_type.items.type == "array" assert openapi_type.items.items.required == ["id", "name", "environments"] assert openapi_type.items.items.nullable
def test_openapi_types_list(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(List[Union[int, UUID]]) assert openapi_type == Schema(type="array", items=Schema(anyOf=[ Schema(type="integer"), Schema(type="string", format="uuid") ]))
def test_openapi_types_enum(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(List[ResourceAction]) assert openapi_type.type == "array" assert openapi_type.items.ref == type_converter.ref_prefix + "ResourceAction" resource_action_type = type_converter.components.schemas["ResourceAction"] assert resource_action_type.type == "string" assert resource_action_type.enum == ["store", "push", "pull", "deploy", "dryrun", "getfact", "other"]
def test_openapi_types_env_setting(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(EnvironmentSetting) assert openapi_type.ref == type_converter.ref_prefix + "EnvironmentSetting" env_settings_type = type_converter.resolve_reference(openapi_type.ref) assert env_settings_type.title == "EnvironmentSetting" assert env_settings_type.type == "object" assert env_settings_type.required == ["name", "type", "default", "doc", "recompile", "update_model", "agent_restart"]
def test_openapi_types_enum(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(List[ResourceAction]) assert openapi_type == Schema(type="array", items=Schema(type="string", enum=[ "store", "push", "pull", "deploy", "dryrun", "getfact", "other" ]))
def test_openapi_types_optional_union(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(Optional[Union[int, str]]) assert len(openapi_type.anyOf) == 2 assert openapi_type.nullable
def test_openapi_types_list_of_model(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(List[model.Project]) assert openapi_type.type == "array" assert openapi_type.items.title == "Project" assert openapi_type.items.required == ["id", "name", "environments"]
def test_openapi_types_uuid(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(UUID) assert openapi_type == Schema(type="string", format="uuid")
def test_openapi_types_bytes(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(bytes) assert openapi_type == Schema(type="string", format="binary")
def test_openapi_types_float(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(float) assert openapi_type == Schema(type="number")
def test_openapi_types_string(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(str) assert openapi_type == Schema(type="string")
def test_openapi_types_int(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(int) assert openapi_type == Schema(type="integer")
def test_openapi_types_bool(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(bool) assert openapi_type == Schema(type="boolean")
def test_openapi_types_tuple(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(tuple) assert openapi_type == Schema(type="array", items=Schema())
def test_openapi_types_datetime(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(datetime) assert openapi_type == Schema(type="string", format="date-time")
def test_openapi_types_union_optional(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(Union[Optional[int], Optional[str]]) assert len(openapi_type.anyOf) == 2 assert openapi_type.nullable
def test_openapi_types_union(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(Union[str, bytes]) assert openapi_type == Schema(anyOf=[Schema(type="string"), Schema(type="string", format="binary")])
def test_openapi_types_optional(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(Optional[str]) assert openapi_type == Schema(type="string", nullable=True)
def test_openapi_types_list_of_model(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(List[model.Project]) assert openapi_type.type == "array" assert openapi_type.items.ref == type_converter.ref_prefix + "Project"
def test_openapi_types_dict(): type_converter = OpenApiTypeConverter() openapi_type = type_converter.get_openapi_type(Dict[str, UUID]) assert openapi_type == Schema(type="object", additionalProperties=Schema(type="string", format="uuid"))