public RamlReport validate() { checker.parameters(raml.getBaseUriParameters(), BASE_URI); checker.description(raml.getDocumentation()); checker.description(raml.getBaseUriParameters(), BASE_URI); for (final Resource resource : raml.getResources().values()) { resource(resource); } return checker.getReport(); }
@Test public void docTemplate() { String mountPoint = "/foo"; Utils.addTemplateValue(DocumentationRestApi.ID_TEMPLATE, "fooID"); Utils.addTemplateValue(DocumentationRestApi.MOUNT_TEMPLATE, mountPoint); processResource("ApiLevelTemplateDocs.java", "raml", "all"); Map.Entry<String, String> entry = output.entrySet().iterator().next(); entry.getKey(); AssertJUnit.assertTrue("expected file named AuthorizationScopes.raml", entry.getKey().endsWith("ApiLevelTemplateDocs-fooID.raml")); Raml raml = new RamlDocumentBuilder().build(entry.getValue(), "http://example.com"); AssertJUnit.assertNotNull("RAML not parseable", raml); List<DocumentationItem> documentation = raml.getDocumentation(); AssertJUnit.assertEquals("RAML baseUri is incorrect", mountPoint, raml.getBaseUri()); Resource resource = raml.getResource(mountPoint); AssertJUnit.assertNotNull("Cannot find resource related to:" + mountPoint, resource); }
@Test public void apiLevelDocs() { processResource("ApiLevelDocs.java", "raml", "all"); AssertJUnit.assertEquals("ApiLevelDocs should have produced exactly 1 results document", 1, output.size()); Map.Entry<String,String> entry = output.entrySet().iterator().next(); AssertJUnit.assertTrue("expected file named ApiLevelDocs-UltimateApi.raml", entry.getKey().endsWith("ApiLevelDocs-UltimateApi.raml")); Raml raml = new RamlDocumentBuilder().build(entry.getValue(), "http://example.com"); AssertJUnit.assertNotNull("RAML not parseable", raml); AssertJUnit.assertEquals("RAML title is incorrect", "The Ultimate REST API", raml.getTitle()); AssertJUnit.assertEquals("RAML version is incorrect", "v1", raml.getVersion()); AssertJUnit.assertEquals("RAML baseUri is incorrect", "/ultimate/api/v1", raml.getBaseUri()); List<DocumentationItem> documentation = raml.getDocumentation(); AssertJUnit.assertNotNull("RAML has no documentation items", documentation); AssertJUnit.assertEquals("RAML has too many documentation items", 1, documentation.size()); AssertJUnit.assertEquals("RAML documentation item has wrong title", "Overview", documentation.get(0).getTitle()); AssertJUnit.assertEquals("RAML documentation item has wrong content", "Some documentation of the API itself.", documentation.get(0).getContent().trim()); }
protected API transformAPI(final Context context, final org.raml.model.Raml source, final org.raml.model.Resource sourceResourceRoot, final JSONSchemaStore store, final APINamespace namespace, final boolean async) { final APIBuilder apiBuilder = API.builder(); apiBuilder.namespace(namespace); apiBuilder.name(source.getTitle()); apiBuilder.qualifier(transformAPIName(sourceResourceRoot)); apiBuilder.path(transformAPIPath(source, sourceResourceRoot)); apiBuilder.baseUri(source.getBaseUri()); apiBuilder.async(async); final List<DocumentationItem> items = source.getDocumentation(); if (items != null && !items.isEmpty()) { apiBuilder.description(source.getDocumentation().get(0).getContent()); } final TransformationContext ctx = new TransformationContext(namespace, source, store); apiBuilder.parameterGroups(traitsTransformer.transform(context, source.getTraits(), ctx)); apiBuilder.types(dtosTransformer.transform(context, ctx)); if (!context.isCompatibilityModeDisabled()) { apiBuilder.types(enumerationsTransformer.transform(context, ctx)); } apiBuilder.resource(singleResourceTransformer.transform(context, sourceResourceRoot, ctx)); return apiBuilder.build(); }
AssertJUnit.assertEquals("RAML version is incorrect", "v1", raml.getVersion()); AssertJUnit.assertEquals("RAML baseUri is incorrect", "/restapi1/api/v1", raml.getBaseUri()); List<DocumentationItem> documentation = raml.getDocumentation(); AssertJUnit.assertNotNull("RAML has no documentation items", documentation); AssertJUnit.assertEquals("RAML has too many documentation items", 1, documentation.size()); AssertJUnit.assertEquals("RAML version is incorrect", "v1", raml.getVersion()); AssertJUnit.assertEquals("RAML baseUri is incorrect", "/restapi2/api/v1", raml.getBaseUri()); documentation = raml.getDocumentation(); AssertJUnit.assertNotNull("RAML has no documentation items", documentation); AssertJUnit.assertEquals("RAML has too many documentation items", 1, documentation.size());
Raml raml = new RamlDocumentBuilder().build(entry.getValue(), "http://example.com"); AssertJUnit.assertNotNull("RAML not parseable", raml); List<DocumentationItem> documentation = raml.getDocumentation(); Resource resource = raml.getResource("/default/api/v1/default"); AssertJUnit.assertNotNull("RAML has no default controller", resource);