Adopt StateStoreViewModelV2 in the authentication screens and some settings screens. (#4083)

* Add some tests for DeferredFulfillment with Observation.

* Use StateStoreViewModelV2 in AuthenticationStartScreen.

* Use StateStoreViewModelV2 in ServerConfirmationScreen.

* Use StateStoreViewModelV2 in ServerSelectionScreen.

* Use StateStoreViewModelV2 in SoftLogoutScreen.

* Use StateStoreViewModelV2 in SettingsScreen.

* Use StateStoreViewModelV2 in DeveloperOptionsScreen.

* Use StateStoreViewModelV2 in AdvancedSettingsScreen.
This commit is contained in:
Doug
2025-05-01 09:35:59 +01:00
committed by GitHub
parent 61a427b8e5
commit d45b232072
20 changed files with 128 additions and 71 deletions
@@ -150,7 +150,7 @@ class ServerConfirmationScreenViewModelTests: XCTestCase {
XCTAssertNil(context.alertInfo)
// When continuing from the confirmation screen.
let deferred = deferFulfillment(context.$viewState) { $0.bindings.alertInfo != nil }
let deferred = deferFulfillment(context.observe(\.alertInfo)) { $0 != nil }
context.send(viewAction: .confirm)
try await deferred.fulfill()
@@ -167,7 +167,7 @@ class ServerConfirmationScreenViewModelTests: XCTestCase {
XCTAssertNil(context.alertInfo)
// When continuing from the confirmation screen.
let deferred = deferFulfillment(context.$viewState) { $0.bindings.alertInfo != nil }
let deferred = deferFulfillment(context.observe(\.alertInfo)) { $0 != nil }
context.send(viewAction: .confirm)
try await deferred.fulfill()