diff --git a/jee/business/pom.xml b/jee/business/pom.xml index d0abff1d273ceb289b357595a067db18b9c07d71..c3e9b8084a2b69a64779f040b3642678db33937b 100644 --- a/jee/business/pom.xml +++ b/jee/business/pom.xml @@ -12,6 +12,11 @@ <packaging>ejb</packaging> <dependencies> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + </dependency> + <dependency> <groupId>jakarta.platform</groupId> <artifactId>jakarta.jakartaee-api</artifactId> @@ -20,6 +25,29 @@ <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter</artifactId> </dependency> + <dependency> + <groupId>org.jboss.arquillian.junit5</groupId> + <artifactId>arquillian-junit5-container</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.jboss.arquillian.protocol</groupId> + <artifactId>arquillian-protocol-servlet-jakarta</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.jboss.arquillian.container</groupId> + <artifactId>arquillian-weld-embedded</artifactId> + <version>${arquillian-weld-embedded.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.jboss.weld</groupId> + <artifactId>weld-core-impl</artifactId> + <version>${weld.version}</version> + <scope>test</scope> + </dependency> + </dependencies> diff --git a/jee/business/src/test/java/fr/univtln/bruno/samples/jee91/ejb/HelloTest.java b/jee/business/src/test/java/fr/univtln/bruno/samples/jee91/ejb/HelloTest.java new file mode 100644 index 0000000000000000000000000000000000000000..a0ef3db2df7da1c6a6dbc42e9b851a6eee1b516d --- /dev/null +++ b/jee/business/src/test/java/fr/univtln/bruno/samples/jee91/ejb/HelloTest.java @@ -0,0 +1,47 @@ +package fr.univtln.bruno.samples.jee91.ejb; + +import fr.univtln.bruno.samples.jee91.ejb.qualifiers.SpokenLanguage; +import jakarta.inject.Inject; +import lombok.extern.java.Log; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.EmptyAsset; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +@ExtendWith(ArquillianExtension.class) +@Log +class HelloTest { + @Inject + Hello hello1; + + @Inject + @SpokenLanguage(SpokenLanguage.Language.ENGLISH) + Hello hello2; + + @Deployment + public static JavaArchive createDeployment() { + return ShrinkWrap.create(JavaArchive.class) + .addClass(HelloBean1.class) + .addClass(HelloBean2.class) + .addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml"); + } + + @Test + @DisplayName("Testing Hello in French") + public void shouldInjectHelloBean1() { + assertEquals(hello1.sayHello(), "Salut"); + } + + @Test + @DisplayName("Testing Hello in English") + public void shouldInjectHelloBean2() { + assertEquals(hello2.sayHello(), "Hi"); + } + +} \ No newline at end of file diff --git a/jee/restApp/src/test/java/fr/univtln/bruno/samples/SampleTest.java b/jee/restApp/src/test/java/fr/univtln/bruno/samples/SampleResourceTest.java similarity index 87% rename from jee/restApp/src/test/java/fr/univtln/bruno/samples/SampleTest.java rename to jee/restApp/src/test/java/fr/univtln/bruno/samples/SampleResourceTest.java index 8725af6410ad9f5a014ed580cb523061a26dc49a..a5291498666fb43b38df3f210137557666575610 100644 --- a/jee/restApp/src/test/java/fr/univtln/bruno/samples/SampleTest.java +++ b/jee/restApp/src/test/java/fr/univtln/bruno/samples/SampleResourceTest.java @@ -4,7 +4,7 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; -public class SampleTest { +public class SampleResourceTest { @Test public void simpleJUnit5Test() { diff --git a/pom.xml b/pom.xml index 157cd7daa57632b261d777fad59a6bb8b41dba11..b45f21f6572c4fbf31eaff793ecd7c64971108aa 100644 --- a/pom.xml +++ b/pom.xml @@ -18,32 +18,34 @@ <properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> + <jakarta.jakartaee-api.version>9.0.0</jakarta.jakartaee-api.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> + <junit-jupiter.version>5.8.2</junit-jupiter.version> + <arquillian-weld-embedded.version>3.0.0.Final</arquillian-weld-embedded.version> + <weld.version>4.0.2.Final</weld.version> + </properties> <dependencyManagement> <dependencies> + <!-- JEE --> <dependency> <groupId>jakarta.platform</groupId> <artifactId>jakarta.jakartaee-api</artifactId> <version>${jakarta.jakartaee-api.version}</version> <scope>provided</scope> </dependency> - <dependency> - <groupId>org.junit.jupiter</groupId> - <artifactId>junit-jupiter</artifactId> - <version>${junit-jupiter.version}</version> - <scope>test</scope> - </dependency> + <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.22</version> <scope>compile</scope> </dependency> + <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> @@ -62,6 +64,58 @@ </exclusions> </dependency> + <!-- TEST --> + <dependency> + <groupId>org.junit</groupId> + <artifactId>junit-bom</artifactId> + <version>${junit-jupiter.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + <dependency> + <groupId>org.jboss.arquillian</groupId> + <artifactId>arquillian-bom</artifactId> + <version>1.7.0.Alpha10</version> + <scope>import</scope> + <type>pom</type> + </dependency> + + <dependency> + <groupId>org.jboss.arquillian.container</groupId> + <artifactId>arquillian-weld-embedded</artifactId> + <exclusions> + <exclusion> + <groupId>jakarta.ejb</groupId> + <artifactId>jakarta.ejb-api</artifactId> + </exclusion> + <exclusion> + <groupId>jakarta.transaction</groupId> + <artifactId>jakarta.transaction-api</artifactId> + </exclusion> + </exclusions> + </dependency> + + <dependency> + <groupId>org.jboss.logging</groupId> + <artifactId>jboss-logging-processor</artifactId> + <exclusions> + <exclusion> + <groupId>org.jboss.logging</groupId> + <artifactId>jboss-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.jboss.logging</groupId> + <artifactId>jboss-logging-annotations</artifactId> + <exclusions> + <exclusion> + <groupId>org.jboss.logging</groupId> + <artifactId>jboss-logging</artifactId> + </exclusion> + </exclusions> + </dependency> + </dependencies> </dependencyManagement>