From 4f28d1892f79c8139b1218f3180df1afd74b22e2 Mon Sep 17 00:00:00 2001 From: Cleverson Sacramento Date: Tue, 20 Aug 2013 10:47:42 -0300 Subject: [PATCH] Funcionando com o JBoss AS7 Managed mas a cobertura não está funcionando --- impl/extension/jpa/pom.xml | 134 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- impl/extension/jpa/src/test/java/transaction/manual/JPATransactionTest.java | 85 ++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------- impl/extension/jpa/src/test/java/transaction/manual/MyEntity.java | 29 ----------------------------- impl/extension/jpa/src/test/java/transaction/manual/MyEntity1.java | 29 +++++++++++++++++++++++++++++ impl/extension/jpa/src/test/java/transaction/manual/MyEntity2.java | 29 +++++++++++++++++++++++++++++ impl/extension/jpa/src/test/resources/arquillian.xml | 35 ++++++++++++++++++++++++++++++++--- impl/extension/jpa/src/test/resources/template/persistence.xml | 4 +++- impl/extension/jpa/src/test/resources/transaction/manual/persistence.xml | 12 ++++++++---- 8 files changed, 276 insertions(+), 81 deletions(-) delete mode 100644 impl/extension/jpa/src/test/java/transaction/manual/MyEntity.java create mode 100644 impl/extension/jpa/src/test/java/transaction/manual/MyEntity1.java create mode 100644 impl/extension/jpa/src/test/java/transaction/manual/MyEntity2.java diff --git a/impl/extension/jpa/pom.xml b/impl/extension/jpa/pom.xml index c410970..b0e41c8 100755 --- a/impl/extension/jpa/pom.xml +++ b/impl/extension/jpa/pom.xml @@ -66,10 +66,93 @@ http://www.serpro.gov.br - + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.16 + - --> @@ -115,26 +203,43 @@ --> + + org.jboss.as + jboss-as-arquillian-container-managed + ${jbossas.version} + test + + + org.jboss.arquillian.protocol + arquillian-protocol-servlet + + + + org.glassfish.main.extras glassfish-embedded-all 3.1.2 test + --> + + org.jboss.shrinkwrap.resolver @@ -218,7 +337,6 @@ hibernate-validator test - --> @@ -268,6 +386,8 @@ org.slf4j slf4j-api + org.javassist javassist @@ -282,4 +402,8 @@ + + + 7.1.1.Final + diff --git a/impl/extension/jpa/src/test/java/transaction/manual/JPATransactionTest.java b/impl/extension/jpa/src/test/java/transaction/manual/JPATransactionTest.java index 71e57b1..81cdfb1 100644 --- a/impl/extension/jpa/src/test/java/transaction/manual/JPATransactionTest.java +++ b/impl/extension/jpa/src/test/java/transaction/manual/JPATransactionTest.java @@ -2,6 +2,7 @@ package transaction.manual; import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertFalse; +import static junit.framework.Assert.assertNull; import static junit.framework.Assert.assertTrue; import javax.inject.Inject; @@ -53,66 +54,72 @@ public class JPATransactionTest { public void commitWithSuccess() { Transaction transaction = transactionContext.getCurrentTransaction(); - MyEntity entity = new MyEntity(); - entity.setId(createId("id-1")); - entity.setDescription("desc-1"); + MyEntity1 entity1 = new MyEntity1(); + entity1.setId(createId("id-1")); + entity1.setDescription("desc-1"); + + MyEntity2 entity2 = new MyEntity2(); + entity2.setId(createId("id-2")); + entity2.setDescription("desc-2"); assertFalse(transaction.isActive()); transaction.begin(); assertTrue(transaction.isActive()); - em1.persist(entity); - em2.persist(entity); + em1.persist(entity1); + em2.persist(entity2); transaction.commit(); em1.clear(); em2.clear(); - MyEntity persisted1 = em1.find(MyEntity.class, createId("id-1")); - MyEntity persisted2 = em2.find(MyEntity.class, createId("id-1")); + MyEntity1 persisted1 = em1.find(MyEntity1.class, createId("id-1")); + MyEntity2 persisted2 = em2.find(MyEntity2.class, createId("id-2")); assertEquals("desc-1", persisted1.getDescription()); - assertEquals("desc-1", persisted2.getDescription()); + assertEquals("desc-2", persisted2.getDescription()); } @Test(expected = TransactionRequiredException.class) public void checkNoTransactionAutomaticallyLoaded() { - MyEntity entity = new MyEntity(); + MyEntity1 entity = new MyEntity1(); entity.setId(createId("id-2")); em1.persist(entity); em1.flush(); } - // - // @Test - // public void rollbackWithSuccess() { - // Transaction transaction = transactionContext.getCurrentTransaction(); - // - // MyEntity entity = new MyEntity(); - // entity.setId(createId("id-3")); - // - // assertFalse(transaction.isMarkedRollback()); - // transaction.begin(); - // assertTrue(transaction.isActive()); - // - // em1.persist(entity); - // em2.persist(entity); - // em1.flush(); - // em2.flush(); - // transaction.setRollbackOnly(); - // - // if (transaction.isMarkedRollback()) { - // transaction.rollback(); - // } - // - // em1.clear(); - // em2.clear(); - // - // MyEntity persisted1 = em1.find(MyEntity.class, createId("id-3")); - // MyEntity persisted2 = em2.find(MyEntity.class, createId("id-3")); - // assertNull(persisted1); - // assertNull(persisted2); - // } + @Test + public void rollbackWithSuccess() { + Transaction transaction = transactionContext.getCurrentTransaction(); + + MyEntity1 entity1 = new MyEntity1(); + entity1.setId(createId("id-3")); + + MyEntity2 entity2 = new MyEntity2(); + entity2.setId(createId("id-4")); + + assertFalse(transaction.isMarkedRollback()); + transaction.begin(); + assertTrue(transaction.isActive()); + + em1.persist(entity1); + em2.persist(entity2); + em1.flush(); + em2.flush(); + transaction.setRollbackOnly(); + + if (transaction.isMarkedRollback()) { + transaction.rollback(); + } + + em1.clear(); + em2.clear(); + + MyEntity1 persisted1 = em1.find(MyEntity1.class, createId("id-3")); + MyEntity2 persisted2 = em2.find(MyEntity2.class, createId("id-4")); + assertNull(persisted1); + assertNull(persisted2); + } private String createId(String id) { return this.getClass().getName() + "_" + id; diff --git a/impl/extension/jpa/src/test/java/transaction/manual/MyEntity.java b/impl/extension/jpa/src/test/java/transaction/manual/MyEntity.java deleted file mode 100644 index 8c428c1..0000000 --- a/impl/extension/jpa/src/test/java/transaction/manual/MyEntity.java +++ /dev/null @@ -1,29 +0,0 @@ -package transaction.manual; - -import javax.persistence.Entity; -import javax.persistence.Id; - -@Entity -public class MyEntity { - - @Id - private String id; - - private String description; - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getDescription() { - return description; - } - - public void setDescription(String description) { - this.description = description; - } -} diff --git a/impl/extension/jpa/src/test/java/transaction/manual/MyEntity1.java b/impl/extension/jpa/src/test/java/transaction/manual/MyEntity1.java new file mode 100644 index 0000000..bc95a9c --- /dev/null +++ b/impl/extension/jpa/src/test/java/transaction/manual/MyEntity1.java @@ -0,0 +1,29 @@ +package transaction.manual; + +import javax.persistence.Entity; +import javax.persistence.Id; + +@Entity +public class MyEntity1 { + + @Id + private String id; + + private String description; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } +} diff --git a/impl/extension/jpa/src/test/java/transaction/manual/MyEntity2.java b/impl/extension/jpa/src/test/java/transaction/manual/MyEntity2.java new file mode 100644 index 0000000..1099150 --- /dev/null +++ b/impl/extension/jpa/src/test/java/transaction/manual/MyEntity2.java @@ -0,0 +1,29 @@ +package transaction.manual; + +import javax.persistence.Entity; +import javax.persistence.Id; + +@Entity +public class MyEntity2 { + + @Id + private String id; + + private String description; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } +} diff --git a/impl/extension/jpa/src/test/resources/arquillian.xml b/impl/extension/jpa/src/test/resources/arquillian.xml index 211cd00..0096eb2 100644 --- a/impl/extension/jpa/src/test/resources/arquillian.xml +++ b/impl/extension/jpa/src/test/resources/arquillian.xml @@ -43,6 +43,25 @@ target/deployments + + + + + /usr/lib/jvm/java-6-serpro/ + target/jboss-as-${jbossas.version} + + + + src/test/resources/glassfish-resources.xml + --> + + - + \ No newline at end of file diff --git a/impl/extension/jpa/src/test/resources/template/persistence.xml b/impl/extension/jpa/src/test/resources/template/persistence.xml index 3b22637..f049360 100644 --- a/impl/extension/jpa/src/test/resources/template/persistence.xml +++ b/impl/extension/jpa/src/test/resources/template/persistence.xml @@ -37,6 +37,7 @@ + java:jboss/datasources/ExampleDS @@ -61,6 +64,5 @@ - --> \ No newline at end of file diff --git a/impl/extension/jpa/src/test/resources/transaction/manual/persistence.xml b/impl/extension/jpa/src/test/resources/transaction/manual/persistence.xml index 3f172f6..d5edb9c 100644 --- a/impl/extension/jpa/src/test/resources/transaction/manual/persistence.xml +++ b/impl/extension/jpa/src/test/resources/transaction/manual/persistence.xml @@ -37,6 +37,7 @@ + java:jboss/datasources/ExampleDS - transaction.manual.MyEntity + transaction.manual.MyEntity1 + transaction.manual.MyEntity2 @@ -75,9 +79,10 @@ - java:jboss/datasources/ExampleDS2 + java:jboss/datasources/ExampleDS - transaction.manual.MyEntity + transaction.manual.MyEntity1 + transaction.manual.MyEntity2 @@ -85,6 +90,5 @@ - --> \ No newline at end of file -- libgit2 0.21.2