vocalguard-backend / backend /test_setup.py
Tawhid Bin Omar
first commit
463f12c
Raw
History Blame Contribute Delete
3.59 kB
"""
VocalGuard Backend Test Script
Run this to verify backend setup is working correctly.
"""
import sys
import os
print("=" * 60)
print("VocalGuard Backend Test")
print("=" * 60)
# Test 1: Python Version
print("\nβœ“ Testing Python version...")
if sys.version_info >= (3, 8):
print(f" βœ… Python {sys.version.split()[0]} (OK)")
else:
print(f" ❌ Python {sys.version.split()[0]} (Need 3.8+)")
sys.exit(1)
# Test 2: Import Core Libraries
print("\nβœ“ Testing core libraries...")
try:
import fastapi
print(f" βœ… FastAPI {fastapi.__version__}")
except ImportError:
print(" ❌ FastAPI not found. Run: pip install -r requirements.txt")
sys.exit(1)
try:
import firebase_admin
print(f" βœ… Firebase Admin SDK installed")
except ImportError:
print(" ❌ Firebase Admin not found. Run: pip install -r requirements.txt")
sys.exit(1)
try:
import librosa
print(f" βœ… Librosa {librosa.__version__}")
except ImportError:
print(" ❌ Librosa not found. Run: pip install -r requirements.txt")
sys.exit(1)
try:
import numpy
print(f" βœ… NumPy {numpy.__version__}")
except ImportError:
print(" ❌ NumPy not found. Run: pip install -r requirements.txt")
sys.exit(1)
# Test 3: Check Environment Variables
print("\nβœ“ Checking environment configuration...")
env_file = ".env"
if os.path.exists(env_file):
print(f" βœ… .env file found")
with open(env_file) as f:
content = f.read()
if "GOOGLE_APPLICATION_CREDENTIALS" in content:
print(f" βœ… GOOGLE_APPLICATION_CREDENTIALS configured")
else:
print(f" ⚠️ GOOGLE_APPLICATION_CREDENTIALS not set in .env")
else:
print(f" ⚠️ .env file not found (optional)")
# Test 4: Check Processor Module
print("\nβœ“ Testing processor module...")
try:
import processor
print(f" βœ… Processor module loaded")
print(f" πŸ“Š Chunk size: {processor.CHUNK_SECONDS}s")
print(f" 🎀 Sample rate: {processor.TARGET_SR}Hz")
except Exception as e:
print(f" ❌ Processor import failed: {e}")
sys.exit(1)
# Test 5: Check Main API Module
print("\nβœ“ Testing main API module...")
try:
import main
print(f" βœ… Main API module loaded")
print(f" 🌐 FastAPI app created")
except Exception as e:
print(f" ❌ Main module import failed: {e}")
sys.exit(1)
# Test 6: Optional - Check AI Models
print("\nβœ“ Checking AI models (optional)...")
try:
import torch
print(f" βœ… PyTorch {torch.__version__}")
if torch.cuda.is_available():
print(f" πŸš€ CUDA available (GPU acceleration)")
else:
print(f" πŸ’» CPU mode (slower processing)")
except ImportError:
print(" ⚠️ PyTorch not installed (will use heuristics)")
try:
from transformers import WhisperProcessor
print(f" βœ… Transformers library available")
except ImportError:
print(" ⚠️ Transformers not installed (transcription disabled)")
try:
from sentence_transformers import SentenceTransformer
print(f" βœ… Sentence Transformers available")
except ImportError:
print(" ⚠️ Sentence Transformers not installed")
# Summary
print("\n" + "=" * 60)
print("βœ… Backend test completed successfully!")
print("=" * 60)
print("\nπŸ“ Next steps:")
print(" 1. Configure Firebase credentials in .env")
print(" 2. Update frontend/app.js with Firebase config")
print(" 3. Run: python main.py")
print(" 4. Open: http://localhost:8000 (should see {\"status\":\"ok\"})")
print("\nπŸš€ To start backend: python main.py")
print("=" * 60)