Search in sources :

Example 1 with TestObject2616

use of io.swagger.v3.core.resolving.resources.TestObject2616 in project swagger-core by swagger-api.

the class ComposedSchemaTest method readComposedSchema_ticket2616.

@Test(description = "read single composed schem refs #2616")
public void readComposedSchema_ticket2616() {
    Map<String, Schema> schemas = ModelConverters.getInstance().readAll(TestObject2616.TestObject2616_Schema.class);
    Schema model = schemas.get("TestObject2616_Schema");
    Assert.assertNotNull(model);
    Map<String, Schema> properties = model.getProperties();
    Assert.assertNotNull(properties.get("object"));
    Assert.assertTrue(properties.get("object").get$ref().equals("#/components/schemas/AbstractObject"));
    model = schemas.get("AbstractObject");
    Assert.assertNotNull(model);
    Assert.assertTrue(model instanceof ComposedSchema);
    Assert.assertTrue(((ComposedSchema) model).getOneOf().size() == 2);
    model = schemas.get("AObject");
    Assert.assertNotNull(model);
    model = schemas.get("BObject");
    Assert.assertNotNull(model);
    model = schemas.get("objects");
    Assert.assertNull(model);
}
Also used : TestObject2616(io.swagger.v3.core.resolving.resources.TestObject2616) Schema(io.swagger.v3.oas.models.media.Schema) ArraySchema(io.swagger.v3.oas.models.media.ArraySchema) ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) Test(org.testng.annotations.Test)

Example 2 with TestObject2616

use of io.swagger.v3.core.resolving.resources.TestObject2616 in project swagger-core by swagger-api.

the class ComposedSchemaTest method readArrayComposedSchema_ticket2616.

@Test(description = "read composed schem refs #2616")
public void readArrayComposedSchema_ticket2616() {
    Map<String, Schema> schemas = ModelConverters.getInstance().readAll(TestObject2616.class);
    Schema model = schemas.get("testObject");
    Assert.assertNotNull(model);
    Map<String, Schema> properties = model.getProperties();
    Assert.assertNotNull(properties.get("objects"));
    Assert.assertTrue(properties.get("objects") instanceof ArraySchema);
    model = schemas.get("AbstractObject");
    Assert.assertNotNull(model);
    Assert.assertTrue(model instanceof ComposedSchema);
    Assert.assertTrue(((ComposedSchema) model).getOneOf().size() == 2);
    model = schemas.get("AObject");
    Assert.assertNotNull(model);
    model = schemas.get("BObject");
    Assert.assertNotNull(model);
    model = schemas.get("objects");
    Assert.assertNull(model);
}
Also used : ArraySchema(io.swagger.v3.oas.models.media.ArraySchema) Schema(io.swagger.v3.oas.models.media.Schema) ArraySchema(io.swagger.v3.oas.models.media.ArraySchema) ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) Test(org.testng.annotations.Test)

Example 3 with TestObject2616

use of io.swagger.v3.core.resolving.resources.TestObject2616 in project swagger-core by swagger-api.

the class Ticket2915Test method testPropertyName.

@Test
public void testPropertyName() throws Exception {
    final ModelResolver modelResolver = new ModelResolver(mapper());
    final ModelConverterContextImpl context = new ModelConverterContextImpl(modelResolver);
    final Schema model = context.resolve(new AnnotatedType(TestObject2915.class));
    SerializationMatchers.assertEqualsToYaml(context.getDefinedModels(), "QuantitativeValue:\n" + "  required:\n" + "  - value\n" + "  type: object\n" + "  properties:\n" + "    value:\n" + "      type: number\n" + "      format: double\n" + "    unitText:\n" + "      type: string\n" + "    unitCode:\n" + "      type: string\n" + "  description: A combination of a value and associated unit\n" + "TestObject2616:\n" + "  type: object\n" + "  properties:\n" + "    name:\n" + "      type: string\n" + "    perServing:\n" + "      $ref: '#/components/schemas/QuantitativeValue'\n" + "    per100Gram:\n" + "      $ref: '#/components/schemas/QuantitativeValue'\n" + "  description: Nutritional value specification");
}
Also used : AnnotatedType(io.swagger.v3.core.converter.AnnotatedType) TestObject2915(io.swagger.v3.core.resolving.resources.TestObject2915) Schema(io.swagger.v3.oas.models.media.Schema) ModelConverterContextImpl(io.swagger.v3.core.converter.ModelConverterContextImpl) ModelResolver(io.swagger.v3.core.jackson.ModelResolver) Test(org.testng.annotations.Test)

Aggregations

Schema (io.swagger.v3.oas.models.media.Schema)3 Test (org.testng.annotations.Test)3 ArraySchema (io.swagger.v3.oas.models.media.ArraySchema)2 ComposedSchema (io.swagger.v3.oas.models.media.ComposedSchema)2 AnnotatedType (io.swagger.v3.core.converter.AnnotatedType)1 ModelConverterContextImpl (io.swagger.v3.core.converter.ModelConverterContextImpl)1 ModelResolver (io.swagger.v3.core.jackson.ModelResolver)1 TestObject2616 (io.swagger.v3.core.resolving.resources.TestObject2616)1 TestObject2915 (io.swagger.v3.core.resolving.resources.TestObject2915)1