Search in sources :

Example 1 with Xml

use of io.swagger.models.Xml in project swagger-core by swagger-api.

the class XmlModelTest method processModelWithJAXBAnnotations.

@Test(description = "it should process a model with JAXB annotations")
public void processModelWithJAXBAnnotations() {
    final Map<String, Model> schemas = ModelConverters.getInstance().readAll(ModelWithJAXBAnnotations.class);
    assertEquals(schemas.size(), 1);
    final Model model = schemas.get("ModelWithJAXBAnnotations");
    assertNotNull(model);
    assertTrue(model instanceof ModelImpl);
    final Xml rootXml = ((ModelImpl) model).getXml();
    assertNotNull(rootXml);
    assertEquals(rootXml.getName(), "rootName");
    for (Map.Entry<String, Property> entry : model.getProperties().entrySet()) {
        final String name = entry.getKey();
        final Property property = entry.getValue();
        if ("id".equals(name)) {
            final Xml xml = property.getXml();
            assertNotNull(xml);
            assertNull(xml.getName());
            assertTrue(xml.getAttribute());
            assertNull(xml.getWrapped());
        } else if ("name".equals(name)) {
            final Xml xml = property.getXml();
            assertNotNull(xml);
            assertEquals(xml.getName(), "renamed");
            assertNull(xml.getAttribute());
            assertNull(xml.getWrapped());
        } else if (Arrays.asList("list", "forcedElement").contains(name)) {
            assertNull(property.getXml());
        } else if ("wrappedList".equals(name)) {
            final Xml xml = property.getXml();
            assertNotNull(xml);
            assertEquals(xml.getName(), "wrappedListItems");
            assertNull(xml.getAttribute());
            assertTrue(xml.getWrapped());
        } else {
            fail(String.format("Unexpected property: %s", name));
        }
    }
}
Also used : Xml(io.swagger.models.Xml) Model(io.swagger.models.Model) ModelImpl(io.swagger.models.ModelImpl) Map(java.util.Map) Property(io.swagger.models.properties.Property) Test(org.testng.annotations.Test)

Example 2 with Xml

use of io.swagger.models.Xml in project swagger-core by swagger-api.

the class XmlModelTest method processXMLModelAttribute.

@Test(description = "it should process an XML model attribute")
public void processXMLModelAttribute() {
    final Map<String, Model> schemas = ModelConverters.getInstance().readAll(Monster.class);
    final Model model = schemas.get("Monster");
    assertNotNull(model);
    assertTrue(model instanceof ModelImpl);
    Xml xml = ((ModelImpl) model).getXml();
    assertNotNull(xml);
    assertEquals(xml.getName(), "monster");
    final Property property = model.getProperties().get("children");
    assertNotNull(property);
    xml = property.getXml();
    assertTrue(xml.getWrapped());
    assertNull(xml.getName());
}
Also used : Xml(io.swagger.models.Xml) Model(io.swagger.models.Model) ModelImpl(io.swagger.models.ModelImpl) Property(io.swagger.models.properties.Property) Test(org.testng.annotations.Test)

Example 3 with Xml

use of io.swagger.models.Xml in project swagger-core by swagger-api.

the class XmlModelTest method itShouldNotCreateXmlObject.

@Test(description = "it should not create an xml object")
public void itShouldNotCreateXmlObject() {
    final Map<String, Model> schemas = ModelConverters.getInstance().readAll(Address.class);
    final Model model = schemas.get("Address");
    assertNotNull(model);
    assertTrue(model instanceof ModelImpl);
    final Property property = model.getProperties().get("streetNumber");
    final Xml xml = property.getXml();
    assertNull(xml);
}
Also used : Xml(io.swagger.models.Xml) Model(io.swagger.models.Model) ModelImpl(io.swagger.models.ModelImpl) Property(io.swagger.models.properties.Property) Test(org.testng.annotations.Test)

Example 4 with Xml

use of io.swagger.models.Xml in project swagger-core by swagger-api.

