test(uitests): embed live-state diagnostics in assertion messages, not a file

The file-based diagnostic dump never worked: PediFoodsUITests-Runner
runs as an app inside the simulator, sandboxed to that device's own
container filesystem. NSTemporaryDirectory() called from test code
resolves inside the simulator's data container, invisible to the host
shell's $TMPDIR a later CI step tried to cat - confirmed by the new
step printing 'No UI test diagnostic log was written.' every time.

Replaced with quickDiagnostics(_:), which builds a short live-state
summary (closed-store snackbar, spinning activity indicator, any open
alert, visible 'erro' text, first ~15 visible static texts) and
interpolates it directly into each of the three XCTAssertTrue failure
messages - the one channel already confirmed working end to end on
every run. message: is @autoclosure, so this costs nothing when the
assertion passes. Removed the dead file-write helper and the now-unused
CI step.

See decisions/2026-09-11-ui-test-shared-login-session.md follow-up.
This commit is contained in:
2026-09-11 10:57:48 -03:00
parent 3f99ebcba1
commit 6da8b05cfb
2 changed files with 50 additions and 49 deletions

View File

@@ -24,12 +24,3 @@ jobs:
- name: Run tests with coverage
run: fastlane tests
- name: Show UI test failure diagnostics (if any)
if: always()
run: |
if [ -f "$TMPDIR/pedifoods_uitest_diag.log" ]; then
cat "$TMPDIR/pedifoods_uitest_diag.log"
else
echo "No UI test diagnostic log was written."
fi