From 222ec848553fa958ebc712f369e950a70ed9b1c7 Mon Sep 17 00:00:00 2001 From: James Magahern Date: Fri, 1 Mar 2024 21:46:14 -0800 Subject: [PATCH] BackendTests: Fix Backend Tests. --- .../kordophone/backend/BackendTests.kt | 2 +- .../buzzert/kordophone/backend/MockServer.kt | 22 ++++++++++++++++--- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/backend/src/test/java/net/buzzert/kordophone/backend/BackendTests.kt b/backend/src/test/java/net/buzzert/kordophone/backend/BackendTests.kt index 4081ebc..0cdc907 100644 --- a/backend/src/test/java/net/buzzert/kordophone/backend/BackendTests.kt +++ b/backend/src/test/java/net/buzzert/kordophone/backend/BackendTests.kt @@ -89,7 +89,7 @@ class BackendTests { val guid = repository.enqueueOutgoingMessage(outgoingMessage, conversation) val event = repository.messageDeliveredChannel.first() - assertEquals(event.guid, guid) + assertEquals(event.requestGuid, guid) assertEquals(event.message.text, outgoingMessage.text) repository.close() diff --git a/backend/src/test/java/net/buzzert/kordophone/backend/MockServer.kt b/backend/src/test/java/net/buzzert/kordophone/backend/MockServer.kt index 97637a3..e5bcef0 100644 --- a/backend/src/test/java/net/buzzert/kordophone/backend/MockServer.kt +++ b/backend/src/test/java/net/buzzert/kordophone/backend/MockServer.kt @@ -15,6 +15,7 @@ import net.buzzert.kordophone.backend.model.UpdateItem import net.buzzert.kordophone.backend.server.APIClient import net.buzzert.kordophone.backend.server.APIInterface import net.buzzert.kordophone.backend.server.SendMessageRequest +import net.buzzert.kordophone.backend.server.SendMessageResponse import net.buzzert.kordophone.backend.server.authenticatedWebSocketURL import okhttp3.HttpUrl import okhttp3.MediaType.Companion.toMediaType @@ -128,11 +129,18 @@ class MockServer { return testMessages } + fun markConversationAsRead(guid: GUID) { + val conversation = conversations.first { it.guid == guid } + conversation.unreadCount = 0 + + updateConversation(conversation) + } + internal fun getMessagesForConversationGUID(guid: GUID): List? { return messages[guid]?.toList() } - internal fun sendMessage(body: String, toConversationGUID: GUID) { + internal fun sendMessage(body: String, toConversationGUID: GUID): Message { val conversation = conversations.first { it.guid == toConversationGUID } val message = Message( @@ -144,6 +152,7 @@ class MockServer { ) addMessagesToConversation(conversation, listOf(message)) + return message } } @@ -237,8 +246,15 @@ class MockServerInterface(private val server: MockServer): APIInterface { } } - override suspend fun sendMessage(request: SendMessageRequest): Response { - server.sendMessage(request.body, request.conversationGUID) + override suspend fun sendMessage(request: SendMessageRequest): Response { + val message = server.sendMessage(request.body, request.conversationGUID) + + val response = SendMessageResponse(message.guid) + return Response.success(response) + } + + override suspend fun markConversation(conversationGUID: String): Response { + server.markConversationAsRead(conversationGUID) return Response.success(null) } } \ No newline at end of file