#!/bin/bash

# Test Android Studio Project Configuration
# This script verifies that the Android project is properly set up for Android Studio

set -e

echo "🎯 Testing Android Studio Project Configuration"
echo "=============================================="

PROJECT_DIR="android-example"

cd "$PROJECT_DIR"

echo "✅ Android project directory found"

# Test Gradle wrapper
if [ -f "gradlew" ]; then
    echo "✅ Gradle wrapper found"
else
    echo "❌ Gradle wrapper missing"
    exit 1
fi

# Test if project can sync
echo "🔄 Testing Gradle sync..."
if ./gradlew tasks --quiet --warning-mode=none > /dev/null 2>&1; then
    echo "✅ Gradle sync successful"
else
    echo "❌ Gradle sync failed"
    echo "Try running: ./gradlew tasks"
    exit 1
fi

# Check for key project files
echo "🔍 Checking project structure..."

KEY_FILES=(
    "app/build.gradle"
    "build.gradle"
    "settings.gradle"
    "gradle/wrapper/gradle-wrapper.properties"
    "app/src/main/AndroidManifest.xml"
    "app/src/main/java/org/proofmode/android/example/MainActivity.kt"
)

for file in "${KEY_FILES[@]}"; do
    if [ -f "$file" ]; then
        echo "  ✅ $file"
    else
        echo "  ❌ Missing: $file"
    fi
done

# Check AAR library
if [ -f "app/libs/proofmode-rust.aar" ]; then
    echo "✅ ProofMode AAR library found"
else
    echo "⚠️ ProofMode AAR library not found (expected for mock setup)"
fi

echo ""
echo "📋 Android Studio Setup Status:"
echo "==============================="
echo "✅ Project structure is valid"
echo "✅ Gradle configuration is working"
echo "✅ Build targets are available"
echo ""
echo "🎉 Ready for Android Studio!"
echo ""
echo "Next steps:"
echo "1. Open Android Studio"
echo "2. Choose 'Open an existing project'"
echo "3. Navigate to $(pwd)"
echo "4. Click 'Open'"
echo "5. Wait for Gradle sync to complete"
echo "6. You should now see build targets in Android Studio"
echo ""
echo "Available build variants:"
echo "- debug (for development)"
echo "- release (for production)"
echo ""
echo "To build the app:"
echo "- Click the build button in Android Studio, or"
echo "- Run: ./gradlew assembleDebug"