diff options
author | MS <ms@taler.net> | 2023-05-05 16:59:16 +0200 |
---|---|---|
committer | MS <ms@taler.net> | 2023-05-05 16:59:16 +0200 |
commit | 550c2b39faaa8e4384e879b02e6ceabddf24bb36 (patch) | |
tree | e47c92afa805cc2dc3bbe8b23cd50ceae8aa4128 /sandbox | |
parent | a52cf289234683c4ff492cd8b508cfb6c85ca1e8 (diff) | |
download | libeufin-550c2b39faaa8e4384e879b02e6ceabddf24bb36.tar.gz libeufin-550c2b39faaa8e4384e879b02e6ceabddf24bb36.tar.bz2 libeufin-550c2b39faaa8e4384e879b02e6ceabddf24bb36.zip |
DB connection via UNIX domain sockets.
That includes switching all the tests to use it.
Diffstat (limited to 'sandbox')
-rw-r--r-- | sandbox/build.gradle | 3 | ||||
-rw-r--r-- | sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt | 5 | ||||
-rw-r--r-- | sandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt | 4 | ||||
-rw-r--r-- | sandbox/src/test/kotlin/DBTest.kt | 3 |
4 files changed, 10 insertions, 5 deletions
diff --git a/sandbox/build.gradle b/sandbox/build.gradle index aeb2a811..bc57b942 100644 --- a/sandbox/build.gradle +++ b/sandbox/build.gradle @@ -77,6 +77,9 @@ dependencies { testImplementation 'org.jetbrains.kotlin:kotlin-test-junit:1.5.21' testImplementation 'org.jetbrains.kotlin:kotlin-test:1.5.21' testImplementation group: "junit", name: "junit", version: '4.13.2' + + // UNIX domain sockets support (used to connect to PostgreSQL) + implementation 'com.kohlschutter.junixsocket:junixsocket-core:2.6.2' } application { diff --git a/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt b/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt index ca83d31a..19d4283d 100644 --- a/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt +++ b/sandbox/src/main/kotlin/tech/libeufin/sandbox/DB.kt @@ -33,6 +33,7 @@ import org.jetbrains.exposed.dao.id.LongIdTable import org.jetbrains.exposed.sql.* import org.jetbrains.exposed.sql.transactions.TransactionManager import org.jetbrains.exposed.sql.transactions.transaction +import tech.libeufin.util.getCurrentUser import tech.libeufin.util.internalServerError import java.sql.Connection import kotlin.reflect.* @@ -665,7 +666,7 @@ class CashoutSubmissionEntity(id: EntityID<Long>) : LongEntity(id) { } fun dbDropTables(dbConnectionString: String) { - Database.connect(dbConnectionString) + Database.connect(dbConnectionString, user = getCurrentUser()) transaction { SchemaUtils.drop( CashoutSubmissionsTable, @@ -690,7 +691,7 @@ fun dbDropTables(dbConnectionString: String) { } fun dbCreateTables(dbConnectionString: String) { - Database.connect(dbConnectionString) + Database.connect(dbConnectionString, user = getCurrentUser()) TransactionManager.manager.defaultIsolationLevel = Connection.TRANSACTION_SERIALIZABLE transaction { SchemaUtils.create( diff --git a/sandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt b/sandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt index 4229638b..a6aab42e 100644 --- a/sandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt +++ b/sandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt @@ -232,7 +232,7 @@ class Camt053Tick : CliktCommand( ) { override fun run() { val dbConnString = getDbConnFromEnv(SANDBOX_DB_ENV_VAR_NAME) - Database.connect(dbConnString) + Database.connect(dbConnString, user = getCurrentUser()) dbCreateTables(dbConnString) val newStatements = mutableMapOf<String, MutableList<XLibeufinBankTransaction>>() /** @@ -301,7 +301,7 @@ class MakeTransaction : CliktCommand("Wire-transfer money between Sandbox bank a override fun run() { val dbConnString = getDbConnFromEnv(SANDBOX_DB_ENV_VAR_NAME) - Database.connect(dbConnString) + Database.connect(dbConnString, user = getCurrentUser()) // Refuse to operate without a default demobank. val demobank = getDemobank("default") if (demobank == null) { diff --git a/sandbox/src/test/kotlin/DBTest.kt b/sandbox/src/test/kotlin/DBTest.kt index fb2b8292..519e3bf7 100644 --- a/sandbox/src/test/kotlin/DBTest.kt +++ b/sandbox/src/test/kotlin/DBTest.kt @@ -21,6 +21,7 @@ import org.jetbrains.exposed.sql.* import org.jetbrains.exposed.sql.transactions.transaction import org.junit.Test import tech.libeufin.sandbox.* +import tech.libeufin.util.getCurrentUser import tech.libeufin.util.millis import java.io.File import java.time.LocalDateTime @@ -38,7 +39,7 @@ fun withTestDatabase(f: () -> Unit) { it.delete() } } - Database.connect(dbConn) + Database.connect(dbConn, user = getCurrentUser()) dbDropTables(dbConn) dbCreateTables(dbConn) try { f() } |