Search in sources :

Example 61 with Schema

use of io.swagger.v3.oas.annotations.media.Schema in project swagger-core by swagger-api.

the class InheritedBeanTest method testComposedChildBean.

@Test
public void testComposedChildBean() throws Exception {
    final Schema subModel = context.resolve(new AnnotatedType(Sub2Bean.class));
    assertNotNull(subModel);
    // make sure child points at parent
    assertTrue(subModel instanceof ComposedSchema);
    ComposedSchema cm = (ComposedSchema) subModel;
    assertEquals(cm.getAllOf().get(0).get$ref(), "#/components/schemas/BaseBean2");
    // make sure parent properties are filtered out of subclass
    assertSub1PropertiesValid(cm.getAllOf().get(1).getProperties());
    final Schema baseModel = context.getDefinedModels().get("BaseBean2");
    assertNotNull(baseModel);
    assertBase2PropertiesValid(baseModel.getProperties());
}
Also used : AnnotatedType(io.swagger.v3.core.converter.AnnotatedType) ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) Schema(io.swagger.v3.oas.models.media.Schema) ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) Test(org.testng.annotations.Test) AfterTest(org.testng.annotations.AfterTest)

Example 62 with Schema

use of io.swagger.v3.oas.annotations.media.Schema in project swagger-core by swagger-api.

the class InheritedBeanTest method assertBase2PropertiesValid.

private void assertBase2PropertiesValid(Map<String, Schema> baseProperites) {
    assertEquals(baseProperites.size(), 4);
    for (Map.Entry<String, Schema> entry : baseProperites.entrySet()) {
        final String name = entry.getKey();
        final Schema prop = entry.getValue();
        if ("type".equals(name)) {
            assertEquals(prop.getType(), "string");
        } else if ("a".equals(name)) {
            assertEquals(prop.getType(), "integer");
            assertEquals(prop.getFormat(), "int32");
        } else if ("b".equals(name)) {
            assertEquals(prop.getType(), "string");
        } else if ("d".equals(name)) {
            assertEquals(prop.getType(), "integer");
            assertEquals(prop.getFormat(), "int32");
        }
    }
}
Also used : ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) Schema(io.swagger.v3.oas.models.media.Schema) Map(java.util.Map)

Example 63 with Schema

use of io.swagger.v3.oas.annotations.media.Schema in project swagger-core by swagger-api.

the class InheritedBeanTest method assertUserObjectPropertiesValid.

private void assertUserObjectPropertiesValid(Map<String, Schema> subProperties) {
    assertEquals(subProperties.size(), 2);
    for (Map.Entry<String, Schema> entry : subProperties.entrySet()) {
        final String name = entry.getKey();
        final Schema prop = entry.getValue();
        if ("id".equals(name)) {
            assertEquals(prop.getType(), "string");
        }
        if ("name".equals(name)) {
            assertEquals(prop.getType(), "string");
        }
    }
}
Also used : ComposedSchema(io.swagger.v3.oas.models.media.ComposedSchema) Schema(io.swagger.v3.oas.models.media.Schema) Map(java.util.Map)

Example 64 with Schema

use of io.swagger.v3.oas.annotations.media.Schema in project swagger-core by swagger-api.

the class JodaLocalDateConverterTest method testJavaTimeInstant.

@Test
public void testJavaTimeInstant() {
    final Map<String, Schema> models = ModelConverters.getInstance().read(ModelWithJavaTimeInstant.class);
    assertEquals(models.size(), 1);
    final Schema model = models.get("ModelWithJavaTimeInstant");
    final Schema dateTimeProperty = (Schema) model.getProperties().get("createdAt");
    assertTrue(dateTimeProperty instanceof DateTimeSchema);
}
Also used : DateTimeSchema(io.swagger.v3.oas.models.media.DateTimeSchema) StringSchema(io.swagger.v3.oas.models.media.StringSchema) DateSchema(io.swagger.v3.oas.models.media.DateSchema) DateTimeSchema(io.swagger.v3.oas.models.media.DateTimeSchema) Schema(io.swagger.v3.oas.models.media.Schema) Test(org.testng.annotations.Test)

Example 65 with Schema

use of io.swagger.v3.oas.annotations.media.Schema in project swagger-core by swagger-api.

the class JodaLocalDateConverterTest method testJodaLocalDate.

@Test
public void testJodaLocalDate() {
    final Map<String, Schema> models = ModelConverters.getInstance().read(ModelWithJodaLocalDate.class);
    assertEquals(models.size(), 1);
    final Schema model = models.get("ModelWithJodaLocalDate");
    final Schema dateTimeProperty = (Schema) model.getProperties().get("createdAt");
    assertTrue(dateTimeProperty instanceof DateSchema);
    assertTrue(model.getRequired().contains("createdAt"));
    assertEquals(dateTimeProperty.getDescription(), "creation localDate");
    final Schema nameProperty = (Schema) model.getProperties().get("name");
    assertTrue(nameProperty instanceof StringSchema);
    assertEquals(nameProperty.getDescription(), "name of the model");
}
Also used : StringSchema(io.swagger.v3.oas.models.media.StringSchema) DateSchema(io.swagger.v3.oas.models.media.DateSchema) DateTimeSchema(io.swagger.v3.oas.models.media.DateTimeSchema) Schema(io.swagger.v3.oas.models.media.Schema) StringSchema(io.swagger.v3.oas.models.media.StringSchema) DateSchema(io.swagger.v3.oas.models.media.DateSchema) Test(org.testng.annotations.Test)

Aggregations

Test (org.testng.annotations.Test)257 Schema (io.swagger.v3.oas.models.media.Schema)234 ArraySchema (io.swagger.v3.oas.models.media.ArraySchema)141 StringSchema (io.swagger.v3.oas.models.media.StringSchema)126 IntegerSchema (io.swagger.v3.oas.models.media.IntegerSchema)112 OpenAPI (io.swagger.v3.oas.models.OpenAPI)68 NumberSchema (io.swagger.v3.oas.models.media.NumberSchema)65 MapSchema (io.swagger.v3.oas.models.media.MapSchema)62 ObjectSchema (io.swagger.v3.oas.models.media.ObjectSchema)60 AnnotatedType (io.swagger.v3.core.converter.AnnotatedType)58 ComposedSchema (io.swagger.v3.oas.models.media.ComposedSchema)51 DateTimeSchema (io.swagger.v3.oas.models.media.DateTimeSchema)47 Operation (io.swagger.v3.oas.annotations.Operation)44 DateSchema (io.swagger.v3.oas.models.media.DateSchema)44 ApiResponses (io.swagger.v3.oas.annotations.responses.ApiResponses)42 ProtectedApi (org.gluu.oxtrust.service.filter.ProtectedApi)42 Parameter (io.swagger.v3.oas.models.parameters.Parameter)33 BooleanSchema (io.swagger.v3.oas.models.media.BooleanSchema)32 ModelConverterContextImpl (io.swagger.v3.core.converter.ModelConverterContextImpl)25 Components (io.swagger.v3.oas.models.Components)23