Unit test fixes (#1846)

* Prevent notification manager tests from failing during randomised testing

* Fix flakey logging tests

* Fix flakey room notification muting tests
This commit is contained in:
Stefan Ceriu
2023-10-03 10:25:58 +03:00
committed by GitHub
parent e84e9b2938
commit 325ac63d66
3 changed files with 37 additions and 30 deletions
@@ -561,15 +561,18 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
XCTAssertFalse(context.viewState.isProcessingMuteToggleAction)
do {
let deferred = deferFulfillment(context.$viewState) { state in
state.notificationSettingsState.isLoaded
let deferred = deferFulfillment(context.$viewState) { state in
switch state.notificationSettingsState {
case .loaded(settings: let settings):
return settings.mode == .mute
default:
return false
}
notificationSettingsProxyMock.callbacks.send(.settingsDidChange)
try await deferred.fulfill()
}
notificationSettingsProxyMock.callbacks.send(.settingsDidChange)
try await deferred.fulfill()
if case .loaded(let newNotificationSettingsState) = viewModel.state.notificationSettingsState {
XCTAssertFalse(newNotificationSettingsState.isDefault)
XCTAssertEqual(newNotificationSettingsState.mode, .mute)
@@ -591,15 +594,18 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
XCTAssertFalse(context.viewState.isProcessingMuteToggleAction)
do {
let deferred = deferFulfillment(context.$viewState) { state in
state.notificationSettingsState.isLoaded
let deferred = deferFulfillment(context.$viewState) { state in
switch state.notificationSettingsState {
case .loaded(settings: let settings):
return settings.mode == .allMessages
default:
return false
}
notificationSettingsProxyMock.callbacks.send(.settingsDidChange)
try await deferred.fulfill()
}
notificationSettingsProxyMock.callbacks.send(.settingsDidChange)
try await deferred.fulfill()
if case .loaded(let newNotificationSettingsState) = viewModel.state.notificationSettingsState {
XCTAssertFalse(newNotificationSettingsState.isDefault)
XCTAssertEqual(newNotificationSettingsState.mode, .allMessages)