import XCTest final class SettingsPanelTests: XCTestCase { private let app = XCUIApplication() override func setUpWithError() throws { continueAfterFailure = false } func testOpenChangeFontAndCloseSettings() { app.launchAndOpenSampleBook() app.waitForReader() app.showReaderChromeIfNeeded() XCTAssertTrue(app.buttons[IDs.readerSettings].waitForExistence(timeout: 5)) app.buttons[IDs.readerSettings].tap() XCTAssertTrue(app.scrollViews[IDs.settingsScroll].waitForExistence(timeout: 5)) let fontValue = app.staticTexts[IDs.settingsFontValue] XCTAssertTrue(fontValue.waitForExistence(timeout: 3)) let before = fontValue.label app.buttons[IDs.settingsFontIncrease].tap() XCTAssertNotEqual(before, fontValue.label) app.buttons[IDs.settingsFontDecrease].tap() let fontChoice = app.segmentedControls[IDs.settingsFontChoice] XCTAssertTrue(fontChoice.waitForExistence(timeout: 3)) fontChoice.buttons["宋体"].tap() let darkTheme = app.buttons[IDs.settingsTheme(5)] XCTAssertTrue(darkTheme.waitForExistence(timeout: 3)) darkTheme.tap() app.buttons[IDs.settingsDone].tap() XCTAssertTrue(app.buttons[IDs.readerBack].waitForExistence(timeout: 5)) } }