Initiate initializr documentation

This commit commit adds restdocs and stub generators and initiate
a reference guide for Initializr.

Most of the controller tests now use MockMvc via a custom version
of the MockMvcClientHttpRequestFactory (from spring-test). The
snippet names are auto-generated in the form

<HttpMethod>/<path>[/queries(/<name-value)*][/headers](/name-value)*]

when there is a comma-separated value in a header it is
abbreviated as <first-value>.MORE.

Wiremock stubs are generated in the same form under
snippets/stubs (with ".json" as the
file extension).

The controller tests that stayed as full stack use a different
base class AbstractFullStackInitializrIntegrationTests.

A long JSON body can be broken out into separate snippets
for each field (or rather a list of fields supplied by the
user). This feature was already used with hard-coded snippets
in the wiki.

See gh-295
This commit is contained in:
Dave Syer
2016-09-26 16:13:35 +01:00
committed by Stephane Nicoll
parent 6efcef1186
commit b7d8d5c813
27 changed files with 1543 additions and 211 deletions

24
pom.xml
View File

@@ -45,6 +45,7 @@
<module>initializr-actuator</module>
<module>initializr-generator</module>
<module>initializr-web</module>
<module>initializr-stubs</module>
</modules>
<dependencyManagement>
@@ -117,6 +118,29 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
<version>1.5.3</version>
<executions>
<execution>
<id>generate-docs</id>
<phase>prepare-package</phase>
<inherited>false</inherited>
<goals>
<goal>process-asciidoc</goal>
</goals>
<configuration>
<sourceDocumentName>index.adoc</sourceDocumentName>
<backend>html</backend>
<doctype>book</doctype>
<attributes>
<snippets>${basedir}/initializr-web/target/snippets</snippets>
</attributes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>