708a741960
Several tests were manually running migrations in a large copy-paste blob of code. This makes the test less useful as it's possible to break the code while keeping the tests green by introducing a new migration that never gets run in the tests, and it's also difficult to reason about what the tests are doing. A new test helper library is introduced with a TestMigrationLoader that can both run Flyway migrations, or load specific migrations in the cases a specific set of migrations need to be loaded. Existing tests are migrated to use the new code.
45 lines
1.2 KiB
Groovy
45 lines
1.2 KiB
Groovy
plugins {
|
|
id 'java'
|
|
|
|
id 'application'
|
|
id 'jvm-test-suite'
|
|
}
|
|
java {
|
|
toolchain {
|
|
languageVersion.set(JavaLanguageVersion.of(21))
|
|
}
|
|
}
|
|
|
|
application {
|
|
mainClass = 'nu.marginalia.adjacencies.WebsiteAdjacenciesCalculator'
|
|
applicationName = 'website-adjacencies-calculator'
|
|
}
|
|
|
|
tasks.distZip.enabled = false
|
|
|
|
dependencies {
|
|
implementation project(':code:common:model')
|
|
implementation project(':code:common:db')
|
|
implementation project(':code:common:process')
|
|
implementation project(':code:common:service-client')
|
|
implementation project(':code:common:service')
|
|
implementation project(':code:api:query-api')
|
|
|
|
implementation libs.bundles.slf4j
|
|
|
|
implementation libs.guice
|
|
implementation libs.roaringbitmap
|
|
implementation libs.trove
|
|
implementation libs.fastutil
|
|
implementation libs.bundles.mariadb
|
|
|
|
testImplementation libs.bundles.slf4j.test
|
|
testImplementation libs.bundles.junit
|
|
testImplementation libs.mockito
|
|
|
|
testImplementation platform('org.testcontainers:testcontainers-bom:1.17.4')
|
|
testImplementation 'org.testcontainers:mariadb:1.17.4'
|
|
testImplementation 'org.testcontainers:junit-jupiter:1.17.4'
|
|
testImplementation project(':code:libraries:test-helpers')
|
|
}
|