the class XMLInfoTest method testReadingXmlAccessorTypeNone.

@Test
public void testReadingXmlAccessorTypeNone() throws Exception {
    final ModelConverter mr = modelResolver();
    final Model model = mr.resolve(XmlDecoratedBeanXmlAccessorNone.class, new ModelConverterContextImpl(mr), null);
    assertTrue(model instanceof ModelImpl);
    final ModelImpl impl = (ModelImpl) model;
    final Xml xml = impl.getXml();
    assertNotNull(xml);
    assertEquals(xml.getName(), "xmlDecoratedBean");
    final Property property = impl.getProperties().get("a");
    assertNotNull(property);
    assertNull(impl.getProperties().get("b"));
}
Also used : Xml(io.swagger.models.Xml) Model(io.swagger.models.Model) ApiModel(io.swagger.annotations.ApiModel) ModelImpl(io.swagger.models.ModelImpl) JsonProperty(com.fasterxml.jackson.annotation.JsonProperty) ArrayProperty(io.swagger.models.properties.ArrayProperty) Property(io.swagger.models.properties.Property) ModelConverter(io.swagger.converter.ModelConverter) ModelConverterContextImpl(io.swagger.converter.ModelConverterContextImpl) Test(org.testng.annotations.Test)

Example 5 with Xml

use of io.swagger.models.Xml in project swagger-core by swagger-api.

the class XMLInfoTest method testReadingXmlAccessorTypePublic.

@Test
public void testReadingXmlAccessorTypePublic() throws Exception {
    final ModelConverter mr = modelResolver();
    final Model model = mr.resolve(XmlDecoratedBeanXmlAccessorPublic.class, new ModelConverterContextImpl(mr), null);
    assertTrue(model instanceof ModelImpl);
    final ModelImpl impl = (ModelImpl) model;
    final Xml xml = impl.getXml();
    assertNotNull(xml);
    assertEquals(xml.getName(), "xmlDecoratedBean");
    final Property propertyA = impl.getProperties().get("a");
    assertNotNull(propertyA);
    Property propertyB = impl.getProperties().get("b");
    assertNotNull(propertyB);
}
Also used : Xml(io.swagger.models.Xml) Model(io.swagger.models.Model) ApiModel(io.swagger.annotations.ApiModel) ModelImpl(io.swagger.models.ModelImpl) JsonProperty(com.fasterxml.jackson.annotation.JsonProperty) ArrayProperty(io.swagger.models.properties.ArrayProperty) Property(io.swagger.models.properties.Property) ModelConverter(io.swagger.converter.ModelConverter) ModelConverterContextImpl(io.swagger.converter.ModelConverterContextImpl) Test(org.testng.annotations.Test)

Aggregations

Xml (io.swagger.models.Xml)13 Model (io.swagger.models.Model)8 ModelImpl (io.swagger.models.ModelImpl)8 Property (io.swagger.models.properties.Property)7 Test (org.testng.annotations.Test)7 ApiModel (io.swagger.annotations.ApiModel)5 ArrayProperty (io.swagger.models.properties.ArrayProperty)5 JsonProperty (com.fasterxml.jackson.annotation.JsonProperty)4 ModelConverter (io.swagger.converter.ModelConverter)3 ModelConverterContextImpl (io.swagger.converter.ModelConverterContextImpl)3 JavaType (com.fasterxml.jackson.databind.JavaType)2 ApiModelProperty (io.swagger.annotations.ApiModelProperty)2 ComposedModel (io.swagger.models.ComposedModel)2 RefModel (io.swagger.models.RefModel)2 AbstractNumericProperty (io.swagger.models.properties.AbstractNumericProperty)2 IntegerProperty (io.swagger.models.properties.IntegerProperty)2 MapProperty (io.swagger.models.properties.MapProperty)2 RefProperty (io.swagger.models.properties.RefProperty)2 StringProperty (io.swagger.models.properties.StringProperty)2 UUIDProperty (io.swagger.models.properties.UUIDProperty)2