HHH-13783: fix test failure in HiLoSequenceMismatchStrategyTest

This commit is contained in:
Jonathan Bregler 2020-01-28 21:36:32 +01:00
parent b51d34a22d
commit b178f9e23a
1 changed files with 18 additions and 21 deletions

View File

@ -8,7 +8,6 @@ package org.hibernate.test.idgen.enhanced.sequence;
import java.sql.Connection; import java.sql.Connection;
import java.sql.SQLException; import java.sql.SQLException;
import java.sql.SQLSyntaxErrorException;
import java.sql.Statement; import java.sql.Statement;
import javax.persistence.Entity; import javax.persistence.Entity;
import javax.persistence.GeneratedValue; import javax.persistence.GeneratedValue;
@ -47,14 +46,13 @@ public class HiLoSequenceMismatchStrategyTest extends BaseCoreFunctionalTestCase
@Override @Override
protected Class<?>[] getAnnotatedClasses() { protected Class<?>[] getAnnotatedClasses() {
return new Class[] { TestEntity.class }; return new Class[]{ TestEntity.class };
} }
protected void configure(Configuration configuration) { protected void configure(Configuration configuration) {
configuration.setProperty( configuration.setProperty(
AvailableSettings.SEQUENCE_INCREMENT_SIZE_MISMATCH_STRATEGY, AvailableSettings.SEQUENCE_INCREMENT_SIZE_MISMATCH_STRATEGY,
SequenceMismatchStrategy.EXCEPTION.toString() SequenceMismatchStrategy.EXCEPTION.toString() );
);
} }
@Override @Override
@ -65,16 +63,18 @@ public class HiLoSequenceMismatchStrategyTest extends BaseCoreFunctionalTestCase
String[] dropSequenceStatements = getDialect().getDropSequenceStrings( sequenceName ); String[] dropSequenceStatements = getDialect().getDropSequenceStrings( sequenceName );
String[] createSequenceStatements = getDialect().getCreateSequenceStrings( sequenceName, 1, 1 ); String[] createSequenceStatements = getDialect().getCreateSequenceStrings( sequenceName, 1, 1 );
try (Connection connection = connectionProvider.getConnection(); try ( Connection connection = connectionProvider.getConnection();
Statement statement = connection.createStatement()) { Statement statement = connection.createStatement() ) {
try {
for ( String dropSequenceStatement : dropSequenceStatements ) { for ( String dropSequenceStatement : dropSequenceStatements ) {
try {
statement.execute( dropSequenceStatement ); statement.execute( dropSequenceStatement );
} }
catch (SQLException e) {
// ignore
}
} }
catch (SQLSyntaxErrorException e) {
//ignore
}
for ( String createSequenceStatement : createSequenceStatements ) { for ( String createSequenceStatement : createSequenceStatements ) {
statement.execute( createSequenceStatement ); statement.execute( createSequenceStatement );
} }
@ -84,7 +84,6 @@ public class HiLoSequenceMismatchStrategyTest extends BaseCoreFunctionalTestCase
} }
} }
@Test @Test
public void testSequenceMismatchStrategyNotApplied() { public void testSequenceMismatchStrategyNotApplied() {
EntityPersister persister = sessionFactory().getEntityPersister( TestEntity.class.getName() ); EntityPersister persister = sessionFactory().getEntityPersister( TestEntity.class.getName() );
@ -102,17 +101,15 @@ public class HiLoSequenceMismatchStrategyTest extends BaseCoreFunctionalTestCase
@Entity(name = "TestEntity") @Entity(name = "TestEntity")
public static class TestEntity { public static class TestEntity {
@Id @Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "hilo_sequence_generator") @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "hilo_sequence_generator")
@GenericGenerator( @GenericGenerator(name = "hilo_sequence_generator", strategy = "org.hibernate.id.enhanced.SequenceStyleGenerator", parameters = {
name = "hilo_sequence_generator", @Parameter(name = "sequence_name", value = sequenceName),
strategy = "org.hibernate.id.enhanced.SequenceStyleGenerator", @Parameter(name = "initial_value", value = "1"),
parameters = { @Parameter(name = "increment_size", value = "10"),
@Parameter(name = "sequence_name", value = sequenceName), @Parameter(name = "optimizer", value = "hilo")
@Parameter(name = "initial_value", value = "1"), })
@Parameter(name = "increment_size", value = "10"),
@Parameter(name = "optimizer", value = "hilo")
})
private Long id; private Long id;
private String aString; private String aString;