diff --git a/packages/mosaic/framework/tools/git/test-ci-queue-wait-github-checks.sh b/packages/mosaic/framework/tools/git/test-ci-queue-wait-github-checks.sh index d063f12b..84173fd7 100644 --- a/packages/mosaic/framework/tools/git/test-ci-queue-wait-github-checks.sh +++ b/packages/mosaic/framework/tools/git/test-ci-queue-wait-github-checks.sh @@ -43,22 +43,22 @@ SH chmod +x "$STUB_DIR/gh" run_guard() { - local mode="$1" + local mode="$1" purpose="${2:-push}" ( cd "$REPO_DIR" || exit export PATH="$STUB_DIR:$PATH" export MOSAIC_GH_CHECK_MODE="$mode" export MOSAIC_GH_CALL_LOG="$WORK_DIR/gh-calls.log" export MOSAIC_CI_QUEUE_AUDIT_LOG="$WORK_DIR/audit.jsonl" - "$SCRIPT_DIR/ci-queue-wait.sh" --purpose push -t 0 -i 0 + "$SCRIPT_DIR/ci-queue-wait.sh" --purpose "$purpose" -t 0 -i 0 ) } failures=0 assert_case() { - local mode="$1" expected_rc="$2" expected_state="$3" output rc + local mode="$1" expected_rc="$2" expected_state="$3" purpose="${4:-push}" output rc set +e - output=$(run_guard "$mode" 2>&1) + output=$(run_guard "$mode" "$purpose" 2>&1) rc=$? set -e if [[ "$expected_rc" == zero && "$rc" -ne 0 ]]; then @@ -79,10 +79,12 @@ set -e : > "$WORK_DIR/gh-calls.log" assert_case success zero terminal-success assert_case pending nonzero pending -assert_case failure nonzero terminal-failure -assert_case late-failure nonzero terminal-failure +assert_case failure zero terminal-failure +assert_case late-failure zero terminal-failure +assert_case failure nonzero terminal-failure merge +assert_case late-failure nonzero terminal-failure merge -if [[ $(grep -c 'check-runs?per_page=100&filter=latest' "$WORK_DIR/gh-calls.log") -lt 4 ]]; then +if [[ $(grep -c 'check-runs?per_page=100&filter=latest' "$WORK_DIR/gh-calls.log") -lt 6 ]]; then echo "FAIL: expected every case to query all Checks API pages" >&2 failures=$((failures + 1)) fi @@ -92,4 +94,4 @@ if [[ "$failures" -ne 0 ]]; then exit 1 fi -echo "GitHub check-runs regression passed (4/4 cases, including later-page failure)" +echo "GitHub check-runs regression passed (6/6 purpose-aware cases, including later-page failure)"