Hi Karl

Not sure id do a MavenIT annotation - test is enough probably - but i like
jupiter style.

Im less exited by assertj but it is probably a habit thing.

Wonder if you evaluated to run in a fake filesystem like jimfs or so and
enable the pom+files to be defined on the test method? Goal would be to not
split setup and asserts (given and then colocalized, then being the mvn
exec).

Hope it makes sense.

Le mar. 29 oct. 2019 à 21:47, Karl Heinz Marbaise <[email protected]> a
écrit :

> Hi to all,
>
> I've invested some time to get a thing working in a different way which
> nags me for a long time.
>
> Integration tests for maven plugins and for maven core...
>
> So created a prototype based on a JUnit Jupiter extension.
>
> The following is the JUnit Jupiter extension (currently very hacky code;
> not intended to win a competition for good code!)
>
> https://github.com/khmarbaise/maven-it-extension
>
> which contains some documentation which is of course not ready yet...
> but the implementation and usage (see maven-ear-plugin) gives me at the
> moment already a very good impression how easy it can be to write
> integration tests for a maven plugin etc.
>
> Example from the docs(not 100% working like that yet):
>
> @MavenIT
> class FirstMavenIT {
>
>    @MavenTest
>    void the_first_test_case(MavenProjectResult result) {
>      assertThat(result)
>        .build()
>          .isSuccessful()
>        .and()
>        .project()
>          .hasTarget()
>            .withEarFile()
>              .containsOnlyOnce("META-INF/MANIFEST.MF")
>          .log()
>            .info().contains("Writing data to file")
>        .cache()
>            .withEarFile("G:A:V")
>            .withPomFile("G:A:V")
>            .withMetadata().contains("xxx");
>    }
> }
>
>
> I created a branch "maven-it-extension" on Maven EAR Plugin which shows
> that it can be used in combination with maven-invoker-plugin:install
> goal and using maven-failsafe-plugin to run the tests for
> maven-ear-plugin (some of them at the moment. Not migrated all of them
> yet).
>
> Example which already works:
>
> https://github.com/apache/maven-ear-plugin/blob/maven-it-extension/src/test/java/org/apache/maven/plugins/ear/it/EARIT.java
>
>
> WDYT ?
>
> Kind regards
> Karl Heinz Marbaise
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to