PSG-976 Exclude current session from security recommendations and other sessions

This commit is contained in:
Aleksandrs Proskurins
2022-10-28 10:14:19 +03:00
parent c19cb59604
commit 0614b019af
8 changed files with 6 additions and 61 deletions

View File

@@ -65,50 +65,4 @@ class UserSessionListItemViewDataFactoryTests: XCTestCase {
XCTAssertEqual(sessionDetailsUnknown, VectorL10n.userSessionVerificationUnknownShort,
"The details should only show the verification state when no timestamp exists.")
}
func testCurrentSessionDetailsWithTimestamp() {
// Given other devices in each of the verification states.
let sessionInfoVerified = UserSessionInfo.mockPhone(verificationState: .verified, isCurrent: true)
let sessionInfoUnverified = UserSessionInfo.mockPhone(verificationState: .unverified, isCurrent: true)
let sessionInfoUnknown = UserSessionInfo.mockPhone(verificationState: .unknown, isCurrent: true)
// When getting session details for each of them.
let sessionDetailsVerified = factory.create(from: sessionInfoVerified).sessionDetails
let sessionDetailsUnverified = factory.create(from: sessionInfoUnverified).sessionDetails
let sessionDetailsUnknown = factory.create(from: sessionInfoUnknown).sessionDetails
// Then the details should be formatted correctly.
XCTAssertEqual(sessionDetailsVerified,
VectorL10n.userSessionItemDetails(VectorL10n.userSessionVerifiedShort, VectorL10n.userOtherSessionCurrentSessionDetails),
"The details should show as verified with a current session string when verified.")
XCTAssertEqual(sessionDetailsUnverified,
VectorL10n.userSessionItemDetails(VectorL10n.userSessionUnverifiedShort, VectorL10n.userOtherSessionCurrentSessionDetails),
"The details should show as unverified with a current session string when unverified.")
XCTAssertEqual(sessionDetailsUnknown,
VectorL10n.userOtherSessionCurrentSessionDetails,
"The details should only show the current session string when verification is unknown.")
}
func testCurrentSessionDetailsVerifiedWithoutTimestamp() {
// Given a verified other device
let sessionInfoVerified = UserSessionInfo.mockPhone(hasTimestamp: false, isCurrent: true)
let sessionInfoUnverified = UserSessionInfo.mockPhone(verificationState: .unverified, hasTimestamp: false, isCurrent: true)
let sessionInfoUnknown = UserSessionInfo.mockPhone(verificationState: .unknown, hasTimestamp: false, isCurrent: true)
// When getting session details
let sessionDetailsVerified = factory.create(from: sessionInfoVerified).sessionDetails
let sessionDetailsUnverified = factory.create(from: sessionInfoUnverified).sessionDetails
let sessionDetailsUnknown = factory.create(from: sessionInfoUnknown).sessionDetails
// Then the details should contain the verification state and a last seen date.
XCTAssertEqual(sessionDetailsVerified,
VectorL10n.userSessionItemDetails(VectorL10n.userSessionVerifiedShort, VectorL10n.userOtherSessionCurrentSessionDetails),
"The details should show as verified with a current session string when verified.")
XCTAssertEqual(sessionDetailsUnverified,
VectorL10n.userSessionItemDetails(VectorL10n.userSessionUnverifiedShort, VectorL10n.userOtherSessionCurrentSessionDetails),
"The details should show as unverified with a current session string when unverified.")
XCTAssertEqual(sessionDetailsUnknown,
VectorL10n.userOtherSessionCurrentSessionDetails,
"The details should only show the current session string when verification is unknown.")
}
}