use of io.swagger.models.Info in project swagger-core by swagger-api.
the class ConfigAndExtensionScannerTest method scanResourceWithExtensions.
@Test(description = "scan a resource with extensions")
public void scanResourceWithExtensions() {
Set<Class<?>> classes = new HashSet<Class<?>>();
classes.add(ResourceWithConfigAndExtensions.class);
Swagger swagger = new Reader(new Swagger()).read(classes);
assertEquals(swagger.getPaths().size(), 1);
Info info = swagger.getInfo();
assertNotNull(info);
assertEquals(info.getDescription(), "Custom description");
assertEquals(info.getTermsOfService(), "do-what-you-want");
assertEquals(info.getTitle(), "TheAwesomeApi");
assertEquals(info.getVersion(), "V1.2.3");
assertEquals(info.getContact().getName(), "Sponge-Bob");
assertEquals(info.getContact().getEmail(), "sponge-bob@swagger.io");
assertEquals(info.getContact().getUrl(), "http://swagger.io");
assertEquals(info.getLicense().getName(), "Apache 2.0");
assertEquals(info.getLicense().getUrl(), "http://www.apache.org");
assertEquals(swagger.getConsumes().size(), 2);
assertTrue(swagger.getConsumes().contains("application/json"));
assertTrue(swagger.getConsumes().contains("application/xml"));
assertEquals(swagger.getProduces().size(), 2);
swagger.getProduces().contains("application/json");
swagger.getProduces().contains("application/xml");
assertEquals(swagger.getExternalDocs().getDescription(), "test");
assertEquals(swagger.getExternalDocs().getUrl(), "http://swagger.io");
assertEquals(swagger.getSchemes().size(), 2);
assertTrue(swagger.getSchemes().contains(Scheme.HTTP));
assertTrue(swagger.getSchemes().contains(Scheme.HTTPS));
assertEquals(swagger.getTags().size(), 7);
assertEquals(swagger.getTags().get(0).getName(), "Tag-added-before-read");
assertEquals(swagger.getTags().get(1).getName(), "mytag");
assertEquals(swagger.getTags().get(1).getDescription(), "my tag");
assertEquals(swagger.getTags().get(2).getName(), "anothertag");
assertEquals(swagger.getTags().get(2).getDescription(), "another tag");
assertEquals(swagger.getTags().get(2).getExternalDocs().getDescription(), "test");
assertEquals(swagger.getTags().get(2).getExternalDocs().getUrl(), "http://swagger.io");
assertEquals(swagger.getTags().get(3).getName(), "tagwithextensions");
assertEquals(swagger.getTags().get(3).getDescription(), "my tag");
Map<String, Object> extensions = swagger.getTags().get(3).getVendorExtensions();
assertEquals(extensions.size(), 1);
assertEquals(extensions.get("x-test"), "value");
assertEquals(swagger.getTags().get(4).getName(), "externalinfo");
assertEquals(swagger.getTags().get(5).getName(), "testingtag");
assertEquals(swagger.getTags().get(6).getName(), "Tag-added-after-read");
extensions = swagger.getInfo().getVendorExtensions();
assertEquals(extensions.size(), 3);
assertEquals(extensions.get("x-test1"), "value1");
assertEquals(extensions.get("x-test2"), "value2");
extensions = (Map<String, Object>) extensions.get("x-test");
assertEquals(extensions.get("test1"), "value1");
assertEquals(extensions.get("test2"), "value2");
extensions = swagger.getPath("/who/cares").getOperations().get(0).getVendorExtensions();
assertEquals(extensions.get("x-test"), "value");
String json = Json.pretty(swagger);
assertNotEquals(json.indexOf("\"x-test\" : {"), -1);
assertNotEquals(json.indexOf("\"x-test1\" : \"value1\""), -1);
assertNotEquals(json.indexOf("\"x-test2\" : \"value2\""), -1);
}
use of io.swagger.models.Info in project swagger-core by swagger-api.
the class SwaggerContextServiceTest method stubWithContextSwaggerAttribute.
private void stubWithContextSwaggerAttribute() {
Swagger swagger = new Swagger();
Info info = new Info().title("Test Title");
swagger.setInfo(info);
when(servletContext1.getAttribute("swagger")).thenReturn(swagger);
when(servletConfig1.getServletContext()).thenReturn(servletContext1);
when(servletConfig2.getServletContext()).thenReturn(servletContext2);
when(servletConfig1.getInitParameter(CONTEXT_ID_KEY)).thenReturn("test.1");
when(servletConfig2.getInitParameter(CONTEXT_ID_KEY)).thenReturn("test.2");
}
use of io.swagger.models.Info in project swagger-core by swagger-api.
the class WebXMLReader method configure.
@Override
public Swagger configure(Swagger swagger) {
if (swagger == null) {
return null;
}
if (StringUtils.isNotBlank(basePath)) {
swagger.basePath(basePath);
}
if (StringUtils.isNotBlank(host)) {
swagger.host(host);
}
if (scheme != null) {
swagger.scheme(scheme);
}
Info info = swagger.getInfo();
if (info == null) {
info = new Info();
swagger.info(info);
}
if (StringUtils.isNotBlank(title)) {
info.title(title);
}
if (StringUtils.isNotBlank(apiVersion)) {
info.version(apiVersion);
}
return swagger;
}
use of io.swagger.models.Info in project java-chassis by ServiceComb.
the class SwaggerDefinitionProcessor method convertInfo.
private void convertInfo(io.swagger.annotations.Info infoAnnotation, Swagger swagger) {
if (infoAnnotation == null) {
return;
}
Info info = new Info();
info.setTitle(infoAnnotation.title());
info.setVersion(infoAnnotation.version());
info.setDescription(infoAnnotation.description());
info.setTermsOfService(infoAnnotation.termsOfService());
info.setContact(convertContact(infoAnnotation.contact()));
info.setLicense(convertLicense(infoAnnotation.license()));
info.getVendorExtensions().putAll(BaseReaderUtils.parseExtensions(infoAnnotation.extensions()));
swagger.setInfo(info);
}
use of io.swagger.models.Info in project java-chassis by ServiceComb.
the class SwaggerGenerator method correctInfo.
private void correctInfo() {
Info info = swagger.getInfo();
if (info == null) {
info = new Info();
swagger.setInfo(info);
}
if (StringUtils.isEmpty(info.getTitle())) {
info.setTitle("swagger definition for " + cls.getName());
}
if (StringUtils.isEmpty(info.getVersion())) {
info.setVersion("1.0.0");
}
setJavaInterface(info, cls);
}
Aggregations