return target;
}
private void verifyFullDump(Raml source, String dump)
{
Raml target = verifyDump(source, dump);
//*********** URI PARAMETERS ***********
UriParameter srcHost = source.getBaseUriParameters().get("host");
UriParameter tgtHost = target.getBaseUriParameters().get("host");
assertThat(tgtHost.getDisplayName(), is(srcHost.getDisplayName()));
assertThat(tgtHost.getDescription(), is(srcHost.getDescription()));
assertThat(tgtHost.getType(), is(srcHost.getType()));
assertThat(tgtHost.getMinLength(), is(srcHost.getMinLength()));
assertThat(tgtHost.getMaxLength(), is(srcHost.getMaxLength()));
assertThat(tgtHost.getPattern(), is(srcHost.getPattern()));
UriParameter srcPort = source.getBaseUriParameters().get("port");
UriParameter tgtPort = target.getBaseUriParameters().get("port");
assertThat(tgtPort.getType(), is(srcPort.getType()));
assertThat(tgtPort.getMinimum(), is(srcPort.getMinimum()));
assertThat(tgtPort.getMaximum(), is(srcPort.getMaximum()));
UriParameter srcPath = source.getBaseUriParameters().get("path");
UriParameter tgtPath = target.getBaseUriParameters().get("path");
assertThat(tgtPath.getType(), is(srcPath.getType()));
assertThat(tgtPath.getEnumeration().size(), is(srcPath.getEnumeration().size()));
assertThat(tgtPath.getEnumeration().get(0), is(srcPath.getEnumeration().get(0)));
assertThat(tgtPath.getEnumeration().get(1), is(srcPath.getEnumeration().get(1)));
assertThat(tgtPath.getEnumeration().get(2), is(srcPath.getEnumeration().get(2)));
//*********** DOCUMENTATION ***********
List<DocumentationItem> srcDoc = source.getDocumentation();
List<DocumentationItem> tgtDoc = target.getDocumentation();
assertThat(tgtDoc.get(0).getTitle(), is(srcDoc.get(0).getTitle()));
assertThat(tgtDoc.get(0).getContent(), is(srcDoc.get(0).getContent()));
//*********** GLOBAL SCHEMAS ***********
List<Map<String, String>> srcSchemas = source.getSchemas();
List<Map<String, String>> tgtSchemas = target.getSchemas();
assertThat(tgtSchemas.size(), is(srcSchemas.size()));
assertThat(tgtSchemas.get(0).get("league-json"), is(srcSchemas.get(0).get("league-json")));
assertThat(tgtSchemas.get(1).get("league-xml"), is(srcSchemas.get(1).get("league-xml")));
//*********** FORM PARAMETERS ***********
Map<String, List<FormParameter>> srcFormParams = source.getResource("/media").getAction(GET).getBody().get("multipart/form-data").getFormParameters();
Map<String, List<FormParameter>> tgtFormParams = target.getResource("/media").getAction(GET).getBody().get("multipart/form-data").getFormParameters();
assertThat(srcFormParams.size(), is(tgtFormParams.size()));
assertThat(srcFormParams.get("form-1").size(), is(tgtFormParams.get("form-1").size()));
assertThat(srcFormParams.get("form-1").get(0).getDisplayName(), is(tgtFormParams.get("form-1").get(0).getDisplayName()));
assertThat(srcFormParams.get("form-2").size(), is(tgtFormParams.get("form-2").size()));
assertThat(srcFormParams.get("form-2").get(0).getDisplayName(), is(tgtFormParams.get("form-2").get(0).getDisplayName()));
//*********** RESOURCE TYPES ************
assertThat(target.getResourceTypes().size(), is(source.getResourceTypes().size()));
assertThat(target.getResourceTypes().get(0).get("basic").getDisplayName(),
is(source.getResourceTypes().get(0).get("basic").getDisplayName()));
assertThat(target.getResourceTypes().get(1).get("complex").getDisplayName(),
is(source.getResourceTypes().get(1).get("complex").getDisplayName()));
assertThat(target.getResource("/").getType(), is(source.getResource("/").getType()));
assertThat(target.getResource("/media").getType(), is(source.getResource("/media").getType()));
//*********** TRAITS ************
assertThat(target.getTraits().size(), is(source.getTraits().size()));
assertThat(target.getTraits().get(0).get("simple").getDisplayName(),
is(source.getTraits().get(0).get("simple").getDisplayName()));
assertThat(target.getTraits().get(1).get("knotty").getDisplayName(),
is(source.getTraits().get(1).get("knotty").getDisplayName()));
assertThat(target.getResource("/").getAction(HEAD).getIs(), is(source.getResource("/").getAction(HEAD).getIs()));
//*********** SECURITY SCHEMES ************
assertThat(target.getSecuritySchemes().size(), is(source.getSecuritySchemes().size()));
SecurityScheme tOauth2 = target.getSecuritySchemes().get(0).get("oauth_2_0");
SecurityScheme sOauth2 = source.getSecuritySchemes().get(0).get("oauth_2_0");
assertThat(tOauth2.getDescription(), is(sOauth2.getDescription()));
assertThat(tOauth2.getDescribedBy().getHeaders().size(), is(sOauth2.getDescribedBy().getHeaders().size()));
assertThat(tOauth2.getDescribedBy().getHeaders().get("Authorization").getDescription(),
is(sOauth2.getDescribedBy().getHeaders().get("Authorization").getDescription()));
assertThat(tOauth2.getDescribedBy().getQueryParameters().size(), is(sOauth2.getDescribedBy().getQueryParameters().size()));
assertThat(tOauth2.getDescribedBy().getQueryParameters().get("access_token").getDescription(),
is(sOauth2.getDescribedBy().getQueryParameters().get("access_token").getDescription()));
assertThat(tOauth2.getDescribedBy().getResponses().size(), is(sOauth2.getDescribedBy().getResponses().size()));
assertThat(tOauth2.getDescribedBy().getResponses().get("401").getDescription(),
is(sOauth2.getDescribedBy().getResponses().get("401").getDescription()));
assertThat(tOauth2.getSettings().getAccessTokenUri(), is(sOauth2.getSettings().getAccessTokenUri()));
assertThat(tOauth2.getSettings().getAccessTokenUri(), is("https://api.dropbox.com/1/oauth2/token"));
assertThat(tOauth2.getSettings().getAuthorizationUri(), is(sOauth2.getSettings().getAuthorizationUri()));
assertThat(sOauth2.getSettings().getAuthorizationUri(), is("https://www.dropbox.com/1/oauth2/authorize"));
assertThat(tOauth2.getSettings().getScopes().size(), is(sOauth2.getSettings().getScopes().size()));
assertThat(tOauth2.getSettings().getScopes().size(), is(1));
assertThat(tOauth2.getSettings().getAuthorizationGrants().size(), is(sOauth2.getSettings().getAuthorizationGrants().size()));
assertThat(tOauth2.getSettings().getAuthorizationGrants().size(), is(2));
assertThat(target.getResource("/").getSecuredBy().size(), is(source.getResource("/").getSecuredBy().size()));
assertThat(target.getResource("/").getSecuredBy().get(0).getName(), is(source.getResource("/").getSecuredBy().get(0).getName()));
assertThat(target.getResource("/").getSecuredBy().get(0).getParameters().size(),
is(source.getResource("/").getSecuredBy().get(0).getParameters().size()));
assertThat(target.getResource("/").getSecuredBy().get(0).getParameters().get("scopes").get(0),
is(source.getResource("/").getSecuredBy().get(0).getParameters().get("scopes").get(0)));
assertThat(target.getResource("/").getSecuredBy().get(1).getName(), is(source.getResource("/").getSecuredBy().get(1).getName()));
assertThat(target.getResource("/").getSecuredBy().get(2).getName(), is(source.getResource("/").getSecuredBy().get(2).getName()));
//*********** PROTOCOLS ************
assertThat(target.getProtocols().size(), is(source.getProtocols().size()));
assertThat(target.getProtocols().get(0), is(source.getProtocols().get(0)));
assertThat(target.getProtocols().get(1), is(source.getProtocols().get(1)));
}