Refactor: rename setup script to ai-setup.sh and update all references
This commit is contained in:
@@ -1,53 +1,53 @@
|
||||
#!/usr/bin/env bash
|
||||
# tests/test_fixes.sh — unit tests for code-review fixes in claude_setup.sh
|
||||
# tests/test_fixes.sh — unit tests for code-review fixes in ai-setup.sh
|
||||
# Run: bash tests/test_fixes.sh
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT="$(cd "$(dirname "$0")/.." && pwd)/claude_setup.sh"
|
||||
SCRIPT="$(cd "$(dirname "$0")/.." && pwd)/ai-setup.sh"
|
||||
PASS=0; FAIL=0
|
||||
|
||||
ok() { echo "[PASS] $1"; PASS=$((PASS+1)); }
|
||||
fail() { echo "[FAIL] $1"; FAIL=$((FAIL+1)); }
|
||||
|
||||
# Extract sections
|
||||
GPT_SECTION=$(awk '/^cat > "\$BIN_DIR\/claude_gpt"/,/^GPTEOF/' "$SCRIPT")
|
||||
KIMI_SECTION=$(awk '/^cat > "\$BIN_DIR\/claude_kimi"/,/^KIMIEOF/' "$SCRIPT")
|
||||
GPT_SECTION=$(awk '/^cat > "\$BIN_DIR\/ai-gpt"/,/^GPTEOF/' "$SCRIPT")
|
||||
KIMI_SECTION=$(awk '/^cat > "\$BIN_DIR\/ai-kimi"/,/^KIMIEOF/' "$SCRIPT")
|
||||
GEMINI_SECTION=$(awk '/^cat > "\$BIN_DIR\/claude_gemini"/,/^GEMINIEOF/' "$SCRIPT")
|
||||
|
||||
# ── claude_gpt: auto-install codex ────────────────────────────────────────────
|
||||
# ── ai-gpt: auto-install codex ────────────────────────────────────────────
|
||||
test_gpt_autoinstall() {
|
||||
if echo "$GPT_SECTION" | grep -q 'curl -fsSL https://chatgpt.com/codex/install.sh'; then
|
||||
ok "claude_gpt: auto-installs codex via official install script"
|
||||
ok "ai-gpt: auto-installs codex via official install script"
|
||||
else
|
||||
fail "claude_gpt: missing codex auto-install"
|
||||
fail "ai-gpt: missing codex auto-install"
|
||||
fi
|
||||
}
|
||||
|
||||
# ── claude_gpt: no proxy logic (simplified launcher) ──────────────────────────
|
||||
# ── ai-gpt: no proxy logic (simplified launcher) ──────────────────────────
|
||||
test_gpt_no_proxy() {
|
||||
if echo "$GPT_SECTION" | grep -q 'ANTHROPIC_BASE_URL'; then
|
||||
fail "claude_gpt: still contains proxy logic (ANTHROPIC_BASE_URL)"
|
||||
fail "ai-gpt: still contains proxy logic (ANTHROPIC_BASE_URL)"
|
||||
else
|
||||
ok "claude_gpt: proxy logic removed (no ANTHROPIC_BASE_URL)"
|
||||
ok "ai-gpt: proxy logic removed (no ANTHROPIC_BASE_URL)"
|
||||
fi
|
||||
}
|
||||
|
||||
# ── claude_kimi: auto-install kimi ────────────────────────────────────────────
|
||||
# ── ai-kimi: auto-install kimi ────────────────────────────────────────────
|
||||
test_kimi_autoinstall() {
|
||||
if echo "$KIMI_SECTION" | grep -q 'curl -fsSL https://code.kimi.com/kimi-code/install.sh'; then
|
||||
ok "claude_kimi: auto-installs kimi via official install script"
|
||||
ok "ai-kimi: auto-installs kimi via official install script"
|
||||
else
|
||||
fail "claude_kimi: missing kimi auto-install"
|
||||
fail "ai-kimi: missing kimi auto-install"
|
||||
fi
|
||||
}
|
||||
|
||||
# ── claude_kimi: no proxy logic (simplified launcher) ─────────────────────────
|
||||
# ── ai-kimi: no proxy logic (simplified launcher) ─────────────────────────
|
||||
test_kimi_no_proxy() {
|
||||
if echo "$KIMI_SECTION" | grep -q 'ANTHROPIC_BASE_URL'; then
|
||||
fail "claude_kimi: still contains proxy logic (ANTHROPIC_BASE_URL)"
|
||||
fail "ai-kimi: still contains proxy logic (ANTHROPIC_BASE_URL)"
|
||||
else
|
||||
ok "claude_kimi: proxy logic removed (no ANTHROPIC_BASE_URL)"
|
||||
ok "ai-kimi: proxy logic removed (no ANTHROPIC_BASE_URL)"
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -74,9 +74,9 @@ test_fix7_trap_tmp() {
|
||||
# ── bash syntax of the whole script ─────────────────────────────────────────
|
||||
test_script_syntax() {
|
||||
if bash -n "$SCRIPT" 2>&1; then
|
||||
ok "syntax: claude_setup.sh passes 'bash -n'"
|
||||
ok "syntax: ai-setup.sh passes 'bash -n'"
|
||||
else
|
||||
fail "syntax: claude_setup.sh has syntax errors"
|
||||
fail "syntax: ai-setup.sh has syntax errors"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user