Examples of ApiDoc


Examples of org.jsondoc.core.pojo.ApiDoc

 
  @Test
  public void testApiDoc() {
    Set<Class<?>> classes = new HashSet<Class<?>>();
    classes.add(TestController.class);
    ApiDoc apiDoc = JSONDocUtils.getApiDocs(classes).iterator().next();
    Assert.assertEquals("test-controller", apiDoc.getName());
    Assert.assertEquals("a-test-controller", apiDoc.getDescription());
    Assert.assertEquals("1.0", apiDoc.getSupportedversions().getSince());
    Assert.assertEquals("2.12", apiDoc.getSupportedversions().getUntil());
    Assert.assertEquals(ApiAuthType.NONE.name(), apiDoc.getAuth().getType());
    Assert.assertEquals(JSONDocUtils.ANONYMOUS, apiDoc.getAuth().getRoles().get(0));

    for (ApiMethodDoc apiMethodDoc : apiDoc.getMethods()) {

      if (apiMethodDoc.getPath().equals("/name")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("string", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("string", apiMethodDoc.getBodyobject().getObject());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("name")) {
            Assert.assertEquals("string", apiParamDoc.getType());
          }
        }
      }

      if (apiMethodDoc.getPath().equals("/age")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("integer", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("integer", apiMethodDoc.getBodyobject().getObject());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("age")) {
            Assert.assertEquals("integer", apiParamDoc.getType());
          }
        }
      }

      if (apiMethodDoc.getPath().equals("/avg")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("long", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("long", apiMethodDoc.getBodyobject().getObject());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("avg")) {
            Assert.assertEquals("long", apiParamDoc.getType());
          }
        }
      }

      if (apiMethodDoc.getPath().equals("/map")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("map", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("string", apiMethodDoc.getResponse().getMapKeyObject());
        Assert.assertEquals("integer", apiMethodDoc.getResponse().getMapValueObject());
        Assert.assertEquals("map", apiMethodDoc.getBodyobject().getObject());
        Assert.assertEquals("string", apiMethodDoc.getBodyobject().getMapKeyObject());
        Assert.assertEquals("integer", apiMethodDoc.getBodyobject().getMapValueObject());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("map")) {
            Assert.assertEquals("map", apiParamDoc.getType());
            //TODO there is no check on the map key and value objects
          }
        }
      }

      if (apiMethodDoc.getPath().equals("/parametrizedList")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("string", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("true", apiMethodDoc.getResponse().getMultiple());
        Assert.assertEquals("string", apiMethodDoc.getBodyobject().getObject());
        Assert.assertEquals("true", apiMethodDoc.getBodyobject().getMultiple());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("parametrizedList")) {
            Assert.assertEquals("string", apiParamDoc.getType());
          }
        }
       
      }

      if (apiMethodDoc.getPath().equals("/unparametrizedList")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("undefined", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("true", apiMethodDoc.getResponse().getMultiple());
        Assert.assertEquals("undefined", apiMethodDoc.getBodyobject().getObject());
        Assert.assertEquals("true", apiMethodDoc.getBodyobject().getMultiple());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("unparametrizedList")) {
            Assert.assertEquals("undefined", apiParamDoc.getType());
          }
        }
      }

      if (apiMethodDoc.getPath().equals("/wildcardParametrizedList")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("wildcard", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("true", apiMethodDoc.getResponse().getMultiple());
        Assert.assertEquals("wildcard", apiMethodDoc.getBodyobject().getObject());
        Assert.assertEquals("true", apiMethodDoc.getBodyobject().getMultiple());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("wildcardParametrizedList")) {
            Assert.assertEquals("wildcard", apiParamDoc.getType());
          }
        }
      }

      if (apiMethodDoc.getPath().equals("/LongArray")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("long", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("true", apiMethodDoc.getResponse().getMultiple());
        Assert.assertEquals("long", apiMethodDoc.getBodyobject().getObject());
        Assert.assertEquals("true", apiMethodDoc.getBodyobject().getMultiple());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("LongArray")) {
            Assert.assertEquals("long", apiParamDoc.getType());
          }
        }
      }

      if (apiMethodDoc.getPath().equals("/longArray")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("long", apiMethodDoc.getResponse().getObject());
        Assert.assertEquals("true", apiMethodDoc.getResponse().getMultiple());
        Assert.assertEquals("long", apiMethodDoc.getBodyobject().getObject());
        Assert.assertEquals("true", apiMethodDoc.getBodyobject().getMultiple());
        for (ApiParamDoc apiParamDoc : apiMethodDoc.getPathparameters()) {
          if(apiParamDoc.getName().equals("longArray")) {
            Assert.assertEquals("long", apiParamDoc.getType());
          }
        }
      }
     
      if (apiMethodDoc.getPath().equals("/version")) {
        Assert.assertEquals(ApiVerb.GET, apiMethodDoc.getVerb());
        Assert.assertEquals("1.0", apiMethodDoc.getSupportedversions().getSince());
        Assert.assertEquals("2.12", apiMethodDoc.getSupportedversions().getUntil());
      }

    }

    classes.clear();
    classes.add(TestControllerWithBasicAuth.class);
    apiDoc = JSONDocUtils.getApiDocs(classes).iterator().next();
    Assert.assertEquals("test-controller-with-basic-auth", apiDoc.getName());
    Assert.assertEquals(ApiAuthType.BASIC_AUTH.name(), apiDoc.getAuth().getType());
    Assert.assertEquals("ROLE_USER", apiDoc.getAuth().getRoles().get(0));
    Assert.assertEquals("ROLE_ADMIN", apiDoc.getAuth().getRoles().get(1));
    Assert.assertTrue(apiDoc.getAuth().getTestusers().size() > 0);
   
    for (ApiMethodDoc apiMethodDoc : apiDoc.getMethods()) {
      if (apiMethodDoc.getPath().equals("/basicAuth")) {
        Assert.assertEquals(ApiAuthType.BASIC_AUTH.name(), apiMethodDoc.getAuth().getType());
        Assert.assertEquals("ROLE_USER", apiMethodDoc.getAuth().getRoles().get(0));
        Assert.assertTrue(apiMethodDoc.getAuth().getTestusers().size() > 0);
      }
     
      if (apiMethodDoc.getPath().equals("/noAuth")) {
        Assert.assertEquals(ApiAuthType.NONE.name(), apiMethodDoc.getAuth().getType());
        Assert.assertEquals(JSONDocUtils.ANONYMOUS, apiMethodDoc.getAuth().getRoles().get(0));
      }
     
      if (apiMethodDoc.getPath().equals("/undefinedAuthWithAuthOnClass")) {
        Assert.assertEquals(ApiAuthType.BASIC_AUTH.name(), apiMethodDoc.getAuth().getType());
        Assert.assertEquals("ROLE_USER", apiMethodDoc.getAuth().getRoles().get(0));
        Assert.assertEquals("ROLE_ADMIN", apiMethodDoc.getAuth().getRoles().get(1));
      }
     
    }
   
    classes.clear();
    classes.add(TestControllerWithNoAuthAnnotation.class);
    apiDoc = JSONDocUtils.getApiDocs(classes).iterator().next();
    Assert.assertEquals("test-controller-with-no-auth-annotation", apiDoc.getName());
    Assert.assertNull(apiDoc.getAuth());
   
    for (ApiMethodDoc apiMethodDoc : apiDoc.getMethods()) {
      if (apiMethodDoc.getPath().equals("/basicAuth")) {
        Assert.assertEquals(ApiAuthType.BASIC_AUTH.name(), apiMethodDoc.getAuth().getType());
        Assert.assertEquals("ROLE_USER", apiMethodDoc.getAuth().getRoles().get(0));
        Assert.assertTrue(apiMethodDoc.getAuth().getTestusers().size() > 0);
      }
View Full Code Here

Examples of org.jsondoc.core.pojo.ApiDoc

 
  public static Set<ApiDoc> getApiDocs(Set<Class<?>> classes) {
    Set<ApiDoc> apiDocs = new TreeSet<ApiDoc>();
    for (Class<?> controller : classes) {
      log.debug("Getting JSONDoc for class: " + controller.getName());
      ApiDoc apiDoc = ApiDoc.buildFromAnnotation(controller.getAnnotation(Api.class));
      if(controller.isAnnotationPresent(ApiVersion.class)) {
        apiDoc.setSupportedversions(ApiVersionDoc.buildFromAnnotation(controller.getAnnotation(ApiVersion.class)));
      }
     
      apiDoc.setAuth(getApiAuthDocForController(controller));
      apiDoc.setMethods(getApiMethodDocs(controller));
      apiDocs.add(apiDoc);
    }
    return apiDocs;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.