Add support for initiating and responding to user verification requests (#3759)

This commit is contained in:
Stefan Ceriu
2025-02-10 20:07:11 +02:00
committed by GitHub
parent 22d0fae423
commit 8680d8437b
94 changed files with 528 additions and 208 deletions
@@ -18,7 +18,10 @@ class SessionVerificationViewModelTests: XCTestCase {
override func setUpWithError() throws {
sessionVerificationController = SessionVerificationControllerProxyMock.configureMock()
viewModel = SessionVerificationScreenViewModel(sessionVerificationControllerProxy: sessionVerificationController, flow: .initiator)
viewModel = SessionVerificationScreenViewModel(sessionVerificationControllerProxy: sessionVerificationController,
flow: .deviceInitiator,
appSettings: AppSettings(),
mediaProvider: MediaProviderMock(configuration: .init()))
context = viewModel.context
}
@@ -28,7 +31,7 @@ class SessionVerificationViewModelTests: XCTestCase {
context.send(viewAction: .requestVerification)
try await Task.sleep(for: .milliseconds(100))
XCTAssert(sessionVerificationController.requestVerificationCallsCount == 1)
XCTAssert(sessionVerificationController.requestDeviceVerificationCallsCount == 1)
XCTAssertEqual(context.viewState.verificationState, .requestingVerification)
}
@@ -53,7 +56,7 @@ class SessionVerificationViewModelTests: XCTestCase {
XCTAssertEqual(context.viewState.verificationState, .initial)
XCTAssert(sessionVerificationController.requestVerificationCallsCount == 1)
XCTAssert(sessionVerificationController.requestDeviceVerificationCallsCount == 1)
XCTAssert(sessionVerificationController.cancelVerificationCallsCount == 1)
}
@@ -154,7 +157,7 @@ class SessionVerificationViewModelTests: XCTestCase {
wait(for: [verificationDataReceivalExpectation], timeout: 10.0)
XCTAssertEqual(context.viewState.verificationState, .showingChallenge(emojis: SessionVerificationControllerProxyMock.emojis))
XCTAssert(sessionVerificationController.requestVerificationCallsCount == 1)
XCTAssert(sessionVerificationController.requestDeviceVerificationCallsCount == 1)
XCTAssert(sessionVerificationController.startSasVerificationCallsCount == 1)
}
}