Skip to content

Commit

Permalink
Migrate tests from DynaTest to JUnit5
Browse files Browse the repository at this point in the history
  • Loading branch information
mvysny committed Jan 31, 2025
1 parent 2df3045 commit 066296e
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 1 deletion.
1 change: 0 additions & 1 deletion src/test/kotlin/com/github/vokorm/AbstractDatabaseTests.kt
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.github.vokorm

import com.github.vokorm.AbstractDbMappingTests
import org.jdbi.v3.core.Handle
import org.junit.jupiter.api.Nested
import org.junit.jupiter.api.Test
Expand Down
64 changes: 64 additions & 0 deletions src/test/kotlin/com/github/vokorm/MariadbDatabaseTest.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package com.github.vokorm

import com.gitlab.mvysny.jdbiorm.JdbiOrm
import com.gitlab.mvysny.jdbiorm.quirks.DatabaseVariant
import org.junit.jupiter.api.*
import org.testcontainers.containers.MariaDBContainer
import kotlin.test.expect

class MariaDBDatabaseTest {
companion object {
private lateinit var container: MariaDBContainer<*>
@BeforeAll @JvmStatic
fun setup() {
assumeDockerAvailable()

container = MariaDBContainer("mariadb:${DatabaseVersions.mariadb}")
container.start()

hikari {
minimumIdle = 0
maximumPoolSize = 30
jdbcUrl = container.jdbcUrl
username = container.username
password = container.password
}
db {
ddl(
"""create table if not exists Test (
id bigint primary key auto_increment,
name varchar(400) not null,
age integer not null,
dateOfBirth date,
created timestamp(3) NULL,
modified timestamp(3) NULL,
alive boolean,
maritalStatus varchar(200),
FULLTEXT index (name)
)"""
)
ddl("""create table if not exists EntityWithAliasedId(myid bigint primary key auto_increment, name varchar(400) not null)""")
ddl("""create table if not exists NaturalPerson(id varchar(10) primary key, name varchar(400) not null, bytes binary(16) not null)""")
ddl("""create table if not exists LogRecord(id binary(16) primary key, text varchar(400) not null)""")
ddl("""create table TypeMappingEntity(id bigint primary key auto_increment, enumTest ENUM('Single', 'Married', 'Divorced', 'Widowed'))""")
}
}

@AfterAll @JvmStatic
fun tearDown() {
JdbiOrm.destroy()
if (this::container.isInitialized) {
container.stop()
}
}
}

@BeforeEach @AfterEach fun purgeDb() { clearDb() }

@Test fun `expect MySQL variant`() {
expect(DatabaseVariant.MySQLMariaDB) { db { DatabaseVariant.from(handle) } }
}

@Nested
inner class AllDatabaseTests : AbstractDatabaseTests(DatabaseInfo(DatabaseVariant.MySQLMariaDB))
}

0 comments on commit 066296e

Please sign in to comment.