From 7d291f8a6f52fc01a4505c11b188c8cb3d879d6c Mon Sep 17 00:00:00 2001 From: Enrico Olivelli Date: Sat, 17 Apr 2021 12:30:07 +0200 Subject: [PATCH] Exclude some tests with HerdDBDictionary --- .../org/apache/openjpa/persistence/TestUnwrap.java | 10 ++++++++++ .../persistence/annotations/TestGenerators.java | 8 ++++++++ .../openjpa/persistence/annotations/TestOneToMany.java | 10 ++++++++++ .../batch/exception/TestBatchLimitException.java | 4 ++++ .../datacache/TestBulkJPQLAndDataCache.java | 4 ++++ .../datacache/TestBulkUpdatesAndVersionColumn.java | 5 ++++- .../datacache/TestBulkUpdatesDataCacheEviction.java | 4 ++++ .../persistence/detachment/TestDetachNoStateField.java | 4 ++++ .../persistence/jdbc/TestTimestampPKDeletion.java | 4 ++++ .../persistence/jdbc/annotations/TestEJBEmbedded.java | 4 ++++ .../jdbc/annotations/TestTablePerClassInheritance.java | 4 ++++ .../jdbc/schema/TestSchemaGenerationProperties.java | 3 ++- .../persistence/jdbc/update/TestParentChild.java | 5 +++++ 13 files changed, 67 insertions(+), 2 deletions(-) diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/TestUnwrap.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/TestUnwrap.java index b6fe689e9..7620c1437 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/TestUnwrap.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/TestUnwrap.java @@ -30,12 +30,22 @@ import javax.persistence.Query; import org.apache.openjpa.jdbc.conf.JDBCConfiguration; import org.apache.openjpa.jdbc.sql.DerbyDictionary; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.kernel.QueryLanguages; import org.apache.openjpa.lib.jdbc.DelegatingConnection; +import org.apache.openjpa.persistence.detachment.model.NoDetachedStateEntityFieldAccess; +import org.apache.openjpa.persistence.detachment.model.NoDetachedStateEntityPropertyAccess; import org.apache.openjpa.persistence.test.SingleEMFTestCase; +import static org.junit.Assume.assumeFalse; + public class TestUnwrap extends SingleEMFTestCase { + @Override + protected void setUp(Object... props) { + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); + } + /** * Tests a query can be unwrapped as an instance of a series of class or * interface. diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestGenerators.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestGenerators.java index ac66db786..29d7e01ec 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestGenerators.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestGenerators.java @@ -20,9 +20,14 @@ package org.apache.openjpa.persistence.annotations; import javax.persistence.Query; +import org.apache.openjpa.jdbc.conf.JDBCConfiguration; +import org.apache.openjpa.jdbc.sql.DBDictionary; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManager; import org.apache.openjpa.persistence.annotations.common.apps.annotApp.annotype.Generator; +import static org.junit.Assume.assumeFalse; + /** * Test for generators * @@ -40,6 +45,9 @@ public class TestGenerators extends AnnotationTestCase public void setUp() throws Exception { deleteAll(Generator.class); + JDBCConfiguration conf = (JDBCConfiguration) getEmf().getConfiguration(); + DBDictionary dict = conf.getDBDictionaryInstance(); + assumeFalse(dict instanceof HerdDBDictionary); } public void testGet() { diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestOneToMany.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestOneToMany.java index 8280155a8..f5c5b543d 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestOneToMany.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/annotations/TestOneToMany.java @@ -20,10 +20,17 @@ package org.apache.openjpa.persistence.annotations; import java.util.Collection; +import org.apache.openjpa.jdbc.conf.JDBCConfiguration; +import org.apache.openjpa.jdbc.sql.DBDictionary; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; +import org.apache.openjpa.jdbc.sql.OracleDictionary; +import org.apache.openjpa.jdbc.sql.PostgresDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManager; import org.apache.openjpa.persistence.annotations.common.apps.annotApp.annotype.AnnoTest1; import org.apache.openjpa.persistence.annotations.common.apps.annotApp.annotype.AnnoTest2; +import static org.junit.Assume.assumeFalse; + /** * Test for 1-m @@ -41,6 +48,9 @@ public class TestOneToMany extends AnnotationTestCase public void setUp() { deleteAll(AnnoTest1.class); deleteAll(AnnoTest2.class); + JDBCConfiguration conf = (JDBCConfiguration) getEmf().getConfiguration(); + DBDictionary dict = conf.getDBDictionaryInstance(); + assumeFalse(dict instanceof HerdDBDictionary); } public void testOneToMany() { diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/batch/exception/TestBatchLimitException.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/batch/exception/TestBatchLimitException.java index b129ac357..b356643bd 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/batch/exception/TestBatchLimitException.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/batch/exception/TestBatchLimitException.java @@ -23,12 +23,15 @@ import javax.persistence.EntityManagerFactory; import org.apache.openjpa.jdbc.conf.JDBCConfiguration; import org.apache.openjpa.jdbc.sql.DBDictionary; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.jdbc.sql.OracleDictionary; import org.apache.openjpa.jdbc.sql.PostgresDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManagerFactorySPI; import org.apache.openjpa.persistence.test.AbstractPersistenceTestCase; import org.apache.openjpa.util.ExceptionInfo; +import static org.junit.Assume.assumeFalse; + //This test was created for OPENJPA-1550. In this issue the user was //not able to get the 'failed object' (the object causing the failure) when //batch limit was -1 or a value greater than 1. Also, they found that the @@ -63,6 +66,7 @@ public class TestBatchLimitException extends AbstractPersistenceTestCase { DBDictionary dict = conf.getDBDictionaryInstance(); isOracle = dict instanceof OracleDictionary; isPostgres = dict instanceof PostgresDictionary; + assumeFalse(dict instanceof HerdDBDictionary); return emf; } diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkJPQLAndDataCache.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkJPQLAndDataCache.java index 09255b5bf..a93339006 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkJPQLAndDataCache.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkJPQLAndDataCache.java @@ -22,11 +22,14 @@ import java.util.List; import javax.persistence.EntityManager; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManager; import org.apache.openjpa.persistence.OpenJPAPersistence; import org.apache.openjpa.persistence.simple.AllFieldTypes; import org.apache.openjpa.persistence.test.SingleEMFTestCase; +import static org.junit.Assume.assumeFalse; + public class TestBulkJPQLAndDataCache extends SingleEMFTestCase { @@ -34,6 +37,7 @@ public class TestBulkJPQLAndDataCache @Override public void setUp() throws Exception { + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); setUp("openjpa.DataCache", "true", "openjpa.QueryCache", "true", "openjpa.RemoteCommitProvider", "sjvm", diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesAndVersionColumn.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesAndVersionColumn.java index 84fa3288b..ec0824aa5 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesAndVersionColumn.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesAndVersionColumn.java @@ -25,10 +25,13 @@ import javax.persistence.RollbackException; import org.apache.openjpa.jdbc.meta.ClassMapping; import org.apache.openjpa.jdbc.meta.FieldMapping; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.persistence.JPAFacadeHelper; import org.apache.openjpa.persistence.OpenJPAEntityManager; import org.apache.openjpa.persistence.test.SingleEMFTestCase; +import static org.junit.Assume.assumeFalse; + public class TestBulkUpdatesAndVersionColumn extends SingleEMFTestCase { @@ -37,7 +40,7 @@ public class TestBulkUpdatesAndVersionColumn setUp("openjpa.DataCache", "true", "openjpa.RemoteCommitProvider", "sjvm", OptimisticLockInstance.class, CLEAR_TABLES); - + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); OpenJPAEntityManager em = emf.createEntityManager(); em.getTransaction().begin(); OptimisticLockInstance pc = new OptimisticLockInstance("foo"); diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesDataCacheEviction.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesDataCacheEviction.java index 92311a63b..5e48a123e 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesDataCacheEviction.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/datacache/TestBulkUpdatesDataCacheEviction.java @@ -21,10 +21,13 @@ package org.apache.openjpa.persistence.datacache; import javax.persistence.Cache; import javax.persistence.EntityManager; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManagerFactorySPI; import org.apache.openjpa.persistence.OpenJPAEntityManagerSPI; import org.apache.openjpa.persistence.test.SingleEMFTestCase; +import static org.junit.Assume.assumeFalse; + public class TestBulkUpdatesDataCacheEviction extends SingleEMFTestCase { Object[] props = new Object[] { CLEAR_TABLES, CachedEntityStatistics.class, "openjpa.DataCache", "true" }; Object[] noEvictProps = new Object[] { CLEAR_TABLES, CachedEntityStatistics.class @@ -33,6 +36,7 @@ public class TestBulkUpdatesDataCacheEviction extends SingleEMFTestCase { @Override public void setUp() throws Exception { super.setUp(props); + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); } /** diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/detachment/TestDetachNoStateField.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/detachment/TestDetachNoStateField.java index da5d5e0b5..aa0c5dbe4 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/detachment/TestDetachNoStateField.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/detachment/TestDetachNoStateField.java @@ -19,17 +19,21 @@ package org.apache.openjpa.persistence.detachment; import org.apache.openjpa.enhance.PersistenceCapable; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManagerSPI; import org.apache.openjpa.persistence.detachment.model.NoDetachedStateEntityFieldAccess; import org.apache.openjpa.persistence.detachment.model.NoDetachedStateEntityPropertyAccess; import org.apache.openjpa.persistence.test.SingleEMFTestCase; +import static org.junit.Assume.assumeFalse; + public class TestDetachNoStateField extends SingleEMFTestCase { @Override protected void setUp(Object... props) { super.setUp(DROP_TABLES, "openjpa.DetachState", "loaded(DetachedStateField=false)", NoDetachedStateEntityPropertyAccess.class, NoDetachedStateEntityFieldAccess.class); + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); loadDB(); } diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestTimestampPKDeletion.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestTimestampPKDeletion.java index bd55a9010..a2863450d 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestTimestampPKDeletion.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/TestTimestampPKDeletion.java @@ -24,13 +24,17 @@ import javax.persistence.EntityManager; import javax.persistence.EntityTransaction; import javax.persistence.Query; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.persistence.simple.EntityWithTimestampPK; import org.apache.openjpa.persistence.test.SQLListenerTestCase; +import static org.junit.Assume.assumeFalse; + public class TestTimestampPKDeletion extends SQLListenerTestCase { @Override public void setUp() { + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); setUp(EntityWithTimestampPK.class); } diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestEJBEmbedded.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestEJBEmbedded.java index 80f1e107e..50cc35081 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestEJBEmbedded.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestEJBEmbedded.java @@ -31,12 +31,15 @@ import org.apache.openjpa.jdbc.meta.strats.ClobValueHandler; import org.apache.openjpa.jdbc.meta.strats.MaxEmbeddedClobFieldStrategy; import org.apache.openjpa.jdbc.meta.strats.StringFieldStrategy; import org.apache.openjpa.jdbc.sql.DBDictionary; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.meta.ClassMetaData; import org.apache.openjpa.meta.FieldMetaData; import org.apache.openjpa.persistence.JPAFacadeHelper; import org.apache.openjpa.persistence.OpenJPAEntityManagerFactorySPI; import org.apache.openjpa.persistence.test.SingleEMFTestCase; +import static org.junit.Assume.assumeFalse; + /** * Test for embedded * @@ -58,6 +61,7 @@ public class TestEJBEmbedded extends SingleEMFTestCase { setUp(EmbedOwner.class, EmbedValue.class, CLEAR_TABLES // ,"openjpa.Log","SQL=trace" ); + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); } public void testEmbedded() { diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestTablePerClassInheritance.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestTablePerClassInheritance.java index 84a7f31a8..9e2f81797 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestTablePerClassInheritance.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/annotations/TestTablePerClassInheritance.java @@ -22,9 +22,12 @@ import org.apache.openjpa.jdbc.conf.JDBCConfiguration; import org.apache.openjpa.jdbc.meta.ClassMapping; import org.apache.openjpa.jdbc.meta.strats.FullClassStrategy; import org.apache.openjpa.jdbc.meta.strats.NoneDiscriminatorStrategy; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManager; import org.apache.openjpa.persistence.test.SingleEMFTestCase; +import static org.junit.Assume.assumeFalse; + /** *

Test that InheritanceType.TABLE_PER_CLASS JPA mapping is translated * correctly. See the kodo.jdbc.meta.tableperclass test package @@ -39,6 +42,7 @@ public class TestTablePerClassInheritance public void setUp() { setUp(TablePerClass1.class, TablePerClass2.class, EmbedOwner.class, EmbedValue.class, CLEAR_TABLES); + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); } public void testMapping() { diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/schema/TestSchemaGenerationProperties.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/schema/TestSchemaGenerationProperties.java index fc46ac4ae..128a51db1 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/schema/TestSchemaGenerationProperties.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/schema/TestSchemaGenerationProperties.java @@ -20,6 +20,7 @@ package org.apache.openjpa.persistence.jdbc.schema; import static org.apache.openjpa.jdbc.identifier.DBIdentifier.newTable; import static org.apache.openjpa.jdbc.identifier.QualifiedDBIdentifier.getPath; +import static org.junit.Assume.assumeFalse; import java.io.File; import java.sql.SQLException; @@ -31,6 +32,7 @@ import org.apache.openjpa.jdbc.meta.MappingTool; import org.apache.openjpa.jdbc.schema.SchemaGroup; import org.apache.openjpa.jdbc.schema.SchemaTool; import org.apache.openjpa.jdbc.sql.DBDictionary; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.jdbc.sql.PostgresDictionary; import org.apache.openjpa.jdbc.sql.SQLServerDictionary; import org.apache.openjpa.persistence.OpenJPAEntityManager; @@ -75,7 +77,6 @@ public class TestSchemaGenerationProperties extends BaseJDBCTest { @Override public void setUp() throws Exception { super.setUp(); - OpenJPAEntityManagerFactory pmf = getEmf(new HashMap()); pmf.createEntityManager(); JDBCConfiguration conf = (JDBCConfiguration) ((OpenJPAEntityManagerFactorySPI) pmf).getConfiguration(); diff --git a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/update/TestParentChild.java b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/update/TestParentChild.java index 3f43b462b..7187f5567 100644 --- a/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/update/TestParentChild.java +++ b/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/update/TestParentChild.java @@ -22,10 +22,14 @@ import javax.persistence.EntityManager; import org.apache.openjpa.jdbc.meta.FieldMapping; import org.apache.openjpa.jdbc.schema.ForeignKey; +import org.apache.openjpa.jdbc.sql.HerdDBDictionary; import org.apache.openjpa.meta.ClassMetaData; import org.apache.openjpa.meta.MetaDataRepository; import org.apache.openjpa.persistence.test.CombinatorialPersistenceTestCase; +import static org.junit.Assume.assumeFalse; +import static org.junit.Assume.assumeTrue; + /** * Tests for SQL statement ordering capabilities of different update strategies * for a Parent-Child model against different physical database constraints. @@ -103,6 +107,7 @@ public class TestParentChild extends CombinatorialPersistenceTestCase { @Override public void setUp() { + assumeFalse(this.getDBDictionary() instanceof HerdDBDictionary); // The options can also be added in setup() as well but then // coutTestCase() will only record test methods and not multiply them // with number of configuration combinations the same tests will run.