#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" TMP_DIR="$(mktemp -d)" trap 'rm -rf "${TMP_DIR}"' EXIT # shellcheck source=backend/scripts/smoke_common.sh source "${SCRIPT_DIR}/smoke_common.sh" set -a source "${REPO_ROOT}/.env" set +a wait_for_health create_fresh_scheme_from_upload "smoke-artifact-corruption" request "scheme_current" "GET" "${API_URL}/api/v1/schemes/${SCHEME_ID}/current" "200" CURRENT_VERSION_ID="$(json_get "${TMP_DIR}/scheme_current.body" "scheme_version_id")" echo "CURRENT_VERSION_ID=${CURRENT_VERSION_ID}" request "ensure_draft" "POST" \ "${API_URL}/api/v1/schemes/${SCHEME_ID}/draft/ensure?expected_current_scheme_version_id=${CURRENT_VERSION_ID}" \ "200" DRAFT_VERSION_ID="$(json_get "${TMP_DIR}/ensure_draft.body" "scheme_version_id")" echo "DRAFT_VERSION_ID=${DRAFT_VERSION_ID}" request "initial_publish_preview_audit" "GET" \ "${API_URL}/api/v1/admin/artifacts/publish-preview/audit" \ "200" assert_json_int_eq "${TMP_DIR}/initial_publish_preview_audit.body" "orphan_files_count" "0" assert_json_int_eq "${TMP_DIR}/initial_publish_preview_audit.body" "missing_files_for_db_rows_count" "0" request "publish_preview_refresh_case_a" "GET" \ "${API_URL}/api/v1/schemes/${SCHEME_ID}/draft/publish-preview?refresh=true&expected_scheme_version_id=${DRAFT_VERSION_ID}" \ "200" request "admin_current_artifacts_case_a" "GET" \ "${API_URL}/api/v1/admin/schemes/${SCHEME_ID}/current/artifacts" \ "200" read -r CASE_A_ARTIFACT_ID CASE_A_STORAGE_PATH <