def test_parse_array(source_obj, generated_classes):
    parser = OpenAPIParser(BaseModel, CustomRootType)
    parser.parse_array('Pets', JsonSchemaObject.parse_obj(source_obj), [])
    assert dump_templates(list(parser.results)) == generated_classes
def test_parse_root_type(source_obj, generated_classes):
    parser = OpenAPIParser(BaseModel, CustomRootType)
    parsed_templates = parser.parse_root_type(
        'Name', JsonSchemaObject.parse_obj(source_obj))
    assert dump_templates(list(parsed_templates)) == generated_classes
Пример #3
0
def test_parse_object(source_obj, generated_classes):
    parser = JsonSchemaParser(data_model_field_type=DataModelFieldBase,
                              source='')
    parser.parse_object('Person', JsonSchemaObject.parse_obj(source_obj), [])
    assert dump_templates(list(parser.results)) == generated_classes
Пример #4
0
def test_parse_any_root_object(source_obj, generated_classes):
    parser = JsonSchemaParser('')
    parser.parse_root_type('AnyObject', JsonSchemaObject.parse_obj(source_obj),
                           [])
    assert dump_templates(list(parser.results)) == generated_classes
Пример #5
0
def test_parse_any_root_object(source_obj, generated_classes):
    parser = JsonSchemaParser(BaseModel, CustomRootType)
    parser.parse_root_type('AnyObject', JsonSchemaObject.parse_obj(source_obj))
    assert dump_templates(list(parser.results)) == generated_classes
Пример #6
0
def test_json_schema_object_ref_url():
    parser = JsonSchemaParser(BaseModel, CustomRootType)
    obj = JsonSchemaObject.parse_obj({'$ref': 'https://example.org'})
    with pytest.raises(NotImplementedError):
        parser.parse_ref(obj)
def test_get_data_type_invalid_obj():
    with pytest.raises(ValueError, match='invalid schema object'):
        parser = OpenAPIParser(BaseModel, CustomRootType)
        assert parser.get_data_type(JsonSchemaObject())
def test_parse_root_type(source_obj, generated_classes):
    parser = OpenAPIParser('')
    parser.parse_root_type('Name', JsonSchemaObject.parse_obj(source_obj), [])
    assert dump_templates(list(parser.results)) == generated_classes
Пример #9
0
def test_get_data_type_array(schema_types, result_types):
    parser = JsonSchemaParser(BaseModel, CustomRootType)
    assert parser.get_data_type(JsonSchemaObject(type=schema_types)) == [
        DataType(type=r) for r in result_types
    ]