- Enhanced install.py with Docker detection and automatic service setup - Added docker-compose.services.yml for standalone database services - Created docker-services.sh management script for easy service control - Added DOCKER.md documentation with complete setup instructions - Updated requirements.txt for Python 3.13 compatibility - Added multiple test scripts and configuration files - Enhanced collaborative creative projects with proper database integration - Fixed SQLAlchemy metadata field conflicts in database models - Added comprehensive quickstart and testing guides Services now available: - PostgreSQL with Docker - Redis with Docker - ChromaDB vector database - Qdrant vector database (recommended) - PgAdmin for database administration The setup script now automatically detects Docker and offers streamlined installation with one-command service deployment.
56 lines
1.6 KiB
Python
56 lines
1.6 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Test runner that properly sets up the Python path
|
|
"""
|
|
|
|
import sys
|
|
import os
|
|
from pathlib import Path
|
|
|
|
# Set up the Python path correctly
|
|
project_root = Path(__file__).parent
|
|
src_path = project_root / "src"
|
|
sys.path.insert(0, str(src_path))
|
|
|
|
# Set environment variables
|
|
os.environ['DATABASE_URL'] = 'sqlite+aiosqlite:///fishbowl_test.db'
|
|
os.environ['ENVIRONMENT'] = 'development'
|
|
os.environ['LOG_LEVEL'] = 'INFO'
|
|
|
|
def main():
|
|
print("🚀 Discord Fishbowl Test Runner")
|
|
print("=" * 50)
|
|
|
|
# Test 1: Basic imports
|
|
print("\n📦 Testing imports...")
|
|
try:
|
|
import database.models
|
|
import rag.vector_store
|
|
import collaboration.creative_projects
|
|
print("✅ All imports successful")
|
|
except Exception as e:
|
|
print(f"❌ Import failed: {e}")
|
|
return False
|
|
|
|
# Test 2: Simple functionality test
|
|
print("\n🔧 Testing basic functionality...")
|
|
try:
|
|
from utils.config import get_settings
|
|
settings = get_settings()
|
|
print(f"✅ Configuration loaded: {settings.database.url}")
|
|
except Exception as e:
|
|
print(f"❌ Config test failed: {e}")
|
|
return False
|
|
|
|
print("\n🎉 Basic tests passed!")
|
|
print("\nFor full system testing:")
|
|
print("1. Install Ollama: https://ollama.ai/")
|
|
print("2. Pull a model: ollama pull llama2")
|
|
print("3. Run: python src/main.py (requires Discord tokens)")
|
|
print("4. Or test individual components with demo scripts")
|
|
|
|
return True
|
|
|
|
if __name__ == "__main__":
|
|
success = main()
|
|
sys.exit(0 if success else 1) |