libeufin

Integration and sandbox testing for FinTech APIs and data formats
Log | Files | Refs | Submodules | README | LICENSE

commit ea283cf97c34318bc0c1d0726e659fc39e0c47f4
parent 90be1bee51c819afb9ce8928837f229eb343411a
Author: Antoine A <>
Date:   Wed,  8 Nov 2023 17:41:04 +0000

Improve /monitor

Diffstat:
Mbank/src/main/kotlin/tech/libeufin/bank/TalerMessage.kt | 8++++----
Mbank/src/main/kotlin/tech/libeufin/bank/db/Database.kt | 4++--
Mbank/src/test/kotlin/StatsTest.kt | 8++++----
3 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/bank/src/main/kotlin/tech/libeufin/bank/TalerMessage.kt b/bank/src/main/kotlin/tech/libeufin/bank/TalerMessage.kt @@ -133,8 +133,8 @@ sealed class MonitorResponse { } @Serializable -@SerialName("just-payouts") -data class MonitorJustPayouts( +@SerialName("no-conversions") +data class MonitorNoConversion( override val talerInCount: Long, override val talerInVolume: TalerAmount, override val talerOutCount: Long, @@ -142,8 +142,8 @@ data class MonitorJustPayouts( ) : MonitorResponse() @Serializable -@SerialName("with-cashout") -data class MonitorWithCashout( +@SerialName("with-conversions") +data class MonitorWithConversion( val cashinCount: Long, val cashinInternalVolume: TalerAmount, val cashinExternalVolume: TalerAmount, diff --git a/bank/src/main/kotlin/tech/libeufin/bank/db/Database.kt b/bank/src/main/kotlin/tech/libeufin/bank/db/Database.kt @@ -872,7 +872,7 @@ class Database(dbConfig: String, internal val bankCurrency: String, internal val } stmt.oneOrNull { fiatCurrency?.run { - MonitorWithCashout( + MonitorWithConversion( cashinCount = it.getLong("cashin_count"), cashinInternalVolume = TalerAmount( value = it.getLong("cashin_internal_volume_val"), @@ -908,7 +908,7 @@ class Database(dbConfig: String, internal val bankCurrency: String, internal val currency = bankCurrency ) ) - } ?: MonitorJustPayouts( + } ?: MonitorNoConversion( talerInCount = it.getLong("taler_in_count"), talerInVolume = TalerAmount( value = it.getLong("taler_in_volume_val"), diff --git a/bank/src/test/kotlin/StatsTest.kt b/bank/src/test/kotlin/StatsTest.kt @@ -63,17 +63,17 @@ class StatsTest { } suspend fun monitor( - dbCount: (MonitorWithCashout) -> Long, + dbCount: (MonitorWithConversion) -> Long, count: Long, - internalVolume: (MonitorWithCashout) -> TalerAmount, + internalVolume: (MonitorWithConversion) -> TalerAmount, internalAmount: String, - externalVolume: ((MonitorWithCashout) -> TalerAmount)? = null, + externalVolume: ((MonitorWithConversion) -> TalerAmount)? = null, externalAmount: String? = null ) { Timeframe.entries.forEach { timestamp -> client.get("/monitor?timestamp=${timestamp.name}") { basicAuth("admin", "admin-password") }.assertOk().run { println(bodyAsText()) - val resp = json<MonitorResponse>() as MonitorWithCashout + val resp = json<MonitorResponse>() as MonitorWithConversion assertEquals(count, dbCount(resp)) assertEquals(TalerAmount(internalAmount), internalVolume(resp)) externalVolume?.run { assertEquals(TalerAmount(externalAmount!!), this(resp)) }