Files
proxmox/scripts/tests/integration-test-scripts.sh

52 lines
1.7 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
# Integration tests for deploy, bridge, verify scripts
# Run: ./scripts/tests/integration-test-scripts.sh [--deploy|--bridge|--verify]
# Version: 2026-01-31
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
test_load_env() {
echo "Test: load-project-env"
source "${SCRIPT_DIR}/../lib/load-project-env.sh"
[[ -n "${PROJECT_ROOT:-}" ]] || { echo "FAIL: PROJECT_ROOT"; return 1; }
[[ -n "$(get_host_for_vmid 10130)" ]] || { echo "FAIL: get_host_for_vmid"; return 1; }
echo " OK"
}
test_bridge_dry_run() {
echo "Test: bridge --dry-run (requires PRIVATE_KEY, CCIPWETH9_BRIDGE_CHAIN138)"
source "${SCRIPT_DIR}/../lib/load-project-env.sh" 2>/dev/null || true
if [[ -z "${CCIPWETH9_BRIDGE_CHAIN138:-}" ]]; then
echo " SKIP (CCIPWETH9_BRIDGE_CHAIN138 not set)"
return 0
fi
"${SCRIPT_DIR}/../bridge/run-send-cross-chain.sh" 0.0001 0x0000000000000000000000000000000000000001 --dry-run 2>/dev/null || echo " SKIP (cast/RPC)"
echo " OK"
}
test_verify_preflight() {
echo "Test: verify script pre-flight (forge, node, smom-dbis-138)"
[[ -d "${PROJECT_ROOT}/smom-dbis-138" ]] || { echo " SKIP (smom-dbis-138 not found)"; return 0; }
command -v forge &>/dev/null || { echo " SKIP (forge not found)"; return 0; }
command -v node &>/dev/null || { echo " SKIP (node not found)"; return 0; }
echo " OK"
}
test_deploy_syntax() {
echo "Test: deploy script syntax"
bash -n "${SCRIPT_DIR}/../dbis/deploy-dbis-frontend-to-container.sh" || { echo " FAIL"; return 1; }
echo " OK"
}
run_tests() {
test_load_env
test_deploy_syntax
test_verify_preflight
test_bridge_dry_run
}
run_tests