#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" source "$SCRIPT_DIR/../harness/helpers.sh" setup_test_env trap teardown_test_env EXIT # Generate a config that is missing the required `nas_host` field. source "$HARNESS_DIR/config-gen.sh" _gen_broken_config missing_field # The binary should fail to parse the config and exit non-zero. output=$("$WARPGATE_BIN" status -c "$TEST_CONFIG" 2>&1) && { echo "FAIL: warpgate status should have exited non-zero for missing field" echo " output: $output" exit 1 } # The error message from the TOML deserializer should mention "missing field". assert_output_contains "$output" "missing field" echo "PASS: $(basename "$0" .sh)"