Esempio n. 1
0
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")
Esempio n. 2
0
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
Esempio n. 3
0
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"
Esempio n. 4
0
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
Esempio n. 5
0
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")
                                  ]))
Esempio n. 6
0
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"]
Esempio n. 7
0
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"]
Esempio n. 8
0
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"
                                               ]))
Esempio n. 9
0
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
Esempio n. 10
0
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"]
Esempio n. 11
0
def test_openapi_types_uuid():
    type_converter = OpenApiTypeConverter()
    openapi_type = type_converter.get_openapi_type(UUID)
    assert openapi_type == Schema(type="string", format="uuid")
Esempio n. 12
0
def test_openapi_types_bytes():
    type_converter = OpenApiTypeConverter()
    openapi_type = type_converter.get_openapi_type(bytes)
    assert openapi_type == Schema(type="string", format="binary")
Esempio n. 13
0
def test_openapi_types_float():
    type_converter = OpenApiTypeConverter()
    openapi_type = type_converter.get_openapi_type(float)
    assert openapi_type == Schema(type="number")
Esempio n. 14
0
def test_openapi_types_string():
    type_converter = OpenApiTypeConverter()
    openapi_type = type_converter.get_openapi_type(str)
    assert openapi_type == Schema(type="string")
Esempio n. 15
0
def test_openapi_types_int():
    type_converter = OpenApiTypeConverter()
    openapi_type = type_converter.get_openapi_type(int)
    assert openapi_type == Schema(type="integer")
Esempio n. 16
0
def test_openapi_types_bool():
    type_converter = OpenApiTypeConverter()
    openapi_type = type_converter.get_openapi_type(bool)
    assert openapi_type == Schema(type="boolean")
Esempio n. 17
0
def test_openapi_types_tuple():
    type_converter = OpenApiTypeConverter()
    openapi_type = type_converter.get_openapi_type(tuple)
    assert openapi_type == Schema(type="array", items=Schema())
Esempio n. 18
0
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")
Esempio n. 19
0
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
Esempio n. 20
0
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")])
Esempio n. 21
0
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)
Esempio n. 22
0
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"
Esempio n. 23
0
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"))