Fix integration tests for Xcode 26
This commit is contained in:
2
.github/workflows/integration-tests.yml
vendored
2
.github/workflows/integration-tests.yml
vendored
@@ -9,7 +9,7 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
integration_tests:
|
integration_tests:
|
||||||
name: Integration Tests
|
name: Integration Tests
|
||||||
runs-on: macos-26
|
runs-on: macos-26-xlarge
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
# Only allow a single run of this workflow on each branch, automatically cancelling older runs.
|
# Only allow a single run of this workflow on each branch, automatically cancelling older runs.
|
||||||
|
|||||||
@@ -57,25 +57,25 @@ extension XCUIApplication {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if alerts.count > 0 {
|
if alerts.count > 0 {
|
||||||
alerts.firstMatch.buttons["OK"].tap()
|
alerts.firstMatch.buttons["OK"].firstMatch.tap()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
webAuthenticationSessionAlertContinueButton.tap(.center)
|
webAuthenticationSessionAlertContinueButton.tap(.center)
|
||||||
|
|
||||||
let webAuthenticationView = webViews.firstMatch
|
let webAuthenticationView = XCUIApplication(bundleIdentifier: "com.apple.SafariViewService")
|
||||||
XCTAssertTrue(webAuthenticationView.waitForExistence(timeout: 10.0))
|
XCTAssertTrue(webAuthenticationView.waitForExistence(timeout: 10.0))
|
||||||
webAuthenticationView.tap(.top) // Tap the web view to properly focus the app again.
|
webAuthenticationView.tap(.top) // Tap the web view to properly focus the app again.
|
||||||
|
|
||||||
let webUsernameTextField = textFields["Username or Email"]
|
let webUsernameTextField = textFields["Username or Email"]
|
||||||
XCTAssertTrue(webUsernameTextField.waitForExistence(timeout: 10.0))
|
XCTAssertTrue(webUsernameTextField.waitForExistence(timeout: 10.0))
|
||||||
webUsernameTextField.clearAndTypeText(username, app: self)
|
webUsernameTextField.clearAndTypeText(username, app: self)
|
||||||
buttons["Done"].tap() // Dismiss the keyboard so that the password text field is fully hittable.
|
webAuthenticationView.buttons["selected"].firstMatch.tap() // Dismiss the keyboard so that the password text field is fully hittable.
|
||||||
|
|
||||||
let webPasswordTextField = secureTextFields["Password"]
|
let webPasswordTextField = secureTextFields["Password"]
|
||||||
XCTAssertTrue(webPasswordTextField.waitForExistence(timeout: 10.0))
|
XCTAssertTrue(webPasswordTextField.waitForExistence(timeout: 10.0))
|
||||||
webPasswordTextField.clearAndTypeText(password, app: self)
|
webPasswordTextField.clearAndTypeText(password, app: self)
|
||||||
buttons["Done"].tap() // Dismiss the keyboard so that the continue button is fully hittable.
|
webAuthenticationView.buttons["selected"].firstMatch.tap() // Dismiss the keyboard so that the continue button is fully hittable.
|
||||||
|
|
||||||
let webLoginButton = webAuthenticationView.buttons["Continue"]
|
let webLoginButton = webAuthenticationView.buttons["Continue"]
|
||||||
XCTAssertTrue(webLoginButton.waitForExistence(timeout: 10.0))
|
XCTAssertTrue(webLoginButton.waitForExistence(timeout: 10.0))
|
||||||
@@ -123,7 +123,7 @@ extension XCUIApplication {
|
|||||||
logoutButton.tap(.center)
|
logoutButton.tap(.center)
|
||||||
|
|
||||||
// Confirm logout
|
// Confirm logout
|
||||||
let alertLogoutButton = alerts.firstMatch.buttons["Sign out"]
|
let alertLogoutButton = alerts.firstMatch.buttons["Sign out"].firstMatch
|
||||||
XCTAssertTrue(alertLogoutButton.waitForExistence(timeout: 10.0))
|
XCTAssertTrue(alertLogoutButton.waitForExistence(timeout: 10.0))
|
||||||
alertLogoutButton.tap(.center)
|
alertLogoutButton.tap(.center)
|
||||||
|
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ class UserFlowTests: XCTestCase {
|
|||||||
tapOnBackButton("Chats")
|
tapOnBackButton("Chats")
|
||||||
|
|
||||||
// Cancel initial the room search
|
// Cancel initial the room search
|
||||||
let searchCancelButton = app.buttons["Cancel"].firstMatch
|
let searchCancelButton = app.buttons["Close"].firstMatch
|
||||||
XCTAssertTrue(searchCancelButton.waitForExistence(timeout: 10.0))
|
XCTAssertTrue(searchCancelButton.waitForExistence(timeout: 10.0))
|
||||||
searchCancelButton.tap(.center)
|
searchCancelButton.tap(.center)
|
||||||
}
|
}
|
||||||
@@ -263,7 +263,7 @@ class UserFlowTests: XCTestCase {
|
|||||||
/// When there are multiple buttons with the same label in the hierarchy, all the buttons we created
|
/// When there are multiple buttons with the same label in the hierarchy, all the buttons we created
|
||||||
/// should have an identifier set, and so this method will ignore those picking the one with only a label.
|
/// should have an identifier set, and so this method will ignore those picking the one with only a label.
|
||||||
private func tapOnBackButton(_ label: String = "Back") {
|
private func tapOnBackButton(_ label: String = "Back") {
|
||||||
let button = app.buttons.matching(NSPredicate(format: "label == %@ && identifier == ''", label)).firstMatch
|
let button = app.buttons.matching(NSPredicate(format: "label == %@ && identifier == 'BackButton'", label)).firstMatch
|
||||||
XCTAssertTrue(button.waitForExistence(timeout: 10.0))
|
XCTAssertTrue(button.waitForExistence(timeout: 10.0))
|
||||||
button.tap(.center)
|
button.tap(.center)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user