Hi, I faced weird exception when SrpingBoot integration test is run. ApplicationContext is faling due to camunda database table:
Please share the knowledge how to avoid this
Caused by: org.camunda.bpm.engine.ProcessEngineException: ENGINE-03017 Could not perform operation 'create' on database schema for SQL Statement: '--
--
--
--
create table ACT_GE_PROPERTY (
NAME_ varchar(64),
VALUE_ varchar(300),
REV_ integer,
primary key (NAME_)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_bin'.
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL expression "
CREATE TABLE ACT_GE_PROPERTY (
NAME_ VARCHAR(64),
VALUE_ VARCHAR(300),
REV_ INTEGER,
PRIMARY KEY (NAME_)
) ENGINE=[*]INNODB DEFAULT CHARSET=UTF8 COLLATE UTF8_BIN"; expected "identifier"
Syntax error in SQL statement "
This is the simple test I ran
@RunWith(SpringRunner.class)
@SpringBootTest
@Import({CommonTestConfig.class})
@TestPropertySource("classpath:application-test.properties")
public class SendToContactUpdateSiqResponseTaskTest {
@Autowired
private SendToContactUpdateSiqResponseTask sendToContactUpdateSiqResponseTask;
@Mock
private DelegateExecution delegateExecution;
@Test
public void executeTest() throws Exception{
sendToContactUpdateSiqResponseTask.execute(delegateExecution);
}
}
@TestConfiguration
public class CommonTestConfig {
@Bean
public DataSource dataSource() {
return new EmbeddedDatabaseBuilder()
.setName(UUID.randomUUID().toString())
.setType(EmbeddedDatabaseType.H2)
.build();
}
}
application-test.properties
spring.jpa.hibernate.ddl-auto=create-drop
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.H2Dialect
I am using in camunda.cfg.xml
<bean id="processEngineConfiguration" class="org.camunda.bpm.engine.impl.cfg.StandaloneInMemProcessEngineConfiguration">
<property name="expressionManager">
<bean class="org.camunda.bpm.engine.test.mock.MockExpressionManager"/>
</property>
</bean>
Can it be conflict between test configuration and engine configuration?