""" Test script pentru verificarea conexiunii Oracle pool """ import asyncio import sys import os from datetime import datetime # Load environment variables try: from dotenv import load_dotenv # Load .env from roa2web root directory env_path = os.path.join(os.path.dirname(__file__), '../../.env') load_dotenv(env_path) print(f"πŸ“„ Loaded environment from: {env_path}") except ImportError: print("⚠️ python-dotenv not available, using system environment variables") # AdΔƒugare path pentru shared modules sys.path.append(os.path.dirname(__file__)) from oracle_pool import oracle_pool async def test_oracle_pool(): """Test simplu pentru verificarea pool-ului Oracle""" print("πŸ”„ Testing Oracle connection pool...") try: # IniΘ›ializare pool print("πŸ“Š Initializing Oracle pool...") await oracle_pool.initialize() print("βœ… Pool initialized successfully") # Test conexiune print("πŸ” Testing database connection...") async with oracle_pool.get_connection() as conn: with conn.cursor() as cursor: cursor.execute("SELECT 1 FROM DUAL") result = cursor.fetchone() print(f"βœ… Database connection test successful: {result}") print("🎯 Testing connection pool info...") if oracle_pool._pool: print(f"πŸ“ˆ Pool connections opened: {oracle_pool._pool.opened}") print(f"πŸ“Š Pool connections busy: {oracle_pool._pool.busy}") # Cleanup print("🧹 Closing pool...") await oracle_pool.close_pool() print("βœ… Pool closed successfully") print("\nπŸŽ‰ All tests passed! Oracle pool is working correctly.") except Exception as e: print(f"❌ Error testing Oracle pool: {str(e)}") print(f"πŸ’‘ Make sure environment variables are set:") print(f" - ORACLE_USER: {'βœ… SET' if os.getenv('ORACLE_USER') else '❌ NOT SET'}") print(f" - ORACLE_PASSWORD: {'βœ… SET' if os.getenv('ORACLE_PASSWORD') else '❌ NOT SET'}") print(f" - ORACLE_DSN: {'βœ… SET' if os.getenv('ORACLE_DSN') else '❌ NOT SET'}") return False return True if __name__ == "__main__": print(f"πŸš€ ROA2WEB Oracle Pool Test - {datetime.now()}") print("=" * 50) success = asyncio.run(test_oracle_pool()) sys.exit(0 if success else 1)