diff --git a/.mvn/.gitkeep b/.mvn/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/itf-documentation/pom.xml b/itf-documentation/pom.xml index 89da72c72c..3f526e8efe 100644 --- a/itf-documentation/pom.xml +++ b/itf-documentation/pom.xml @@ -34,6 +34,10 @@ ITF Documentation + + ${project.basedir}/src/main/asciidoc + + com.soebes.itf.jupiter.extension @@ -50,23 +54,91 @@ asciidoctor-maven-plugin - output-html + concept-html + prepare-package + + process-asciidoc + + + html + ${asciidoc}/concept + + + + background-html + prepare-package + + process-asciidoc + + + html + ${asciidoc}/background + + + + userguide-html + prepare-package + + process-asciidoc + + + html + ${asciidoc}/usersguide + + + + release-notes-html prepare-package process-asciidoc html + ${asciidoc}/release-notes - output-pdf + concept-pdf prepare-package process-asciidoc pdf + ${asciidoc}/concept + + + + background-pdf + prepare-package + + process-asciidoc + + + pdf + ${asciidoc}/background + + + + userguide-pdf + prepare-package + + process-asciidoc + + + pdf + ${asciidoc}/usersguide + + + + release-notes-pdf + prepare-package + + process-asciidoc + + + pdf + ${asciidoc}/release-notes @@ -81,16 +153,12 @@ ${project.version} false left - ../resources/images coderay - src/main/asciidoc true true - ${project.basedir} ${project.reporting.outputDirectory} - diff --git a/itf-documentation/src/main/asciidoc/concept/Concept.adoc b/itf-documentation/src/main/asciidoc/concept/concept.adoc similarity index 100% rename from itf-documentation/src/main/asciidoc/concept/Concept.adoc rename to itf-documentation/src/main/asciidoc/concept/concept.adoc diff --git a/itf-documentation/src/main/asciidoc/release-notes/_release-notes-0.13.0.adoc b/itf-documentation/src/main/asciidoc/release-notes/_release-notes-0.13.0.adoc index e835f86d3f..e372791cd7 100644 --- a/itf-documentation/src/main/asciidoc/release-notes/_release-notes-0.13.0.adoc +++ b/itf-documentation/src/main/asciidoc/release-notes/_release-notes-0.13.0.adoc @@ -40,6 +40,7 @@ :issue-374: https://github.com/khmarbaise/maven-it-extension/issues/374[Fixed #374] :issue-375: https://github.com/khmarbaise/maven-it-extension/issues/375[Fixed #375] :issue-376: https://github.com/khmarbaise/maven-it-extension/issues/376[Fixed #376] +:issue-381: https://github.com/khmarbaise/maven-it-extension/issues/381[Fixed #381] :issue-??: https://github.com/khmarbaise/maven-it-extension/issues/??[Fixed #??] :release_0_13_0: https://github.com/khmarbaise/maven-it-extension/milestone/13 @@ -97,6 +98,6 @@ *Build Improvements* * {issue-351} - JDK17+ Usage in Tests - * {issue-???} - ?? + * {issue-381} - Improved structuring of documentation. The full release notes can be found here {release_0_13_0}[Release 0.13.0]. diff --git a/itf-documentation/src/main/asciidoc/release-notes/release-notes.adoc b/itf-documentation/src/main/asciidoc/release-notes/release-notes.adoc index 14f6369443..613c5ff841 100644 --- a/itf-documentation/src/main/asciidoc/release-notes/release-notes.adoc +++ b/itf-documentation/src/main/asciidoc/release-notes/release-notes.adoc @@ -18,10 +18,10 @@ [[release-notes]] = Integration Testing Framework Release Notes Karl Heinz Marbaise; {docdate} -:includedir: _includes -:sourcedir: src/main/asciidoc/release-notes :numbered!: :toc: left +:includedir: _includes +:sourcedir: ./ This document contains the _change log_ for all Integration Test Framework releases since 0.1.0. @@ -29,6 +29,7 @@ releases since 0.1.0. Please refer to the <<../user-guide/index.adoc#user-guide,User Guide>> for a comprehensive overview and detailed instructions how to use the Integration Testing Framework. + include::{sourcedir}/_release-notes-0.13.0.adoc[] include::{sourcedir}/_release-notes-0.12.0.adoc[] diff --git a/itf-documentation/src/main/asciidoc/usersguide/usersguide.adoc b/itf-documentation/src/main/asciidoc/usersguide/usersguide.adoc index 558dc8feb5..27ea2eae0a 100644 --- a/itf-documentation/src/main/asciidoc/usersguide/usersguide.adoc +++ b/itf-documentation/src/main/asciidoc/usersguide/usersguide.adoc @@ -23,6 +23,10 @@ Karl Heinz Marbaise; {docdate} :sectlinks: :xrefstyle: full :toc: left +:includedir: _includes +:sourcedir: ../../../../../ +:itf-examples: {sourcedir}/itf-examples +:itf-failure-plugin: {sourcedir}/itf-failure-plugin // :junit-jupiter: https://junit.org/junit5/[JUnit Jupiter] :junit-jupiter-extension: https://junit.org/junit5/docs/current/user-guide/#extensions @@ -36,7 +40,6 @@ Karl Heinz Marbaise; {docdate} :itf-issues: https://github.com/khmarbaise/maven-it-extension/issues :assertj: https://assertj.github.io/doc/ // -:itfexample: _basedir/../.. [[general.overview]] == Overview @@ -144,7 +147,7 @@ cause you only need them during the integration tests. [source,xml] ---- -include::../../../../../itf-examples/pom.xml[tag=dependencies] +include::{itf-examples}/pom.xml[tag=dependencies] ---- The dependency `com.soebes.itf.jupiter.extension:itf-assertj` contains custom assertions of {assertj}[AssertJ] in case you want to use {assertj}[AssertJ] as your assertion framework. This means you have to include @@ -166,7 +169,7 @@ like this: [source,xml] ---- -include::../../../../../itf-examples/pom.xml[tag=itf-maven-plugin] +include::{itf-examples}/pom.xml[tag=itf-maven-plugin] ---- //FIXME: Needed to be changed after itf-maven-plugin will run also the tests. The `itf-maven-plugin` copies the code of your extension/plugin into appropriate directories which are @@ -177,7 +180,7 @@ Finally you have to add a configuration for {maven-failsafe-plugin} like the fol [source,xml] ---- -include::../../../../../itf-examples/pom.xml[tag=failsafe] +include::{itf-examples}/pom.xml[tag=failsafe] ---- The given properties like `maven.version` transfers the version of Maven which is used within the `itf-jupiter-extension` to run your integration tests and the `maven.home` transfers the @@ -1548,24 +1551,24 @@ That will not filter anything. Another example of using the assertions could look like this: -include::../../../../../itf-examples/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=stdout] +include::{itf-examples}/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=stdout] This will extract all messages with the prefix `[INFO] ` of the log and check if there is at least one line which contains the given content. We can check for warnings like the following: -include::../../../../../itf-examples/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=warning] +include::{itf-examples}/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=warning] You can access directly the `stdout` and/or the `stderr` of the Maven build and do things yourself if you prefer to go that way. In this case you have to add another injection to the test case (`MavenLog mavenLog` or like this `result.getMavenLog().getStdout()`). -include::../../../../../itf-examples/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=selfmade] +include::{itf-examples}/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=selfmade] The `stderr` output can be accessed as well like this: -include::../../../../../itf-examples/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=error] +include::{itf-examples}/src/test/java/com/soebes/itf/examples/LogoutputIT.java[tag=error] A full-fledged example can be found `itf-examples/src/test/java/com/soebes/itf/examples/LogoutputIT.java` within the itf project. @@ -1684,7 +1687,7 @@ the build cause the plugin needs to be configured. [source,xml] ---- -include::../../../../../itf-failure-plugin/src/test/resources-its/com/soebes/itf/maven/plugin/failure/FailureIT/basic_configuration/pom.xml[tag=configuration] +include::{itf-failure-plugin}/src/test/resources-its/com/soebes/itf/maven/plugin/failure/FailureIT/basic_configuration/pom.xml[tag=configuration] ---- The plugin does not bind to any life cycle phase by default which is intentionally to require a binding @@ -1697,7 +1700,7 @@ exception can given via `exception` configuration part. [source,xml] ---- -include::../../../../../itf-failure-plugin/src/test/resources-its/com/soebes/itf/maven/plugin/failure/FailureIT/fail_with_mojo_execution_exception/pom.xml[tag=configuration] +include::{itf-failure-plugin}/src/test/resources-its/com/soebes/itf/maven/plugin/failure/FailureIT/fail_with_mojo_execution_exception/pom.xml[tag=configuration] ---- The final example will fail the build with a `MojoFailureException` (failureException=true) and the text of the exception @@ -1705,7 +1708,7 @@ can given via `exception` configuration part as before. [source,xml] ---- -include::../../../../../itf-failure-plugin/src/test/resources-its/com/soebes/itf/maven/plugin/failure/FailureIT/fail_with_mojo_failure_exception/pom.xml[tag=configuration] +include::{itf-failure-plugin}/src/test/resources-its/com/soebes/itf/maven/plugin/failure/FailureIT/fail_with_mojo_failure_exception/pom.xml[tag=configuration] ---- diff --git a/pom.xml b/pom.xml index f1bd278638..3f412303da 100644 --- a/pom.xml +++ b/pom.xml @@ -177,6 +177,7 @@ .repository/** .repo/** .maven/spy.log + .mvn/* dependency-reduced-pom.xml .asf.yaml .java-version