Files
discord-fishbowl/run_test.py
matt 824b118e93 Add comprehensive Docker setup with PostgreSQL, Redis, ChromaDB, and Qdrant
- 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.
2025-07-05 10:01:41 -07:00

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)