commit 172ead3b94babc7be63fb75c7a377a55f4ea7392 parent 9cb3a688783699b288ffc8c2c3acf8f7a43d71c2 Author: triesap <tyson@radroots.org> Date: Fri, 28 Aug 2026 21:18:10 +0000 test: direct Add form scrolling toward targets - Move toward existing offscreen controls using their accessibility frames. - Retain a bounded bidirectional search for controls not yet materialized. - Avoid boundary swipes that can stall validation-recovery automation. - Verify the repair with the governed Debug simulator build. Diffstat:
| M | RadrootsUITests/RadrootsRemoteQualificationUITests.swift | | | 19 | ++++++++++++++----- |
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/RadrootsUITests/RadrootsRemoteQualificationUITests.swift b/RadrootsUITests/RadrootsRemoteQualificationUITests.swift @@ -1028,11 +1028,20 @@ final class RadrootsRemoteQualificationUITests: XCTestCase { @MainActor private func scrollTo(_ app: XCUIApplication, element: XCUIElement) { let root = app.descendants(matching: .any)["radroots.add.root"] - for _ in 0..<8 where !element.exists || !element.isHittable { - root.swipeUp() - } - for _ in 0..<8 where !element.exists || !element.isHittable { - root.swipeDown() + for attempt in 0..<16 where !element.exists || !element.isHittable { + if element.exists { + let targetFrame = element.frame + let rootFrame = root.frame + if targetFrame.midY < rootFrame.midY { + root.swipeDown() + } else { + root.swipeUp() + } + } else if attempt < 8 { + root.swipeUp() + } else { + root.swipeDown() + } } }