From bf6f1a917ee95dd4c1fb8a0c76c1e6945105955c Mon Sep 17 00:00:00 2001 From: davidoskky Date: Mon, 26 Sep 2022 22:42:24 +0200 Subject: [PATCH] Test update remote --- .../repository/RepositoryTest.kt | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/shared/src/commonTest/kotlin/bou/amine/apps/readerforselfossv2/repository/RepositoryTest.kt b/shared/src/commonTest/kotlin/bou/amine/apps/readerforselfossv2/repository/RepositoryTest.kt index 137acfd..4672515 100644 --- a/shared/src/commonTest/kotlin/bou/amine/apps/readerforselfossv2/repository/RepositoryTest.kt +++ b/shared/src/commonTest/kotlin/bou/amine/apps/readerforselfossv2/repository/RepositoryTest.kt @@ -594,6 +594,49 @@ class RepositoryTest() { coVerify(exactly = 0) { api.deleteSource(5) } assertSame(false, response) } + + @Test + fun `update remote`() { + coEvery { api.update()} returns SelfossModel.StatusAndData(success = true, data = "finished") + + val repository = Repository(api, appSettingsService, connectivityStatus, db) + var response = false + runBlocking { + response = repository.updateRemote() + } + + coVerify(exactly = 1) { api.update() } + assertSame(true, response) + } + + @Test + fun `update remote but response fails`() { + coEvery { api.update()} returns SelfossModel.StatusAndData(success = false, data = "undocumented...") + + val repository = Repository(api, appSettingsService, connectivityStatus, db) + var response = false + runBlocking { + response = repository.updateRemote() + } + + coVerify(exactly = 1) { api.update() } + assertSame(false, response) + } + + @Test + fun `update remote without connection`() { + coEvery { api.update()} returns SelfossModel.StatusAndData(success = true, data = "undocumented...") + every { connectivityStatus.isNetworkConnected } returns MutableStateFlow(false) + + val repository = Repository(api, appSettingsService, connectivityStatus, db) + var response = false + runBlocking { + response = repository.updateRemote() + } + + coVerify(exactly = 0) { api.update() } + assertSame(false, response) + } } fun generateTestDBItems(item : FakeItemParameters = FakeItemParameters()) : List {