| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- #!/bin/bash
- # Advanced test runner with multi-agent support
- # Usage: ./scripts/testing/test.sh [agent] [model] [options]
- # Examples:
- # ./scripts/testing/test.sh openagent --core # Run core tests
- # ./scripts/testing/test.sh openagent opencode/grok-code-fast # Run all tests with specific model
- # ./scripts/testing/test.sh openagent --core --debug # Run core tests with debug
- set -e
- # Colors
- GREEN='\033[0;32m'
- BLUE='\033[0;34m'
- YELLOW='\033[1;33m'
- RED='\033[0;31m'
- NC='\033[0m' # No Color
- # Defaults and argument parsing
- AGENT=all
- MODEL=opencode/grok-code-fast
- AGENT_SET=false
- MODEL_SET=false
- CORE_MODE=false
- EXTRA_ARGS=()
- while [ $# -gt 0 ]; do
- case "$1" in
- --core)
- CORE_MODE=true
- ;;
- --*)
- EXTRA_ARGS+=("$1")
- ;;
- *)
- if [ "$AGENT_SET" = false ]; then
- AGENT="$1"
- AGENT_SET=true
- elif [ "$MODEL_SET" = false ]; then
- MODEL="$1"
- MODEL_SET=true
- else
- EXTRA_ARGS+=("$1")
- fi
- ;;
- esac
- shift
- done
- echo -e "${BLUE}🧪 OpenCode Agents Test Runner${NC}"
- echo -e "${BLUE}================================${NC}"
- echo ""
- if [ "$CORE_MODE" = true ]; then
- echo -e "Mode: ${YELLOW}CORE TEST SUITE (7 tests, ~5-8 min)${NC}"
- fi
- echo -e "Agent: ${GREEN}${AGENT}${NC}"
- echo -e "Model: ${GREEN}${MODEL}${NC}"
- if [ -n "${EXTRA_ARGS[*]}" ]; then
- echo -e "Extra: ${YELLOW}${EXTRA_ARGS[*]}${NC}"
- fi
- REPO_ROOT=$(cd "$(dirname "$0")/../.." && pwd)
- # Check if dependencies are installed
- if [ ! -d "$REPO_ROOT/node_modules" ]; then
- echo -e "${YELLOW}⚠️ Dependencies not installed. Running pnpm install...${NC}"
- pnpm --dir "$REPO_ROOT" install
- echo ""
- fi
- # Run tests
- EVAL_SCRIPT=eval:sdk
- if [ "$CORE_MODE" = true ]; then
- EVAL_SCRIPT=eval:sdk:core
- fi
- if [ "$AGENT" = "all" ]; then
- echo -e "${YELLOW}Running tests for ALL agents...${NC}"
- pnpm --dir "$REPO_ROOT/evals/framework" run "$EVAL_SCRIPT" -- --model="$MODEL" "${EXTRA_ARGS[@]}" && EXIT_CODE=0 || EXIT_CODE=$?
- else
- echo -e "${YELLOW}Running tests for ${AGENT}...${NC}"
- pnpm --dir "$REPO_ROOT/evals/framework" run "$EVAL_SCRIPT" -- --agent="$AGENT" --model="$MODEL" "${EXTRA_ARGS[@]}" && EXIT_CODE=0 || EXIT_CODE=$?
- fi
- echo ""
- if [ $EXIT_CODE -eq 0 ]; then
- echo -e "${GREEN}✅ Tests complete!${NC}"
- else
- echo -e "${RED}❌ Tests failed with exit code ${EXIT_CODE}${NC}"
- fi
- echo -e "${BLUE}View results: pnpm run dashboard${NC}"
- echo ""
- exit $EXIT_CODE
|