Миграция Flyway в модульных тестах выдает ошибку ⇐ JAVA
Миграция Flyway в модульных тестах выдает ошибку
У меня есть существующая база данных, и я хотел написать несколько модульных тестов для @Service, который ее использует. Поэтому я прикинул H2 в памяти для тестов.
Поскольку это уже существующая БД, я просто использую студию управления SQL для экспорта определений интересующих меня таблиц, включая ограничения, fk. и т. д.
Как POC я имею следующее:
@Test недействительный тест () { ConnectionFactory ConnectionFactory = новый H2ConnectionFactory(H2ConnectionConfiguration.builder().inMemory("test").build()); DatabaseClient dataClient = DatabaseClient.create(connectionFactory); Пролетный путь =Flyway.configure().dataSource("jdbc:h2:mem:test;MODE=MSSQLServer", null, null) .locations("путь к классам:миграции/dtms") .baselineOnMigrate(истина) .нагрузка(); пролет.мигрировать(); UserDetailsService userDetailsService = новый UserDetailsService (databaseClient); UserDetails userDetails = userDetailsService.findByUsername("test").block(); Но это вызывает исключение в flyway.migrate().
org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException: не удалось выполнить миграцию V1_1__init.sql ------------------------------- Состояние SQL: 42000 Код ошибки: 42000 Сообщение: Синтаксическая ошибка в операторе SQL. Похоже, что мой сценарий работает в студии SQL mgmt, поэтому я не вижу, в чем будет заключаться синтаксическая ошибка? Что-нибудь, что мне не хватает?
У меня есть существующая база данных, и я хотел написать несколько модульных тестов для @Service, который ее использует. Поэтому я прикинул H2 в памяти для тестов.
Поскольку это уже существующая БД, я просто использую студию управления SQL для экспорта определений интересующих меня таблиц, включая ограничения, fk. и т. д.
Как POC я имею следующее:
@Test недействительный тест () { ConnectionFactory ConnectionFactory = новый H2ConnectionFactory(H2ConnectionConfiguration.builder().inMemory("test").build()); DatabaseClient dataClient = DatabaseClient.create(connectionFactory); Пролетный путь =Flyway.configure().dataSource("jdbc:h2:mem:test;MODE=MSSQLServer", null, null) .locations("путь к классам:миграции/dtms") .baselineOnMigrate(истина) .нагрузка(); пролет.мигрировать(); UserDetailsService userDetailsService = новый UserDetailsService (databaseClient); UserDetails userDetails = userDetailsService.findByUsername("test").block(); Но это вызывает исключение в flyway.migrate().
org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException: не удалось выполнить миграцию V1_1__init.sql ------------------------------- Состояние SQL: 42000 Код ошибки: 42000 Сообщение: Синтаксическая ошибка в операторе SQL. Похоже, что мой сценарий работает в студии SQL mgmt, поэтому я не вижу, в чем будет заключаться синтаксическая ошибка? Что-нибудь, что мне не хватает?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Запустите миграцию Flyway вручную, используя плагин gradle Flyway в Micronaut.
Anonymous » » в форуме JAVA - 0 Ответы
- 20 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Запустите миграцию Flyway вручную, используя плагин gradle Flyway в Micronaut.
Anonymous » » в форуме JAVA - 0 Ответы
- 18 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Запустите миграцию Flyway вручную, используя плагин gradle Flyway в Micronaut.
Anonymous » » в форуме JAVA - 0 Ответы
- 21 Просмотры
-
Последнее сообщение Anonymous
-