Search in sources :

Example 21 with Info

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);
}
Also used : Swagger(io.swagger.models.Swagger) Reader(io.swagger.jaxrs.Reader) Info(io.swagger.models.Info) HashSet(java.util.HashSet) Test(org.testng.annotations.Test)

Example 22 with Info

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");
}
Also used : Swagger(io.swagger.models.Swagger) Info(io.swagger.models.Info)

Example 23 with Info

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;
}
Also used : Info(io.swagger.models.Info)

Example 24 with Info

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);
}
Also used : Info(io.swagger.models.Info)

Example 25 with 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);
}
Also used : Info(io.swagger.models.Info)

Aggregations

Info (io.swagger.models.Info)39 Swagger (io.swagger.models.Swagger)26 Contact (io.swagger.models.Contact)12 Operation (io.swagger.models.Operation)10 Path (io.swagger.models.Path)9 Test (org.testng.annotations.Test)8 License (io.swagger.models.License)7 QueryParameter (io.swagger.models.parameters.QueryParameter)7 ArrayList (java.util.ArrayList)7 HashMap (java.util.HashMap)7 ApiKeyAuthDefinition (io.swagger.models.auth.ApiKeyAuthDefinition)5 PathParameter (io.swagger.models.parameters.PathParameter)5 Model (io.swagger.models.Model)4 OAuth2Definition (io.swagger.models.auth.OAuth2Definition)4 Parameter (io.swagger.models.parameters.Parameter)4 ConcurrentHashMap (java.util.concurrent.ConcurrentHashMap)4 UriTemplate (org.wso2.carbon.apimgt.core.models.UriTemplate)4 ServiceMethodInfo (org.wso2.msf4j.ServiceMethodInfo)4 Response (io.swagger.models.Response)3 Scheme (io.swagger.models.Scheme)3