diff options
author | Jakob Odersky <jakob@driver.xyz> | 2018-10-09 14:37:57 -0700 |
---|---|---|
committer | Jakob Odersky <jakob@odersky.com> | 2018-10-09 16:19:39 -0700 |
commit | 46d7e38b4651caff2a7fb9dc9ee1aa398807db44 (patch) | |
tree | 8939ecc030442069e4938c5e59b53fa91e486c81 /core-testkit/src/main/scala/xyz/driver/core/testkit/hsql/HsqlTestDatabase.scala | |
parent | d858e1ca733407aeeb39d9d85edb26373443a9b9 (diff) | |
download | driver-core-2.0.0-M2.tar.gz driver-core-2.0.0-M2.tar.bz2 driver-core-2.0.0-M2.zip |
Add testkit modulev2.0.0-M2
Diffstat (limited to 'core-testkit/src/main/scala/xyz/driver/core/testkit/hsql/HsqlTestDatabase.scala')
-rw-r--r-- | core-testkit/src/main/scala/xyz/driver/core/testkit/hsql/HsqlTestDatabase.scala | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/core-testkit/src/main/scala/xyz/driver/core/testkit/hsql/HsqlTestDatabase.scala b/core-testkit/src/main/scala/xyz/driver/core/testkit/hsql/HsqlTestDatabase.scala new file mode 100644 index 0000000..8a4c3e8 --- /dev/null +++ b/core-testkit/src/main/scala/xyz/driver/core/testkit/hsql/HsqlTestDatabase.scala @@ -0,0 +1,26 @@ +package xyz.driver.test.hsql + +import java.nio.file.{Files, Paths} + +import slick.dbio.DBIO + +trait HsqlTestDatabase { + def insertTestData(database: xyz.driver.core.database.Database, filePath: String): DBIO[Int] = { + import database.profile.api._ + + val file = Paths.get(filePath) + val sqlLine = new String(Files.readAllBytes(file), "UTF-8") + + val createProcedure = + sqlu"""CREATE PROCEDURE INSERT_TEST_DATA() + MODIFIES SQL DATA + BEGIN ATOMIC + #$sqlLine + END; + """ + val callProcedure = sqlu"""{call INSERT_TEST_DATA()}""" + val dropProcedure = sqlu"""drop PROCEDURE INSERT_TEST_DATA;""" + + createProcedure >> callProcedure >> dropProcedure + } +} |