commit 0e0ae90fd92b0cd59cd46b1ba97cb9c6d389f736
parent a6bcae6d08832a25162e93e238be8eda95e55875
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Sun, 18 Oct 2026 17:48:14 +0200
properly detect versioning issue in taldir
Diffstat:
2 files changed, 23 insertions(+), 1 deletion(-)
diff --git a/wallet/src/main/java/net/taler/wallet/backend/WalletResponse.kt b/wallet/src/main/java/net/taler/wallet/backend/WalletResponse.kt
@@ -91,7 +91,15 @@ data class TalerErrorInfo(
} else {
// Otherwise, use the standard ones
hint?.let { append(it) }
- message?.let { append(" ").append(it) }
+ message?.let {
+ if (isNotEmpty()) append(" ")
+ append(it)
+ }
+ if (isEmpty()) {
+ getStringExtra("detail")?.let {
+ append(it)
+ }
+ }
}
}.toString()
}
diff --git a/wallet/src/test/java/net/taler/wallet/backend/WalletResponseTest.kt b/wallet/src/test/java/net/taler/wallet/backend/WalletResponseTest.kt
@@ -81,6 +81,20 @@ class WalletResponseTest {
}
@Test
+ fun testWalletErrorInfoDetailFallback() {
+ val infoJson = """
+ {
+ "code": 3,
+ "requestUrl": "https://taldir.gnunet.org/config",
+ "httpStatusCode": 200,
+ "detail": "Unsupported protocol version, client supports 1:0:0, server supports 0:0:0"
+ }
+ """.trimIndent()
+ val info = json.decodeFromString(TalerErrorInfo.serializer(), infoJson)
+ assertEquals("Unsupported protocol version, client supports 1:0:0, server supports 0:0:0", info.userFacingMsg)
+ }
+
+ @Test
fun knownWalletErrorCodeRoundTrips() {
val info = json.decodeFromString(
TalerErrorInfo.serializer(),