mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:55:59 +00:00
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:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user