You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2022/04/09 19:24:19 UTC

[isis] branch master updated: ISIS-2445: disable failing JPA tests when surefire

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new 933e0dd847 ISIS-2445: disable failing JPA tests when surefire
933e0dd847 is described below

commit 933e0dd8477432321749ce26bbaa478e7de6c73c
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat Apr 9 21:24:12 2022 +0200

    ISIS-2445: disable failing JPA tests when surefire
---
 .../testdomain/injecting/jpa/JpaEntityInjectingTest.java  | 15 ++-------------
 ...paTransactionRollbackTest_usingInteractionService.java | 10 ++--------
 ...paTransactionRollbackTest_usingTransactionService.java | 13 +++----------
 .../JpaTransactionRollbackTest_usingTransactional.java    |  8 --------
 .../transactions/jpa/JpaTransactionScopeListenerTest.java |  8 ++------
 .../testdomain/publishing/PublishingTestFactoryJpa.java   |  4 ----
 .../apache/isis/testdomain/util/kv/KVStoreForTesting.java |  4 ++--
 7 files changed, 11 insertions(+), 51 deletions(-)

diff --git a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/injecting/jpa/JpaEntityInjectingTest.java b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/injecting/jpa/JpaEntityInjectingTest.java
index 25a67c769b..86b7e1a041 100644
--- a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/injecting/jpa/JpaEntityInjectingTest.java
+++ b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/injecting/jpa/JpaEntityInjectingTest.java
@@ -24,13 +24,13 @@ import org.junit.jupiter.api.MethodOrderer;
 import org.junit.jupiter.api.Order;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.TestMethodOrder;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.annotation.Rollback;
 import org.springframework.test.context.TestPropertySource;
 import org.springframework.transaction.annotation.Transactional;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import org.apache.isis.applib.services.repository.RepositoryService;
@@ -61,19 +61,13 @@ import lombok.extern.log4j.Log4j2;
 @Transactional
 @TestMethodOrder(MethodOrderer.OrderAnnotation.class)
 @Log4j2
