Skip to content

Commit 7ea39c8

Browse files
committed
skip some tests on Informix
1 parent 02d4a8f commit 7ea39c8

File tree

8 files changed

+50
-17
lines changed

8 files changed

+50
-17
lines changed

hibernate-core/src/test/java/org/hibernate/orm/test/constraint/ConstraintInterpretationTest2.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.hibernate.testing.orm.junit.EntityManagerFactoryScope;
2828
import org.hibernate.testing.orm.junit.Jpa;
2929
import org.hibernate.testing.orm.junit.RequiresDialect;
30+
import org.hibernate.testing.orm.junit.SkipForDialect;
3031
import org.junit.jupiter.api.Test;
3132

3233
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -101,6 +102,9 @@ public class ConstraintInterpretationTest2 {
101102
}
102103
} );
103104
}
105+
106+
@SkipForDialect(dialectClass = InformixDialect.class,
107+
reason = "multi-column check constraints must be created using 'alter table', and we don't have a StandardCheckConstraintExporter")
104108
@Test void testCheck(EntityManagerFactoryScope scope) {
105109
scope.inTransaction( em -> {
106110
try {

hibernate-core/src/test/java/org/hibernate/orm/test/datasource/DataSourceTest.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@
88
import jakarta.persistence.Id;
99
import org.hibernate.cfg.Environment;
1010
import org.hibernate.cfg.JdbcSettings;
11+
import org.hibernate.community.dialect.InformixDialect;
1112
import org.hibernate.dialect.DB2Dialect;
13+
import org.hibernate.dialect.Dialect;
1214
import org.hibernate.dialect.OracleDialect;
1315
import org.hibernate.internal.log.ConnectionInfoLogger;
1416
import org.hibernate.testing.logger.LogInspectionHelper;
@@ -35,7 +37,9 @@ void test(EntityManagerFactoryScope scope) {
3537
LogInspectionHelper.registerListener( listener, ConnectionInfoLogger.INSTANCE );
3638
scope.getEntityManagerFactory();
3739
LogInspectionHelper.clearAllListeners( ConnectionInfoLogger.INSTANCE );
38-
assertTrue( scope.getDialect() instanceof OracleDialect dialect && dialect.isAutonomous()
40+
Dialect dialect = scope.getDialect();
41+
assertTrue( dialect instanceof OracleDialect od && od.isAutonomous()
42+
|| dialect instanceof InformixDialect // Informix metadata does not include the URL
3943
|| listener.seen );
4044
}
4145

hibernate-core/src/test/java/org/hibernate/orm/test/hql/FunctionNameAsColumnTest.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,12 @@
1515
import org.hibernate.Session;
1616
import org.hibernate.cfg.Configuration;
1717
import org.hibernate.cfg.Environment;
18+
import org.hibernate.community.dialect.InformixDialect;
1819
import org.hibernate.dialect.PostgresPlusDialect;
1920
import org.hibernate.dialect.SybaseASEDialect;
2021

21-
import org.hibernate.testing.SkipForDialect;
2222
import org.hibernate.testing.junit4.BaseCoreFunctionalTestCase;
23+
import org.hibernate.testing.orm.junit.SkipForDialect;
2324
import org.junit.After;
2425
import org.junit.Assume;
2526
import org.junit.Test;
@@ -33,8 +34,9 @@
3334
*
3435
* @author Gail Badner
3536
*/
36-
@SkipForDialect(value = SybaseASEDialect.class, jiraKey = "HHH-6426")
37-
@SkipForDialect(value = PostgresPlusDialect.class, comment = "Almost all of the tests result in 'ambiguous column' errors.")
37+
@SkipForDialect(dialectClass = SybaseASEDialect.class, reason = "HHH-6426")
38+
@SkipForDialect(dialectClass = PostgresPlusDialect.class,
39+
reason = "Almost all of the tests result in 'ambiguous column' errors.")
3840
public class FunctionNameAsColumnTest extends BaseCoreFunctionalTestCase {
3941
@Override
4042
protected String getBaseForMappings() {
@@ -200,6 +202,7 @@ public void testGetMultiColumnSameNameAsArgFunctionCriteria() {
200202
}
201203

202204
@Test
205+
@SkipForDialect(dialectClass = InformixDialect.class, reason = "Ambiguous column")
203206
public void testGetMultiColumnSameNameAsNoArgFunctionHQL() {
204207
Assume.assumeFalse(
205208
"current_date requires () but test is for noarg function that does not require ()",
@@ -254,6 +257,7 @@ public void testGetMultiColumnSameNameAsNoArgFunctionHQL() {
254257
}
255258

256259
@Test
260+
@SkipForDialect(dialectClass = InformixDialect.class, reason = "Ambiguous column")
257261
public void testGetMultiColumnSameNameAsNoArgFunctionCriteria() {
258262
Assume.assumeFalse(
259263
"current_date requires () but test is for noarg function that does not require ()",

hibernate-core/src/test/java/org/hibernate/orm/test/jpa/criteria/CoalesceTest.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,13 @@
77
import java.math.BigDecimal;
88
import java.util.List;
99

10+
import org.hibernate.community.dialect.InformixDialect;
1011
import org.hibernate.testing.orm.junit.JiraKey;
1112
import org.hibernate.testing.orm.junit.EntityManagerFactoryScope;
1213
import org.hibernate.testing.orm.junit.Jira;
1314
import org.hibernate.testing.orm.junit.Jpa;
1415

16+
import org.hibernate.testing.orm.junit.SkipForDialect;
1517
import org.junit.jupiter.api.AfterAll;
1618
import org.junit.jupiter.api.BeforeAll;
1719
import org.junit.jupiter.api.Test;
@@ -42,6 +44,8 @@
4244
@JiraKey( value = "HHH-15291")
4345
public class CoalesceTest {
4446
@Test
47+
@SkipForDialect(dialectClass = InformixDialect.class,
48+
reason = "Informix does not support parameters in COALESCE" )
4549
public void hhh15291JPQL1Test(EntityManagerFactoryScope scope) {
4650
scope.inEntityManager(
4751
entityManager -> {
@@ -57,6 +61,8 @@ public void hhh15291JPQL1Test(EntityManagerFactoryScope scope) {
5761
}
5862

5963
@Test
64+
@SkipForDialect(dialectClass = InformixDialect.class,
65+
reason = "Informix does not support parameters in COALESCE" )
6066
public void hhh15291JPQL2Test(EntityManagerFactoryScope scope) {
6167
scope.inEntityManager(
6268
entityManager -> {
@@ -65,11 +71,14 @@ public void hhh15291JPQL2Test(EntityManagerFactoryScope scope) {
6571
String.class
6672
);
6773
query2.setParameter( 1, "Sample" );
74+
query2.getResultList();
6875
}
6976
);
7077
}
7178

7279
@Test
80+
@SkipForDialect(dialectClass = InformixDialect.class,
81+
reason = "Informix does not support parameters in COALESCE" )
7382
public void hhh15291Criteria1Test(EntityManagerFactoryScope scope) {
7483
scope.inEntityManager(
7584
entityManager -> {
@@ -90,6 +99,8 @@ public void hhh15291Criteria1Test(EntityManagerFactoryScope scope) {
9099
}
91100

92101
@Test
102+
@SkipForDialect(dialectClass = InformixDialect.class,
103+
reason = "Informix does not support parameters in COALESCE" )
93104
public void hhh15291Criteria2Test(EntityManagerFactoryScope scope) {
94105
scope.inEntityManager(
95106
entityManager -> {

hibernate-core/src/test/java/org/hibernate/orm/test/jpa/criteria/basic/ConcatTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
import org.hibernate.testing.orm.junit.JiraKey;
2424

2525
import static org.hamcrest.CoreMatchers.is;
26-
import static org.junit.Assert.assertThat;
26+
import static org.hamcrest.MatcherAssert.assertThat;
2727

2828
/**
2929
* @author Andrea Boriero
@@ -58,7 +58,7 @@ public void setUp() {
5858
}
5959

6060
@Test
61-
public void testSelectCaseWithConcat() throws Exception {
61+
public void testSelectCaseWithConcat() {
6262
EntityManager entityManager = getOrCreateEntityManager();
6363
entityManager.getTransaction().begin();
6464
try {
@@ -91,7 +91,7 @@ public void testSelectCaseWithConcat() throws Exception {
9191
}
9292

9393
@Test
94-
public void testConcat() throws Exception {
94+
public void testConcat() {
9595
EntityManager entityManager = getOrCreateEntityManager();
9696
entityManager.getTransaction().begin();
9797
try {

hibernate-core/src/test/java/org/hibernate/orm/test/mapping/generated/sql/ImmutableSqlGeneratedTest.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import jakarta.persistence.Id;
99
import org.hibernate.annotations.Generated;
1010
import org.hibernate.annotations.Immutable;
11+
import org.hibernate.community.dialect.InformixDialect;
1112
import org.hibernate.dialect.SybaseASEDialect;
1213
import org.hibernate.generator.EventType;
1314
import org.hibernate.testing.orm.junit.DomainModel;
@@ -20,18 +21,19 @@
2021
import java.math.BigDecimal;
2122
import java.time.LocalDateTime;
2223

23-
import static org.junit.Assert.assertEquals;
24-
import static org.junit.Assert.assertFalse;
25-
import static org.junit.Assert.assertNotNull;
24+
import static org.junit.jupiter.api.Assertions.assertEquals;
25+
import static org.junit.jupiter.api.Assertions.assertNotNull;
26+
import static org.junit.jupiter.api.Assertions.assertNotSame;
2627

2728
/**
2829
* @author Gavin King
2930
*/
30-
@SuppressWarnings("JUnitMalformedDeclaration")
3131
@DomainModel(annotatedClasses = ImmutableSqlGeneratedTest.OrderLine.class)
3232
@SessionFactory
3333
@SkipForDialect(dialectClass = SybaseASEDialect.class,
3434
reason = "The name 'current_timestamp' is illegal in this context. Only constants, constant expressions, or variables allowed here.")
35+
@SkipForDialect( dialectClass = InformixDialect.class,
36+
reason = "No 'current_timestamp' function on Informix")
3537
public class ImmutableSqlGeneratedTest {
3638

3739
@Test
@@ -65,7 +67,7 @@ public void test(SessionFactoryScope scope) {
6567
entity.status = "old";
6668
session.flush();
6769
assertNotNull( entity.updated );
68-
assertFalse( previous == entity.updated );
70+
assertNotSame( previous, entity.updated );
6971
} );
7072
scope.inTransaction( session -> {
7173
OrderLine entity = session.createQuery("from WithDefault", OrderLine.class ).getSingleResult();

hibernate-core/src/test/java/org/hibernate/orm/test/query/hql/LikeEscapeDefaultTest.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
import java.util.List;
88

9+
import org.hibernate.community.dialect.InformixDialect;
910
import org.hibernate.query.Query;
1011

1112
import org.hibernate.testing.orm.domain.StandardDomainModel;
@@ -14,6 +15,7 @@
1415
import org.hibernate.testing.orm.junit.ServiceRegistry;
1516
import org.hibernate.testing.orm.junit.SessionFactory;
1617
import org.hibernate.testing.orm.junit.SessionFactoryScope;
18+
import org.hibernate.testing.orm.junit.SkipForDialect;
1719
import org.junit.jupiter.api.AfterEach;
1820
import org.junit.jupiter.api.BeforeEach;
1921
import org.junit.jupiter.api.Test;
@@ -49,6 +51,8 @@ public void tearDown(SessionFactoryScope scope) {
4951
}
5052

5153
@Test
54+
@SkipForDialect(dialectClass = InformixDialect.class,
55+
reason = "Informix does not support empty escape ''")
5256
public void testDefaultEscapeBackslash(SessionFactoryScope scope) {
5357
scope.inTransaction( session -> {
5458
Query<BasicEntity> q = session.createQuery(
@@ -62,6 +66,8 @@ public void testDefaultEscapeBackslash(SessionFactoryScope scope) {
6266
}
6367

6468
@Test
69+
@SkipForDialect(dialectClass = InformixDialect.class,
70+
reason = "Informix does not support empty escape ''")
6571
public void testDefaultEscapeBackslashLiteral(SessionFactoryScope scope) {
6672
scope.inTransaction( session -> {
6773
Query<BasicEntity> q = session.createQuery(
@@ -75,6 +81,8 @@ public void testDefaultEscapeBackslashLiteral(SessionFactoryScope scope) {
7581
}
7682

7783
@Test
84+
@SkipForDialect(dialectClass = InformixDialect.class,
85+
reason = "Informix does not support empty escape ''")
7886
public void testDefaultEscapeNoResults(SessionFactoryScope scope) {
7987
scope.inTransaction( session -> {
8088
Query<BasicEntity> q = session.createQuery(

hibernate-core/src/test/java/org/hibernate/orm/test/schemaupdate/checkconstraint/table/TableCheckConstraintTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131

3232
@BaseUnitTest
3333
@JiraKey("HHH-18054")
34-
@RequiresDialectFeature(feature = DialectFeatureChecks.SupportsColumnCheck.class)
34+
@RequiresDialectFeature(feature = DialectFeatureChecks.SupportsTableCheck.class)
3535
public class TableCheckConstraintTest {
3636
static final String CONSTRAINTS = "NAME_COLUMN is not null";
3737
static final String SECONDARY_TABLE_CONSTRAINTS = "SECOND_NAME is not null";
@@ -175,8 +175,8 @@ private static boolean tableCreationStatementContainsConstraints(
175175
String[] fileContent,
176176
String tableName,
177177
String secondaryTableConstraints) {
178-
for ( int i = 0; i < fileContent.length; i++ ) {
179-
String statement = fileContent[i].toUpperCase( Locale.ROOT );
178+
for ( String string : fileContent ) {
179+
String statement = string.toUpperCase( Locale.ROOT );
180180
if ( statement.contains( "CREATE TABLE " + tableName.toUpperCase( Locale.ROOT ) ) ) {
181181
if ( statement.contains( secondaryTableConstraints.toUpperCase( Locale.ROOT ) ) ) {
182182
return true;
@@ -186,10 +186,10 @@ private static boolean tableCreationStatementContainsConstraints(
186186
return false;
187187
}
188188

189-
private void createSchema(Class... annotatedClasses) {
189+
private void createSchema(Class<?>... annotatedClasses) {
190190
final MetadataSources metadataSources = new MetadataSources( ssr );
191191

192-
for ( Class c : annotatedClasses ) {
192+
for ( Class<?> c : annotatedClasses ) {
193193
metadataSources.addAnnotatedClass( c );
194194
}
195195
metadata = (MetadataImplementor) metadataSources.buildMetadata();

0 commit comments

Comments
 (0)