Skip to content

Commit 68c8712

Browse files
committed
rationalize ridiculously long lists of @SkipForDialect
1 parent 8f1f13f commit 68c8712

File tree

1 file changed

+8
-39
lines changed

1 file changed

+8
-39
lines changed

hibernate-core/src/test/java/org/hibernate/orm/test/filter/FilterParameterTests.java

Lines changed: 8 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,14 @@
1919
import org.hibernate.boot.registry.StandardServiceRegistry;
2020
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
2121
import org.hibernate.cfg.AvailableSettings;
22-
import org.hibernate.community.dialect.AltibaseDialect;
23-
import org.hibernate.community.dialect.FirebirdDialect;
24-
import org.hibernate.community.dialect.InformixDialect;
25-
import org.hibernate.dialect.HANADialect;
2622
import org.hibernate.dialect.CockroachDialect;
27-
import org.hibernate.dialect.DB2Dialect;
28-
import org.hibernate.community.dialect.DerbyDialect;
29-
import org.hibernate.dialect.H2Dialect;
30-
import org.hibernate.dialect.HSQLDialect;
3123
import org.hibernate.dialect.MariaDBDialect;
3224
import org.hibernate.dialect.MySQLDialect;
33-
import org.hibernate.dialect.OracleDialect;
25+
import org.hibernate.dialect.PostgreSQLDialect;
3426
import org.hibernate.dialect.PostgresPlusDialect;
3527
import org.hibernate.dialect.SQLServerDialect;
36-
import org.hibernate.dialect.SybaseDialect;
3728
import org.hibernate.community.dialect.TiDBDialect;
29+
import org.hibernate.testing.orm.junit.RequiresDialect;
3830
import org.hibernate.type.NumericBooleanConverter;
3931
import org.hibernate.type.YesNoConverter;
4032

@@ -92,21 +84,9 @@ public void testYesNo(BiConsumer<SessionFactoryScope, Consumer<? extends SharedS
9284

9385
@ParameterizedTest
9486
@MethodSource("transactionKind")
95-
@SkipForDialect(dialectClass = H2Dialect.class, reason = "H2 silently converts a boolean to string types")
96-
@SkipForDialect(dialectClass = HSQLDialect.class, reason = "HSQL silently converts a boolean to string types")
97-
@SkipForDialect(dialectClass = DerbyDialect.class, reason = "Derby silently converts a boolean to string types")
98-
@SkipForDialect(dialectClass = DB2Dialect.class, reason = "DB2 silently converts a boolean to string types")
99-
@SkipForDialect(dialectClass = MySQLDialect.class, reason = "MySQL silently converts a boolean to string types")
100-
@SkipForDialect(dialectClass = MariaDBDialect.class, reason = "MariaDB silently converts a boolean to string types")
101-
@SkipForDialect(dialectClass = TiDBDialect.class, reason = "TiDB silently converts a boolean to string types")
102-
@SkipForDialect(dialectClass = SybaseDialect.class, matchSubTypes = true, reason = "Sybase silently converts a boolean to string types")
103-
@SkipForDialect(dialectClass = HANADialect.class, matchSubTypes = true, reason = "HANA silently converts a boolean to string types")
104-
@SkipForDialect(dialectClass = CockroachDialect.class, matchSubTypes = true, reason = "Cockroach silently converts a boolean to string types")
105-
@SkipForDialect(dialectClass = PostgresPlusDialect.class, reason = "PostgresPlus silently converts a boolean to string types")
106-
@SkipForDialect(dialectClass = FirebirdDialect.class, reason = "Firebird silently converts a boolean to string")
107-
@SkipForDialect(dialectClass = AltibaseDialect.class, reason = "Altibase silently converts a boolean to string")
108-
@SkipForDialect(dialectClass = OracleDialect.class, majorVersion = 23, reason = "Oracle 23 interprets Y and T as true and N and F as false, so this works")
109-
@SkipForDialect(dialectClass = InformixDialect.class)
87+
// most dialects silently convert boolean to string types
88+
@RequiresDialect(SQLServerDialect.class)
89+
@RequiresDialect(value = PostgreSQLDialect.class, matchSubTypes = false)
11090
public void testYesNoMismatch(BiConsumer<SessionFactoryScope, Consumer<? extends SharedSessionContract>> inTransaction) {
11191
scope.inTransaction( (session) -> {
11292
session.disableFilter( "subDepartmentFilter" );
@@ -147,20 +127,9 @@ public void testNumeric(BiConsumer<SessionFactoryScope, Consumer<? extends Share
147127

148128
@ParameterizedTest
149129
@MethodSource("transactionKind")
150-
@SkipForDialect(dialectClass = H2Dialect.class, reason = "H2 silently converts a boolean to integral types")
151-
@SkipForDialect(dialectClass = OracleDialect.class, reason = "Oracle silently converts a boolean to integral types")
152-
@SkipForDialect(dialectClass = HSQLDialect.class, reason = "HSQL silently converts a boolean to integral types")
153-
@SkipForDialect(dialectClass = DerbyDialect.class, reason = "Derby silently converts a boolean to integral types")
154-
@SkipForDialect(dialectClass = DB2Dialect.class, reason = "DB2 silently converts a boolean to integral types")
155-
@SkipForDialect(dialectClass = MySQLDialect.class, reason = "MySQL silently converts a boolean to integral types")
156-
@SkipForDialect(dialectClass = MariaDBDialect.class, reason = "MariaDB silently converts a boolean to integral types")
157-
@SkipForDialect(dialectClass = TiDBDialect.class, reason = "TiDB silently converts a boolean to integral types")
158-
@SkipForDialect(dialectClass = SQLServerDialect.class, reason = "SQL Server silently converts a boolean to integral types")
159-
@SkipForDialect(dialectClass = AltibaseDialect.class, reason = "Altibase silently converts a boolean to integral types")
160-
@SkipForDialect(dialectClass = SybaseDialect.class, matchSubTypes = true, reason = "Sybase silently converts a boolean to integral types")
161-
@SkipForDialect(dialectClass = HANADialect.class, matchSubTypes = true, reason = "HANA silently converts a boolean to integral types")
162-
@SkipForDialect(dialectClass = FirebirdDialect.class, matchSubTypes = true, reason = "Firebird silently converts a boolean to integral types")
163-
@SkipForDialect(dialectClass = InformixDialect.class)
130+
// most dialects silently convert boolean to integral types
131+
@RequiresDialect(PostgreSQLDialect.class)
132+
@RequiresDialect(CockroachDialect.class)
164133
public void testNumericMismatch(BiConsumer<SessionFactoryScope, Consumer<? extends SharedSessionContract>> inTransaction) {
165134
scope.inTransaction( (session) -> {
166135
session.disableFilter( "subDepartmentFilter" );

0 commit comments

Comments
 (0)