feat(#1222): add background connection toggle to chat menu (#1235)

This commit is contained in:
m57 authored and GitHub committed 2026-09-23 11:50:18 +03:00
1 parent ee634e2abb
commit 721edef618
4 files changed
+112 -1

No files matched your search

@@ -383,6 +383,34 @@ class SettingsViewModelTest {
verify { AuthManager.setKeepConnectedInBackground(false) }
}
@Test
fun testKeepConnectedInBackground_refreshesBothDirectionsFromPersistedSetting() =
runTest {
var persisted = false
every { AuthManager.isKeepConnectedInBackground() } answers { persisted }
every { AuthManager.setKeepConnectedInBackground(any()) } answers {
persisted = firstArg()
}
val viewModel = SettingsViewModel(ioDispatcher = testDispatcher)
testDispatcher.scheduler.advanceUntilIdle()
// An edit from Settings becomes visible when chat opens its menu.
persisted = true
viewModel.refreshKeepConnectedInBackground()
assertEquals(true, viewModel.uiState.value.keepConnectedInBackground)
// Both menu directions use the existing Settings action and persistence path.
viewModel.onKeepConnectedInBackgroundChange(false)
assertEquals(false, persisted)
assertEquals(false, viewModel.uiState.value.keepConnectedInBackground)
viewModel.onKeepConnectedInBackgroundChange(true)
assertEquals(true, persisted)
persisted = false
viewModel.refreshKeepConnectedInBackground()
assertEquals(false, viewModel.uiState.value.keepConnectedInBackground)
}
@Test
fun testSave_persistsKeepConnectedInBackground() =
runTest {