/
AlexandrNarbaev
/
opencode_initializer
Обзор
Документация
Войти
/
AlexandrNarbaev
/
opencode_initializer
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
tests/integration/test_airgap_bundle.sh
47 строк
3 KB
Alexandr Narbaev
v3.1.0: core hardening + SSOT completion + macOS compat + SDD commands
08 авг 2026, 22:20
08 авг 2026, 22:20
af6ca43
Код
Авторство
О чём код?
#!/usr/bin/env bash # Integration: Air-gap bundle structure validation + network isolation # @docker — requires Docker for full test; structural checks are CI-safe set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" PROJECT_DIR="$(dirname "$(dirname "$SCRIPT_DIR")")" PASS=0; FAIL=0 check() { local d="$1"; shift; if "$@" &>/dev/null; then PASS=$((PASS+1)); else echo " FAIL: $d" >&2; FAIL=$((FAIL+1)); fi; } check_neg() { local d="$1"; shift; if ! "$@" &>/dev/null; then PASS=$((PASS+1)); else echo " FAIL: $d" >&2; FAIL=$((FAIL+1)); fi; } echo "=== Integration: Air-gap Bundle (S5.2) ===" # ── Bundle script exists ─────────────────────────────────────────────────── BUNDLE_SH="$PROJECT_DIR/src/lib/46-offline-bundle.sh" check "46-offline-bundle.sh exists" test -f "$BUNDLE_SH" # ── Bundle functions defined ────────────────────────────────────────────── check "_offline_bundle_create defined" grep -q '_offline_bundle_create()' "$BUNDLE_SH" check "_offline_bundle_run defined" grep -q '_offline_bundle_run()' "$BUNDLE_SH" # ── Manifest SHA256 support ─────────────────────────────────────────────── check "manifest.sha256 referenced" grep -q 'manifest.sha256' "$BUNDLE_SH" # ── S5.2.2: Network isolation during air-gap ──────────────────────────── # Verify air-gap mode blocks network: mock _curl, verify it gets overridden _curl_mock() { return 0; } check "T5: _curl mock defined and callable" "_curl_mock" # Verify OFFLINE_MODE or airgap-related variable exists in module check "T6: airgap reference in bundle module" grep -q -e 'airgap' -e 'offline' -e 'AIRGAP' -e 'OFFLINE' "$BUNDLE_SH" # Verify bundle module has no live HTTP calls (uses _curl which is mockable) check_neg "T7: no raw http calls in bundle" grep -q 'curl http' "$BUNDLE_SH" # Verify air-gap manifest structure expectations check "T8: manifest/sha256 referenced" grep -q 'sha256' "$BUNDLE_SH" # ── dev bundle commands in dev.sh ───────────────────────────────────────── check "dev bundle create in dev.sh" grep -q 'bundle.*create\|bundle create' "$PROJECT_DIR/dev.sh" # ── Syntax check ────────────────────────────────────────────────────────── check "46-offline-bundle.sh syntax" bash -n "$BUNDLE_SH" echo "RESULTS: $PASS pass, $FAIL fail" exit $FAIL