File size: 4,627 Bytes
c922f8b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 |
"""
Very simple test script to identify basic environment issues
"""
import os
import logging
import traceback
import sys
# Configure detailed logging
logging.basicConfig(
level=logging.DEBUG,
format="%(asctime)s - %(levelname)s - %(message)s"
)
logger = logging.getLogger("simple_test")
def check_env_vars():
"""Check environment variables"""
logger.info("Checking environment variables...")
required = ["OPENAI_API_KEY", "SUPABASE_URL", "SUPABASE_KEY"]
optional = ["SERPER_API_KEY"]
all_set = True
for var in required:
if os.environ.get(var):
logger.info(f"β {var} is set")
else:
logger.error(f"β {var} is NOT set")
all_set = False
for var in optional:
if os.environ.get(var):
logger.info(f"β {var} is set (optional)")
else:
logger.warning(f"β {var} is not set (optional)")
return all_set
def test_supabase_import():
"""Test importing Supabase client"""
logger.info("Testing Supabase imports...")
try:
from supabase import create_client
logger.info("β Successfully imported Supabase client")
return True
except Exception as e:
logger.error(f"β Failed to import Supabase: {e}")
logger.error(traceback.format_exc())
return False
def test_memory_module():
"""Test importing memory module"""
logger.info("Testing memory module imports...")
try:
# First try importing from the module
logger.info("Attempting to import from memory module...")
# Show the memory directory contents
import os
memory_dir = os.path.join(os.getcwd(), "memory")
if os.path.exists(memory_dir):
logger.info(f"Memory directory exists at: {memory_dir}")
files = os.listdir(memory_dir)
logger.info(f"Files in memory directory: {files}")
else:
logger.error(f"Memory directory not found at: {memory_dir}")
# Try importing directly
try:
from memory.supabase_memory import SupabaseMemory
logger.info("β Successfully imported SupabaseMemory class")
return True
except ImportError as ie:
logger.error(f"β Import error: {ie}")
logger.error(traceback.format_exc())
# Try importing the module
try:
import memory
logger.info(f"β Successfully imported memory module")
logger.info(f"Memory module attributes: {dir(memory)}")
return False
except ImportError as ie2:
logger.error(f"β Failed to import memory module: {ie2}")
logger.error(traceback.format_exc())
return False
except Exception as e:
logger.error(f"β Other error importing SupabaseMemory: {e}")
logger.error(traceback.format_exc())
return False
except Exception as e:
logger.error(f"β Unexpected error in test_memory_module: {e}")
logger.error(traceback.format_exc())
return False
def check_python_path():
"""Check Python path"""
logger.info("Checking Python path...")
# Print current working directory
cwd = os.getcwd()
logger.info(f"Current working directory: {cwd}")
# Print Python path
logger.info(f"Python path: {sys.path}")
# Check if current directory is in path
if cwd in sys.path:
logger.info("β Current directory is in Python path")
else:
logger.warning("β Current directory is NOT in Python path")
# Add it
sys.path.insert(0, cwd)
logger.info("β Added current directory to Python path")
def main():
logger.info("=== BASIC COMPONENT TEST ===")
# Check Python path
check_python_path()
# Check environment variables
env_ok = check_env_vars()
if not env_ok:
logger.error("Environment variables check failed")
# Test imports
supabase_ok = test_supabase_import()
if not supabase_ok:
logger.error("Supabase import failed")
# Test memory module
memory_ok = test_memory_module()
if not memory_ok:
logger.error("Memory module test failed")
logger.info("=== TEST COMPLETE ===")
if env_ok and supabase_ok and memory_ok:
logger.info("β
All basic tests passed")
return 0
else:
logger.error("β Some tests failed")
return 1
if __name__ == "__main__":
sys.exit(main()) |