#!/bin/bash # Loki Mode Test Suite Runner # Runs all test cases for the Loki Mode skill set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" TOTAL_PASSED=0 TOTAL_FAILED=0 TESTS_RUN=0 # Colors RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' echo "" echo -e "${BLUE}╔════════════════════════════════════════════════════════════════╗${NC}" echo -e "${BLUE}║ LOKI MODE - COMPREHENSIVE TEST SUITE ║${NC}" echo -e "${BLUE}╚════════════════════════════════════════════════════════════════╝${NC}" echo "" run_test() { local test_name="$1" local test_file="$2" echo -e "${YELLOW}┌────────────────────────────────────────────────────────────────┐${NC}" echo -e "${YELLOW}│ Running: ${test_name}${NC}" echo -e "${YELLOW}└────────────────────────────────────────────────────────────────┘${NC}" echo "" TESTS_RUN=$((TESTS_RUN + 1)) if bash "$test_file"; then echo "" echo -e "${GREEN}✓ ${test_name} PASSED${NC}" TOTAL_PASSED=$((TOTAL_PASSED + 1)) else echo "" echo -e "${RED}✗ ${test_name} FAILED${NC}" TOTAL_FAILED=$((TOTAL_FAILED + 1)) fi echo "" echo "" } # Run all tests run_test "Bootstrap Tests" "$SCRIPT_DIR/test-bootstrap.sh" run_test "Task Queue Tests" "$SCRIPT_DIR/test-task-queue.sh" run_test "Circuit Breaker Tests" "$SCRIPT_DIR/test-circuit-breaker.sh" run_test "Timeout & Stuck Process Tests" "$SCRIPT_DIR/test-agent-timeout.sh" run_test "State Recovery Tests" "$SCRIPT_DIR/test-state-recovery.sh" run_test "Wrapper Script Tests" "$SCRIPT_DIR/test-wrapper.sh" # Summary echo -e "${BLUE}╔════════════════════════════════════════════════════════════════╗${NC}" echo -e "${BLUE}║ TEST SUITE SUMMARY ║${NC}" echo -e "${BLUE}╚════════════════════════════════════════════════════════════════╝${NC}" echo "" echo -e "Tests Run: ${TESTS_RUN}" echo -e "${GREEN}Passed: ${TOTAL_PASSED}${NC}" echo -e "${RED}Failed: ${TOTAL_FAILED}${NC}" echo "" if [ $TOTAL_FAILED -eq 0 ]; then echo -e "${GREEN}╔════════════════════════════════════════════════════════════════╗${NC}" echo -e "${GREEN}║ ALL TESTS PASSED SUCCESSFULLY! ║${NC}" echo -e "${GREEN}╚════════════════════════════════════════════════════════════════╝${NC}" exit 0 else echo -e "${RED}╔════════════════════════════════════════════════════════════════╗${NC}" echo -e "${RED}║ SOME TESTS FAILED - PLEASE REVIEW ║${NC}" echo -e "${RED}╚════════════════════════════════════════════════════════════════╝${NC}" exit 1 fi