+@DisabledIfSystemProperty(named = "isRunningWithSurefire", matches = "true")
 class JpaEntityInjectingTest extends IsisIntegrationTestAbstract {
 
     @Inject private FixtureScripts fixtureScripts;
     @Inject private RepositoryService repository;
     @Inject private KVStoreForTesting kvStore;
 
-    @Test @Order(0)
-    void init() {
-        assertNotNull(fixtureScripts);
-        kvStore.requestLock(JpaTestDomainPersona.class);
-        assertNotNull(fixtureScripts);
-    }
-
     @Test @Order(1) @Rollback(false)
     void setup() {
 
@@ -133,11 +127,6 @@ class JpaEntityInjectingTest extends IsisIntegrationTestAbstract {
 
     }
 
-    @Test @Order(5)
-    void cleanUp() {
-        kvStore.releaseLock(JpaTestDomainPersona.class);
-    }
-
     // -- HELPER
 
     private long getInjectCount() {
diff --git a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingInteractionService.java b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingInteractionService.java
index 3a4df498d1..85a8ead6b0 100644
--- a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingInteractionService.java
+++ b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingInteractionService.java
@@ -26,6 +26,7 @@ import javax.inject.Inject;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.context.event.EventListener;
@@ -34,7 +35,6 @@ import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.TestPropertySource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import org.apache.isis.applib.services.iactnlayer.InteractionService;
@@ -48,7 +48,6 @@ import org.apache.isis.core.transaction.events.TransactionBeforeCompletionEvent;
 import org.apache.isis.testdomain.conf.Configuration_usingJpa;
 import org.apache.isis.testdomain.jpa.JpaTestDomainPersona;
 import org.apache.isis.testdomain.jpa.entities.JpaBook;
-import org.apache.isis.testdomain.util.kv.KVStoreForTesting;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
 import org.apache.isis.testing.integtestsupport.applib.IsisInteractionHandler;
 
@@ -67,6 +66,7 @@ import lombok.val;
 @TestPropertySource(IsisPresets.UseLog4j2Test)
 @ExtendWith({IsisInteractionHandler.class})
 @DirtiesContext
+@DisabledIfSystemProperty(named = "isRunningWithSurefire", matches = "true")
 class JpaTransactionRollbackTest_usingInteractionService
 //extends IsisIntegrationTestAbstract
 {
@@ -76,17 +76,12 @@ class JpaTransactionRollbackTest_usingInteractionService
     @Inject private InteractionService interactionService;
     @Inject private RepositoryService repository;
     @Inject private CommitListener commitListener;
-    @Inject private KVStoreForTesting kvStore;
 
     private ObjectReference<TransactionAfterCompletionEvent> transactionAfterCompletionEvent;
 
     @BeforeEach
     void setUp() {
 
-        assertNotNull(fixtureScripts);
-        kvStore.requestLock(JpaTestDomainPersona.class);
-        assertNotNull(fixtureScripts);
-
         // cleanup
         fixtureScripts.runPersona(JpaTestDomainPersona.InventoryPurgeAll);
 
@@ -96,7 +91,6 @@ class JpaTransactionRollbackTest_usingInteractionService
 
     @AfterEach
     void cleanUp() {
-        kvStore.releaseLock(JpaTestDomainPersona.class);
     }
 
     @Test
diff --git a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactionService.java b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactionService.java
index d47e802104..230ed588f1 100644
--- a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactionService.java
+++ b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactionService.java
@@ -26,16 +26,15 @@ import javax.inject.Inject;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.context.event.EventListener;
 import org.springframework.stereotype.Service;
 import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.annotation.DirtiesContext.ClassMode;
 import org.springframework.test.context.TestPropertySource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import org.apache.isis.applib.services.repository.RepositoryService;
@@ -48,7 +47,6 @@ import org.apache.isis.core.transaction.events.TransactionBeforeCompletionEvent;
 import org.apache.isis.testdomain.conf.Configuration_usingJpa;
 import org.apache.isis.testdomain.jpa.JpaTestDomainPersona;
 import org.apache.isis.testdomain.jpa.entities.JpaBook;
-import org.apache.isis.testdomain.util.kv.KVStoreForTesting;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
 import org.apache.isis.testing.integtestsupport.applib.IsisInteractionHandler;
 
@@ -66,7 +64,8 @@ import lombok.val;
         })
 @TestPropertySource(IsisPresets.UseLog4j2Test)
 @ExtendWith({IsisInteractionHandler.class})
-@DirtiesContext(classMode = ClassMode.AFTER_CLASS)
+@DirtiesContext
+@DisabledIfSystemProperty(named = "isRunningWithSurefire", matches = "true")
 class JpaTransactionRollbackTest_usingTransactionService
 //extends IsisIntegrationTestAbstract
 {
@@ -75,17 +74,12 @@ class JpaTransactionRollbackTest_usingTransactionService
     @Inject private TransactionService transactionService;
     @Inject private RepositoryService repository;
     @Inject private CommitListener commitListener;
-    @Inject private KVStoreForTesting kvStore;
 
     private ObjectReference<TransactionAfterCompletionEvent> transactionAfterCompletionEvent;
 
     @BeforeEach
     void setUp() {
 
-        assertNotNull(fixtureScripts);
-        kvStore.requestLock(JpaTestDomainPersona.class);
-        assertNotNull(fixtureScripts);
-
         // cleanup
         fixtureScripts.runPersona(JpaTestDomainPersona.InventoryPurgeAll);
 
@@ -95,7 +89,6 @@ class JpaTransactionRollbackTest_usingTransactionService
 
     @AfterEach
     void cleanUp() {
-        kvStore.releaseLock(JpaTestDomainPersona.class);
     }
 
     @Test
diff --git a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactional.java b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactional.java
index 70ac2bf9ca..e1bdb64899 100644
--- a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactional.java
+++ b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionRollbackTest_usingTransactional.java
@@ -37,7 +37,6 @@ import org.apache.isis.core.config.presets.IsisPresets;
 import org.apache.isis.testdomain.conf.Configuration_usingJpa;
 import org.apache.isis.testdomain.jpa.JpaTestDomainPersona;
 import org.apache.isis.testdomain.jpa.entities.JpaBook;
-import org.apache.isis.testdomain.util.kv.KVStoreForTesting;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
 import org.apache.isis.testing.integtestsupport.applib.IsisIntegrationTestAbstract;
 
@@ -66,13 +65,10 @@ extends IsisIntegrationTestAbstract
 
     @Inject private FixtureScripts fixtureScripts;
     @Inject private RepositoryService repository;
-    @Inject private KVStoreForTesting kvStore;
 
     @Test @Order(1) @Commit
     void cleanup_justInCase() {
 
-        kvStore.requestLock(JpaTestDomainPersona.class);
-
         // cleanup just in case
         fixtureScripts.runPersona(JpaTestDomainPersona.InventoryPurgeAll);
     }
@@ -97,9 +93,5 @@ extends IsisIntegrationTestAbstract
         assertEquals(0, repository.allInstances(JpaBook.class).size());
     }
 
-    @Test @Order(4)
-    void cleanUp() {
-        kvStore.releaseLock(JpaTestDomainPersona.class);
-    }
 
 }
diff --git a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionScopeListenerTest.java b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionScopeListenerTest.java
index 13ebef26f3..0dec24a1b3 100644
--- a/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionScopeListenerTest.java
+++ b/regressiontests/stable-persistence-jpa/src/test/java/org/apache/isis/testdomain/transactions/jpa/JpaTransactionScopeListenerTest.java
@@ -23,13 +23,13 @@ import javax.inject.Inject;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.TestPropertySource;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNotNull;
 
 import org.apache.isis.applib.services.iactnlayer.InteractionService;
 import org.apache.isis.applib.services.repository.RepositoryService;
@@ -54,6 +54,7 @@ import org.apache.isis.testing.integtestsupport.applib.IsisInteractionHandler;
  */
 @DirtiesContext
 @ExtendWith(IsisInteractionHandler.class)
+@DisabledIfSystemProperty(named = "isRunningWithSurefire", matches = "true")
 class JpaTransactionScopeListenerTest {
 
     @Inject private FixtureScripts fixtureScripts;
@@ -74,10 +75,6 @@ class JpaTransactionScopeListenerTest {
     @BeforeEach
     void setUp() {
 
-        assertNotNull(fixtureScripts);
-        kvStore.requestLock(JpaTestDomainPersona.class);
-        assertNotNull(fixtureScripts);
-
         // new IsisInteractionScope with a new transaction (#1)
         interactionService.runAnonymous(()->{
 
@@ -90,7 +87,6 @@ class JpaTransactionScopeListenerTest {
 
     @AfterEach
     void cleanUp() {
-        kvStore.releaseLock(JpaTestDomainPersona.class);
     }
 
     @Test
diff --git a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/publishing/PublishingTestFactoryJpa.java b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/publishing/PublishingTestFactoryJpa.java
index 6eb7da0689..cdd37e61d2 100644
--- a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/publishing/PublishingTestFactoryJpa.java
+++ b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/publishing/PublishingTestFactoryJpa.java
@@ -52,7 +52,6 @@ import org.apache.isis.testdomain.jpa.entities.JpaInventory;
 import org.apache.isis.testdomain.jpa.entities.JpaProduct;
 import org.apache.isis.testdomain.publishing.PublishingTestFactoryAbstract.CommitListener;
 import org.apache.isis.testdomain.util.dto.BookDto;
-import org.apache.isis.testdomain.util.kv.KVStoreForTesting;
 import org.apache.isis.testing.fixtures.applib.fixturescripts.FixtureScripts;
 
 import static org.apache.isis.applib.services.wrapper.control.AsyncControl.returningVoid;
@@ -78,7 +77,6 @@ extends PublishingTestFactoryAbstract {
     private final CommitListener commitListener;
     private final JpaSupportService jpaSupport;
     private final FactoryService factoryService;
-    private final KVStoreForTesting kvStore;
 
     @Getter(onMethod_ = {@Override}, value = AccessLevel.PROTECTED)
     private final InteractionService interactionService;
@@ -90,7 +88,6 @@ extends PublishingTestFactoryAbstract {
 
     @Override
     protected void releaseContext(final PublishingTestContext context) {
-        kvStore.releaseLock(JpaTestDomainPersona.class);
     }
 
     @Override
@@ -104,7 +101,6 @@ extends PublishingTestFactoryAbstract {
         case ENTITY_PERSISTING:
 
             // given
-            kvStore.requestLock(JpaTestDomainPersona.class);
             fixtureScripts.runPersona(JpaTestDomainPersona.InventoryPurgeAll);
             break;
 
diff --git a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/kv/KVStoreForTesting.java b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/kv/KVStoreForTesting.java
index 59dcce412f..646fa88a2e 100644
--- a/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/kv/KVStoreForTesting.java
+++ b/regressiontests/stable/src/main/java/org/apache/isis/testdomain/util/kv/KVStoreForTesting.java
@@ -141,7 +141,7 @@ public class KVStoreForTesting {
 
     /** blocks until a new lock becomes available */
     @SneakyThrows
-    public void requestLock(final Class<?> callerType) {
+    public void requestLock2(final Class<?> callerType) {
         synchronized(this) {
             val latch = latchMap.get(callerType);
             if(latch!=null) {
@@ -155,7 +155,7 @@ public class KVStoreForTesting {
     }
 
     /** unblocks any threads waiting for a new lock */
-    public void releaseLock(final Class<?> callerType) {
+    public void releaseLock2(final Class<?> callerType) {
         synchronized(this) {
             val latch = latchMap.remove(callerType);
             if(latch!=null) {