Commit f53b9022c4bf3da6815f19758b4d0756b66058d8
1 parent
e2cc082c
Exists in
master
-Adicionada versão padrão do componente arquillian-embedded-ee no BOM.
-Adicionado teste de chamadas a beans ManagementController dentro do escopo RequestScoped.
Showing
5 changed files
with
81 additions
and
2 deletions
Show diff stats
impl/core/src/test/java/management/ManagementTestCase.java
@@ -42,6 +42,8 @@ import junit.framework.Assert; | @@ -42,6 +42,8 @@ import junit.framework.Assert; | ||
42 | import management.testclasses.DummyManagedClass; | 42 | import management.testclasses.DummyManagedClass; |
43 | import management.testclasses.DummyManagementExtension; | 43 | import management.testclasses.DummyManagementExtension; |
44 | import management.testclasses.ManagedClassStore; | 44 | import management.testclasses.ManagedClassStore; |
45 | +import management.testclasses.RequestScopeBeanClient; | ||
46 | +import management.testclasses.RequestScopedClass; | ||
45 | 47 | ||
46 | import org.jboss.arquillian.container.test.api.Deployment; | 48 | import org.jboss.arquillian.container.test.api.Deployment; |
47 | import org.jboss.arquillian.junit.Arquillian; | 49 | import org.jboss.arquillian.junit.Arquillian; |
@@ -75,7 +77,11 @@ public class ManagementTestCase { | @@ -75,7 +77,11 @@ public class ManagementTestCase { | ||
75 | new File("src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension"), | 77 | new File("src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension"), |
76 | "services/javax.enterprise.inject.spi.Extension") | 78 | "services/javax.enterprise.inject.spi.Extension") |
77 | .addPackages(false, ManagementTestCase.class.getPackage()) | 79 | .addPackages(false, ManagementTestCase.class.getPackage()) |
78 | - .addClasses(DummyManagementExtension.class, DummyManagedClass.class, ManagedClassStore.class); | 80 | + .addClasses(DummyManagementExtension.class |
81 | + , DummyManagedClass.class | ||
82 | + , ManagedClassStore.class | ||
83 | + , RequestScopeBeanClient.class | ||
84 | + , RequestScopedClass.class); | ||
79 | } | 85 | } |
80 | 86 | ||
81 | @Test | 87 | @Test |
@@ -161,4 +167,18 @@ public class ManagementTestCase { | @@ -161,4 +167,18 @@ public class ManagementTestCase { | ||
161 | } | 167 | } |
162 | 168 | ||
163 | } | 169 | } |
170 | + | ||
171 | + @Test | ||
172 | + public void testRequestScopedOperation() { | ||
173 | + ManagedClassStore store = Beans.getReference(ManagedClassStore.class); | ||
174 | + | ||
175 | + //Esta operação faz multiplos acessos a um bean RequestScoped. Durante a operação todos os acessos devem | ||
176 | + //operar sob a mesma instância, mas uma segunda invocação deve operar em uma instância nova | ||
177 | + Object info = store.invoke(DummyManagedClass.class, "requestScopedOperation"); | ||
178 | + Assert.assertEquals("-OPERATION ONE CALLED--OPERATION TWO CALLED-", info); | ||
179 | + | ||
180 | + //Segunda invocação para testar se uma nova instância é criada, já que esse é um novo request. | ||
181 | + info = store.invoke(DummyManagedClass.class, "requestScopedOperation"); | ||
182 | + Assert.assertEquals("-OPERATION ONE CALLED--OPERATION TWO CALLED-", info); | ||
183 | + } | ||
164 | } | 184 | } |
impl/core/src/test/java/management/testclasses/DummyManagedClass.java
@@ -43,6 +43,7 @@ import javax.validation.constraints.NotNull; | @@ -43,6 +43,7 @@ import javax.validation.constraints.NotNull; | ||
43 | import br.gov.frameworkdemoiselle.annotation.ManagedOperation; | 43 | import br.gov.frameworkdemoiselle.annotation.ManagedOperation; |
44 | import br.gov.frameworkdemoiselle.annotation.ManagedProperty; | 44 | import br.gov.frameworkdemoiselle.annotation.ManagedProperty; |
45 | import br.gov.frameworkdemoiselle.stereotype.ManagementController; | 45 | import br.gov.frameworkdemoiselle.stereotype.ManagementController; |
46 | +import br.gov.frameworkdemoiselle.util.Beans; | ||
46 | 47 | ||
47 | @ManagementController | 48 | @ManagementController |
48 | public class DummyManagedClass { | 49 | public class DummyManagedClass { |
@@ -196,7 +197,15 @@ public class DummyManagedClass { | @@ -196,7 +197,15 @@ public class DummyManagedClass { | ||
196 | this.gender = gender; | 197 | this.gender = gender; |
197 | } | 198 | } |
198 | 199 | ||
199 | - | 200 | + @ManagedOperation |
201 | + public String requestScopedOperation(){ | ||
202 | + RequestScopeBeanClient client = Beans.getReference(RequestScopeBeanClient.class); | ||
203 | + client.operationOne(); | ||
204 | + client.operationTwo(); | ||
205 | + | ||
206 | + RequestScopedClass bean = Beans.getReference(RequestScopedClass.class); | ||
207 | + return bean.getInfo(); | ||
208 | + } | ||
200 | 209 | ||
201 | 210 | ||
202 | } | 211 | } |
impl/core/src/test/java/management/testclasses/RequestScopeBeanClient.java
0 → 100644
@@ -0,0 +1,22 @@ | @@ -0,0 +1,22 @@ | ||
1 | +package management.testclasses; | ||
2 | + | ||
3 | +import br.gov.frameworkdemoiselle.util.Beans; | ||
4 | + | ||
5 | + | ||
6 | +public class RequestScopeBeanClient { | ||
7 | + | ||
8 | + public void operationOne(){ | ||
9 | + | ||
10 | + RequestScopedClass bean = Beans.getReference(RequestScopedClass.class); | ||
11 | + bean.setInfo( bean.getInfo() + "-OPERATION ONE CALLED-"); | ||
12 | + | ||
13 | + } | ||
14 | + | ||
15 | + public void operationTwo(){ | ||
16 | + | ||
17 | + RequestScopedClass bean = Beans.getReference(RequestScopedClass.class); | ||
18 | + bean.setInfo( bean.getInfo() + "-OPERATION TWO CALLED-"); | ||
19 | + | ||
20 | + } | ||
21 | + | ||
22 | +} |
impl/core/src/test/java/management/testclasses/RequestScopedClass.java
0 → 100644
@@ -0,0 +1,22 @@ | @@ -0,0 +1,22 @@ | ||
1 | +package management.testclasses; | ||
2 | + | ||
3 | +import javax.enterprise.context.RequestScoped; | ||
4 | + | ||
5 | +@RequestScoped | ||
6 | +public class RequestScopedClass { | ||
7 | + | ||
8 | + private String info = ""; | ||
9 | + | ||
10 | + | ||
11 | + public String getInfo() { | ||
12 | + return info; | ||
13 | + } | ||
14 | + | ||
15 | + | ||
16 | + public void setInfo(String info) { | ||
17 | + this.info = info; | ||
18 | + } | ||
19 | + | ||
20 | + | ||
21 | + | ||
22 | +} |
parent/bom/pom.xml
@@ -349,6 +349,11 @@ | @@ -349,6 +349,11 @@ | ||
349 | <version>${arquillian.weld.se.embedded.version}</version> | 349 | <version>${arquillian.weld.se.embedded.version}</version> |
350 | </dependency> | 350 | </dependency> |
351 | <dependency> | 351 | <dependency> |
352 | + <groupId>org.jboss.arquillian.container</groupId> | ||
353 | + <artifactId>arquillian-weld-ee-embedded-1.1</artifactId> | ||
354 | + <version>${arquillian.weld.ee.embedded.version}</version> | ||
355 | + </dependency> | ||
356 | + <dependency> | ||
352 | <groupId>org.jboss.weld.se</groupId> | 357 | <groupId>org.jboss.weld.se</groupId> |
353 | <artifactId>weld-se-core</artifactId> | 358 | <artifactId>weld-se-core</artifactId> |
354 | <version>${weld.version}</version> | 359 | <version>${weld.version}</version> |
@@ -399,6 +404,7 @@ | @@ -399,6 +404,7 @@ | ||
399 | 404 | ||
400 | <arquillian.version>1.0.3.Final</arquillian.version> | 405 | <arquillian.version>1.0.3.Final</arquillian.version> |
401 | <arquillian.weld.se.embedded.version>1.0.0.CR6</arquillian.weld.se.embedded.version> | 406 | <arquillian.weld.se.embedded.version>1.0.0.CR6</arquillian.weld.se.embedded.version> |
407 | + <arquillian.weld.ee.embedded.version>1.0.0.CR6</arquillian.weld.ee.embedded.version> | ||
402 | 408 | ||
403 | <powermock.version>1.4.6</powermock.version> | 409 | <powermock.version>1.4.6</powermock.version> |
404 | <primefaces.version>3.4</primefaces.version> | 410 | <primefaces.version>3.4</primefaces.version> |