import io.swagger.models.Swagger; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
@Test
public void testSwaggerDefinition() {
SwaggerGenerator swaggerGenerator =
new SwaggerGeneratorForTest(context, SwaggerAnnotation.class);
swaggerGenerator.generate();
Swagger swagger = swaggerGenerator.getSwagger();
Assert.assertEquals(SwaggerAnnotation.class.getName(),
swagger.getInfo().getVendorExtensions().get(SwaggerConst.EXT_JAVA_INTF));
Assert.assertEquals("2.0", swagger.getSwagger());
Assert.assertEquals("/base", swagger.getBasePath());
Assert.assertEquals("host", swagger.getHost());
Assert.assertEquals(Arrays.asList("json", "xml"), swagger.getConsumes());
Assert.assertEquals(Arrays.asList("abc", "123"), swagger.getProduces());
Assert.assertEquals(1, swagger.getTags().size());
io.swagger.models.Tag tagA = swagger.getTags().get(0);
Assert.assertEquals("tagA", tagA.getName());
Assert.assertEquals("desc of tagA", tagA.getDescription());
Assert.assertEquals("tagA ext docs", tagA.getExternalDocs().getDescription());
Assert.assertEquals("url of tagA ext docs", tagA.getExternalDocs().getUrl());
Assert.assertEquals(1, tagA.getVendorExtensions().size());
Map tagValue = (Map) tagA.getVendorExtensions().get("x-tagA");
Assert.assertEquals("value of tagAExt", tagValue.get("x-tagAExt"));
io.swagger.models.Info info = swagger.getInfo();
Assert.assertEquals("title of SwaggerAnnotation", info.getTitle());
Assert.assertEquals("0.1", info.getVersion());
Assert.assertEquals("termsOfService", info.getTermsOfService());
Assert.assertEquals("description of info for SwaggerAnnotation", info.getDescription());
Assert.assertEquals("contact", info.getContact().getName());
Assert.assertEquals("[email protected]", info.getContact().getEmail());
Assert.assertEquals("http://contact", info.getContact().getUrl());
Assert.assertEquals("license ", info.getLicense().getName());
Assert.assertEquals("http://license", info.getLicense().getUrl());
Assert.assertEquals(2, info.getVendorExtensions().size());
Map infoValue = (Map) info.getVendorExtensions().get("x-info");
Assert.assertEquals("value of infoExt", infoValue.get("x-infoExt"));
Assert.assertEquals("SwaggerAnnotation ext docs", swagger.getExternalDocs().getDescription());
Assert.assertEquals("url of SwaggerAnnotation ext docs", swagger.getExternalDocs().getUrl());
}