commit 124919955d5a4493bd335974f68728fe719ec6cc
parent 85539f4be30deb45c8cd03cbd7216f29370510b5
Author: triesap <tyson@radroots.org>
Date: Fri, 28 Aug 2026 18:43:39 +0000
test: bind completion to working overlay
- Use the non-virtualized Add progress overlay as the completion boundary.
- Require a proven start before accepting the overlay-disappeared terminal state.
- Materialize the terminal submit control through ordinary scrolling afterward.
- Remove terminal inference from virtualized status and form rows.
Diffstat:
1 file changed, 3 insertions(+), 23 deletions(-)
diff --git a/RadrootsUITests/RadrootsRemoteQualificationUITests.swift b/RadrootsUITests/RadrootsRemoteQualificationUITests.swift
@@ -1086,13 +1086,7 @@ final class RadrootsRemoteQualificationUITests: XCTestCase {
return nil
}
guard
- waitForWorkToFinish(
- app,
- submit: submit,
- status: status,
- priorStatusLabel: priorStatusLabel,
- priorSubmitValue: priorSubmitValue
- )
+ waitForWorkToFinish(app)
else {
XCTFail(
"The Add submission did not reach a terminal local state; "
@@ -1132,23 +1126,9 @@ final class RadrootsRemoteQualificationUITests: XCTestCase {
}
@MainActor
- private func waitForWorkToFinish(
- _ app: XCUIApplication,
- submit: XCUIElement,
- status: XCUIElement,
- priorStatusLabel: String?,
- priorSubmitValue: String?
- ) -> Bool {
+ private func waitForWorkToFinish(_ app: XCUIApplication) -> Bool {
let progress = app.descendants(matching: .any)["radroots.add.progress"]
- let finished = NSPredicate { _, _ in
- guard !progress.exists else { return false }
- if status.exists, !status.label.isEmpty, status.label != priorStatusLabel {
- return true
- }
- guard submit.exists else { return false }
- let submitValue = submit.value as? String
- return submitValue != priorSubmitValue && submitValue != "Working"
- }
+ let finished = NSPredicate { _, _ in !progress.exists }
let expectation = XCTNSPredicateExpectation(predicate: finished, object: app)
return XCTWaiter.wait(for: [expectation], timeout: 180) == .completed
}