Created
November 9, 2024 14:39
-
-
Save delasign/40c86eb9b3d1e03ba3f7e0877348b1d9 to your computer and use it in GitHub Desktop.
Code for automating the opening of a folder in a UI Swift Test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import XCTest | |
func openFolderInOpenPanel(folderName: String) { | |
let openPanel = XCUIApplication().dialogs["open-panel"] | |
XCTAssertTrue(openPanel.exists, "Open Panel is visible.") | |
XCTAssertTrue(openPanel.isHittable, "Open Panel is hittable.") | |
let openPanelOpenButton = openPanel.buttons["OKButton"] | |
XCTAssertTrue(openPanelOpenButton.exists, "Open Panel Open Button is visible.") | |
XCTAssertTrue(openPanelOpenButton.isHittable, "Open Panel Open Button is hittable.") | |
let openPanelSearchBox = openPanel.searchFields.firstMatch | |
XCTAssertTrue(openPanelSearchBox.exists, "Open Panel Search Box is visible.") | |
XCTAssertTrue(openPanelSearchBox.isHittable, "Open Panel Search Box hittable.") | |
openPanelSearchBox.tap() | |
openPanelSearchBox.typeText(folderName) | |
let validFolder = openPanel.textFields[folderName] | |
wait(for: [ | |
expectation(for: NSPredicate(format: "exists == true"), evaluatedWith: validFolder), | |
expectation(for: NSPredicate(format: "isHittable == true"), evaluatedWith: validFolder) | |
], timeout: 10) | |
validFolder.tap() | |
openPanelOpenButton.tap() | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment