Add VerificationState.isUnverified

This commit is contained in:
Alfonso Grillo
2022-11-18 10:50:53 +01:00
parent 02570fbd32
commit a3959fe3d2
4 changed files with 7 additions and 3 deletions
@@ -81,6 +81,10 @@ struct UserSessionInfo: Identifiable {
case verified
/// A session which cannot be never verified due to lack of crypto support
case permanentlyUnverified
var isUnverified: Bool {
self == .unverified || self == .permanentlyUnverified
}
}
}
@@ -93,7 +93,7 @@ class UserOtherSessionsViewModelTests: XCTestCase {
let expectedItems = sessionInfos
.filter {
!$0.isCurrent && ($0.verificationState == .unverified || $0.verificationState == .permanentlyUnverified)
!$0.isCurrent && $0.verificationState.isUnverified
}
.asViewData()
let bindings = UserOtherSessionsBindings(filter: .unverified, isEditModeEnabled: false)
@@ -172,7 +172,7 @@ private extension UserOtherSessionsFilter {
case .inactive:
return sessionInfos.filter { !$0.isActive }
case .unverified:
return sessionInfos.filter { $0.verificationState == .unverified || $0.verificationState == .permanentlyUnverified }
return sessionInfos.filter { $0.verificationState.isUnverified }
case .verified:
return sessionInfos.filter { $0.verificationState == .verified }
}
@@ -117,7 +117,7 @@ class UserSessionsOverviewService: UserSessionsOverviewServiceProtocol {
private func sessionsOverviewData(from allSessions: [UserSessionInfo],
linkDeviceEnabled: Bool) -> UserSessionsOverviewData {
UserSessionsOverviewData(currentSession: allSessions.filter(\.isCurrent).first,
unverifiedSessions: allSessions.filter { ($0.verificationState == .unverified || $0.verificationState == .permanentlyUnverified) && !$0.isCurrent },
unverifiedSessions: allSessions.filter { $0.verificationState.isUnverified && !$0.isCurrent },
inactiveSessions: allSessions.filter { !$0.isActive },
otherSessions: allSessions.filter { !$0.isCurrent },
linkDeviceEnabled: linkDeviceEnabled)