64 lines
2.6 KiB
Swift
64 lines
2.6 KiB
Swift
//
|
|
// Copyright 2022-2024 New Vector Ltd.
|
|
//
|
|
// SPDX-License-Identifier: AGPL-3.0-only
|
|
// Please see LICENSE in the repository root for full details.
|
|
//
|
|
|
|
import RiotSwiftUI
|
|
import XCTest
|
|
|
|
class UserSessionsOverviewUITests: MockScreenTestCase {
|
|
func testCurrentSessionUnverified() {
|
|
app.goToScreenWithIdentifier(MockUserSessionsOverviewScreenState.currentSessionUnverified.title)
|
|
|
|
XCTAssertTrue(app.buttons["userSessionCardVerifyButton"].exists)
|
|
XCTAssertTrue(app.staticTexts["userSessionCardViewDetails"].exists)
|
|
}
|
|
|
|
func testCurrentSessionVerified() {
|
|
app.goToScreenWithIdentifier(MockUserSessionsOverviewScreenState.currentSessionVerified.title)
|
|
XCTAssertFalse(app.buttons["userSessionCardVerifyButton"].exists)
|
|
XCTAssertTrue(app.staticTexts["userSessionCardViewDetails"].exists)
|
|
app.buttons["MoreOptionsMenu"].tap()
|
|
XCTAssertTrue(app.buttons["Sign out of all other sessions"].exists)
|
|
}
|
|
|
|
func testOnlyUnverifiedSessions() {
|
|
app.goToScreenWithIdentifier(MockUserSessionsOverviewScreenState.onlyUnverifiedSessions.title)
|
|
|
|
XCTAssertTrue(app.staticTexts["userSessionsOverviewSecurityRecommendationsSection"].exists)
|
|
XCTAssertTrue(app.staticTexts["userSessionsOverviewOtherSection"].exists)
|
|
}
|
|
|
|
func testOnlyInactiveSessions() {
|
|
app.goToScreenWithIdentifier(MockUserSessionsOverviewScreenState.onlyInactiveSessions.title)
|
|
|
|
XCTAssertTrue(app.staticTexts["userSessionsOverviewSecurityRecommendationsSection"].exists)
|
|
XCTAssertTrue(app.staticTexts["userSessionsOverviewOtherSection"].exists)
|
|
}
|
|
|
|
func testNoOtherSessions() {
|
|
app.goToScreenWithIdentifier(MockUserSessionsOverviewScreenState.noOtherSessions.title)
|
|
|
|
XCTAssertFalse(app.staticTexts["userSessionsOverviewSecurityRecommendationsSection"].exists)
|
|
XCTAssertFalse(app.staticTexts["userSessionsOverviewOtherSection"].exists)
|
|
app.buttons["MoreOptionsMenu"].tap()
|
|
XCTAssertFalse(app.buttons["Sign out of all other sessions"].exists)
|
|
}
|
|
|
|
func testWhenMoreThan5OtherSessionsThenViewAllButtonVisible() {
|
|
app.goToScreenWithIdentifier(MockUserSessionsOverviewScreenState.currentSessionUnverified.title)
|
|
app.swipeUp()
|
|
|
|
XCTAssertTrue(app.buttons["ViewAllButton"].exists)
|
|
}
|
|
|
|
func testWhenLessThan5OtherSessionsThenViewAllButtonHidden() {
|
|
app.goToScreenWithIdentifier(MockUserSessionsOverviewScreenState.onlyUnverifiedSessions.title)
|
|
app.swipeUp()
|
|
|
|
XCTAssertFalse(app.buttons["ViewAllButton"].exists)
|
|
}
|
|
}
|