Ticket2884Test.java
package io.swagger.v3.core.resolving;
import io.swagger.v3.core.converter.AnnotatedType;
import io.swagger.v3.core.converter.ModelConverterContextImpl;
import io.swagger.v3.core.converter.ModelConverters;
import io.swagger.v3.core.converter.ResolvedSchema;
import io.swagger.v3.core.jackson.ModelResolver;
import io.swagger.v3.core.matchers.SerializationMatchers;
import io.swagger.v3.core.resolving.resources.Ticket2884Model;
import io.swagger.v3.core.resolving.resources.Ticket2884ModelClass;
import io.swagger.v3.oas.models.media.Schema;
import org.testng.annotations.Test;
import static org.testng.Assert.assertNotNull;
import static org.testng.Assert.assertTrue;
public class Ticket2884Test extends SwaggerTestBase {
@Test
public void test2884() {
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");
}
@Test
public void test2884_null() {
ResolvedSchema schema = ModelConverters.getInstance().readAllAsResolvedSchema(new AnnotatedType(Ticket2884ModelClass.class).resolveAsRef(true));
Schema o = (Schema)schema.schema.getProperties().get(Ticket2884ModelClass.class.getSimpleName());
assertNotNull(o);
assertTrue(o.get$ref().contains(Ticket2884ModelClass.class.getSimpleName()));
SerializationMatchers.assertEqualsToYaml(schema.schema.getProperties(), "Ticket2884ModelClass:\n" +
" $ref: \"#/components/schemas/Ticket2884ModelClass\"");
}
}