Search in sources :

Example 11 with AnnotatedType

use of io.swagger.v3.core.converter.AnnotatedType 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)

Example 12 with AnnotatedType

use of io.swagger.v3.core.converter.AnnotatedType in project swagger-core by swagger-api.

the class Ticket2740CyclicTest method testCyclicBean.

@Test
public void testCyclicBean() throws Exception {
    final ModelResolver modelResolver = new ModelResolver(mapper());
    final ModelConverterContextImpl context = new ModelConverterContextImpl(modelResolver);
    final Schema model = context.resolve(new AnnotatedType(MyThing.class));
    SerializationMatchers.assertEqualsToYaml(model, "type: object\n" + "properties:\n" + "  otherThings:\n" + "    uniqueItems: true\n" + "    type: array\n" + "    description: Other related things\n" + "    items:\n" + "      $ref: '#/components/schemas/MyThing'\n" + "description: Thing");
}
Also used : AnnotatedType(io.swagger.v3.core.converter.AnnotatedType) Schema(io.swagger.v3.oas.models.media.Schema) MyThing(io.swagger.v3.core.resolving.resources.MyThing) ModelConverterContextImpl(io.swagger.v3.core.converter.ModelConverterContextImpl) ModelResolver(io.swagger.v3.core.jackson.ModelResolver) Test(org.testng.annotations.Test)

Example 13 with AnnotatedType

use of io.swagger.v3.core.converter.AnnotatedType in project swagger-core by swagger-api.

the class Ticket2884Test method test2884.

@Test
public void test2884() throws Exception {
    final ModelResolver modelResolver = new ModelResolver(mapper());
    ModelConverterContextImpl context = new ModelConverterContextImpl(modelResolver);
    Ticket2884ModelClass a = new Ticket2884ModelClass();
    Schema model = context.resolve(new AnnotatedType(Ticket2884Model.class));
    SerializationMatchers.assertEqualsToYaml(context.getDefinedModels(), "Ticket2884Model:\n" + "  type: object\n" + "  properties:\n" + "    Ticket2884Model:\n" + "      type: object");
    context = new ModelConverterContextImpl(modelResolver);
    model = context.resolve(new AnnotatedType(Ticket2884ModelClass.class));
    SerializationMatchers.assertEqualsToYaml(context.getDefinedModels(), "Ticket2884ModelClass:\n" + "  type: object\n" + "  properties:\n" + "    Ticket2884ModelClass:\n" + "      type: object\n" + "      properties:\n" + "        bar:\n" + "          type: string\n" + "        foo:\n" + "          type: array\n" + "          items:\n" + "            type: string\n");
}
Also used : AnnotatedType(io.swagger.v3.core.converter.AnnotatedType) Ticket2884Model(io.swagger.v3.core.resolving.resources.Ticket2884Model) Schema(io.swagger.v3.oas.models.media.Schema) Ticket2884ModelClass(io.swagger.v3.core.resolving.resources.Ticket2884ModelClass) ModelConverterContextImpl(io.swagger.v3.core.converter.ModelConverterContextImpl) ModelResolver(io.swagger.v3.core.jackson.ModelResolver) Test(org.testng.annotations.Test)

Example 14 with AnnotatedType

use of io.swagger.v3.core.converter.AnnotatedType in project swagger-core by swagger-api.

the class Ticket3063Test method testTicket3063.

@Test
public void testTicket3063() throws Exception {
    final Schema model = context.resolve(new AnnotatedType(BaseClass.class));
    assertNotNull(model);
    String yaml = "BaseClass:\n" + "  required:\n" + "  - type\n" + "  type: object\n" + "  properties:\n" + "    type:\n" + "      type: string\n" + "      description: Type\n" + "      example: AndroidDeviceRequirements\n" + "  description: test\n" + "  discriminator:\n" + "    propertyName: type\n" + "SubClass:\n" + "  required:\n" + "  - type\n" + "  type: object\n" + "  description: SubClass\n" + "  allOf:\n" + "  - $ref: '#/components/schemas/BaseClass'\n" + "  - type: object\n" + "    properties:\n" + "      additionalPropertyWhichShouldBeThere:\n" + "        type: integer\n" + "        description: Test\n" + "        format: int32";
    SerializationMatchers.assertEqualsToYaml(context.getDefinedModels(), yaml);
}
Also used : AnnotatedType(io.swagger.v3.core.converter.AnnotatedType) Schema(io.swagger.v3.oas.models.media.Schema) BeforeTest(org.testng.annotations.BeforeTest) Test(org.testng.annotations.Test)

Example 15 with AnnotatedType

use of io.swagger.v3.core.converter.AnnotatedType in project swagger-core by swagger-api.

the class Ticket3348Test method testTicket3348.

@Test
public void testTicket3348() {
    final Schema model = context.resolve(new AnnotatedType(WithObjects.class));
    assertNotNull(model);
    final Map<String, Schema> props = model.getProperties();
    assertEquals(props.size(), 2);
}
Also used : AnnotatedType(io.swagger.v3.core.converter.AnnotatedType) Schema(io.swagger.v3.oas.models.media.Schema) Test(org.testng.annotations.Test)

Aggregations

Schema (io.swagger.v3.oas.models.media.Schema)60 AnnotatedType (io.swagger.v3.core.converter.AnnotatedType)57 Test (org.testng.annotations.Test)47 ModelConverterContextImpl (io.swagger.v3.core.converter.ModelConverterContextImpl)25 ModelResolver (io.swagger.v3.core.jackson.ModelResolver)21 ArraySchema (io.swagger.v3.oas.models.media.ArraySchema)14 ComposedSchema (io.swagger.v3.oas.models.media.ComposedSchema)13 AfterTest (org.testng.annotations.AfterTest)13 StringSchema (io.swagger.v3.oas.models.media.StringSchema)11 ModelConverter (io.swagger.v3.core.converter.ModelConverter)6 IntegerSchema (io.swagger.v3.oas.models.media.IntegerSchema)6 ObjectSchema (io.swagger.v3.oas.models.media.ObjectSchema)6 Annotation (java.lang.annotation.Annotation)6 LinkedHashMap (java.util.LinkedHashMap)5 Map (java.util.Map)5 JavaType (com.fasterxml.jackson.databind.JavaType)4 MapSchema (io.swagger.v3.oas.models.media.MapSchema)4 NumberSchema (io.swagger.v3.oas.models.media.NumberSchema)4 UUIDSchema (io.swagger.v3.oas.models.media.UUIDSchema)4 ArrayList (java.util.ArrayList)4