field_ios

In-the-field app for Radroots on iOS
git clone https://radroots.dev/git/field_ios.git
Log | Files | Refs | README | LICENSE

commit 46cdc07a0a4b971ef3c081f63069a5969fecd64f
parent f4cd7598343c06e20a88d5a0b43ccdcaeec60f96
Author: triesap <tyson@radroots.org>
Date:   Sun,  9 Aug 2026 17:58:31 +0000

ios: make remote submission viewport safe

- Scroll the Add form until the submit control is materialized
- Require the control to exist and become hittable before tapping
- Support compact physical-device viewports such as iPhone SE
- Fail with a bounded diagnostic instead of cascading tap errors

Diffstat:
MRadrootsUITests/RadrootsRemoteQualificationUITests.swift | 9++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/RadrootsUITests/RadrootsRemoteQualificationUITests.swift b/RadrootsUITests/RadrootsRemoteQualificationUITests.swift @@ -79,7 +79,14 @@ final class RadrootsRemoteQualificationUITests: XCTestCase { XCTAssertTrue(prepared.waitForExistence(timeout: 30)) let submit = app.descendants(matching: .any)["radroots.add.submit"] - XCTAssertTrue(submit.waitForExistence(timeout: 10)) + for _ in 0 ..< 5 where !submit.exists { + app.swipeUp() + } + guard submit.waitForExistence(timeout: 10), + waitUntilHittable(submit, timeout: 10) + else { + return XCTFail("The Add submission control did not become hittable") + } let status = app.staticTexts.matching( identifier: "radroots.add.status" ).firstMatch