#!/bin/bash # Test script for configuration wizard with default answers # This provides automated input to test the wizard functionality set -e # Colors for output RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color print_info() { echo -e "${BLUE}[INFO]${NC} $1" } print_success() { echo -e "${GREEN}[SUCCESS]${NC} $1" } print_error() { echo -e "${RED}[ERROR]${NC} $1" } print_info "Testing configuration wizard with default answers..." # Create input for the wizard # This provides answers for all the questions the wizard will ask cat > /tmp/wizard_input.txt << 'EOF' n n n n n n n n n 127.0.0.1 3030 dev 4 n n n y EOF print_info "Running wizard with test input..." # Run the wizard with our input if cd server && cargo run --bin simple_config_wizard --quiet < /tmp/wizard_input.txt; then print_success "Wizard completed successfully!" # Check if files were generated if [ -f "../config.toml" ]; then print_success "config.toml generated" echo "First 10 lines of config.toml:" head -n 10 ../config.toml else print_error "config.toml not found" fi # Check if Cargo.toml was updated if grep -q "default = \[" Cargo.toml; then print_success "Cargo.toml features updated" echo "Default features:" grep -A 2 "default = \[" Cargo.toml else print_error "Cargo.toml features not updated" fi else print_error "Wizard failed!" exit 1 fi # Cleanup rm -f /tmp/wizard_input.txt print_success "Test completed!"