From f61bbbf49b5bfefa067c22917bb5409cee7893fd Mon Sep 17 00:00:00 2001 From: spacedandy-agents-simplex <342056592+spacedandy-agents-simplex@users.noreply.github.com> Date: Thu, 15 Oct 2026 16:41:03 +0000 Subject: [PATCH] ci: check "Show more" while its page loads in the smoke test With the test directory stopped, the next "ci avatar" page waits 10 s before it fails. The smoke test taps "Show more" then, takes a screenshot that shows its colour, and requires it to be disabled. The smoke step gets BACKEND_DIR, so the ui helper can stop and start the directory. One layout only: the row's colour and state are the same in both. --- .github/workflows/ios-sim.yml | 2 ++ scripts/ci/ios-sim/smoke-test.sh | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ios-sim.yml b/.github/workflows/ios-sim.yml index 498ba4f06e..22628fa600 100644 --- a/.github/workflows/ios-sim.yml +++ b/.github/workflows/ios-sim.yml @@ -265,6 +265,8 @@ jobs: run: brew install cameroncooke/axe/axe - name: Run smoke test + env: + BACKEND_DIR: ${{ runner.temp }}/backend run: scripts/ci/ios-sim/smoke-test.sh "$RUNNER_TEMP/DerivedData/Build/Products/Debug-iphonesimulator/SimpleX.app" "$RUNNER_TEMP/smoke-test" - name: Install Claude Code diff --git a/scripts/ci/ios-sim/smoke-test.sh b/scripts/ci/ios-sim/smoke-test.sh index bbbdb3fd99..2a5c796969 100755 --- a/scripts/ci/ios-sim/smoke-test.sh +++ b/scripts/ci/ios-sim/smoke-test.sh @@ -3,7 +3,9 @@ # Installs the app in a new iPhone simulator and runs the scripted UI cases with the ui helper: # onboarding to the chat list, typing in the search field, and searching the test directory, whose results # must show their avatars and have the Directory header above them in both layouts; then, with a joined -# channel, the chat list's cards must show while typing and hide under the results. It leaves the app in the one-hand UI. +# channel, the chat list's cards must show while typing and hide under the results; and "Show more" must be disabled +# while its page loads (a screenshot shows its colour). It leaves the app in the one-hand UI. +# Needs BACKEND_DIR, the work dir of the running test backend. # Usage: scripts/ci/ios-sim/smoke-test.sh # Each step saves a screenshot and an accessibility tree to the output dir and prints the tree to the log. # Later steps of the job get SIM_UDID and UI_OUT, with the simulator still running. @@ -247,4 +249,14 @@ if "$ui" layout top; then else echo "::warning::the top bar layout could not be set, so its chat list cards were not checked" fi -echo "smoke test passed: the directory search for \"$search_text\" shows #ci_group (Join group) and #ci_channel (Join channel) with their avatars and the Directory header above them; with a chat, the list's cards show while typing and hide under the results" + +# with the directory stopped, the next page waits 10 s before it fails: long enough to see "Show more" while it loads +type_search "ci avatar" +search_directory "Show more" +"$ui" directory stop +"$ui" tap "Show more" +"$ui" shot show-more-loading +expect_in_tree -E '^Button "Show more" .* disabled$' +"$ui" directory start +clear_search +echo "smoke test passed: the directory search for \"$search_text\" shows #ci_group (Join group) and #ci_channel (Join channel) with their avatars and the Directory header above them; with a chat, the list's cards show while typing and hide under the results; \"Show more\" is disabled while its page loads"