chore: Add E2E test helper scripts and API key management
Added helper scripts to make running E2E tests easier: 1. .env.example - Template for API key storage 2. run_e2e_with_env.py - Loads API key from .env and runs E2E test 3. monitor_e2e.py - Real-time monitoring script for live output 4. run_e2e_test.bat - Windows batch script for easy execution These scripts make it easy to: - Store API key securely in .env (already in .gitignore) - Run E2E test without manually setting environment variables - Monitor test progress in real-time Usage: python run_e2e_with_env.py # Background execution python monitor_e2e.py # Live output in terminal API key is stored in .env (not committed to git) and automatically loaded by helper scripts. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
46
monitor_e2e.py
Normal file
46
monitor_e2e.py
Normal file
@@ -0,0 +1,46 @@
|
||||
"""
|
||||
Monitor E2E test progress in real-time
|
||||
|
||||
Run this in a separate terminal to see live updates
|
||||
"""
|
||||
import subprocess
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
# Load API key from .env
|
||||
env_vars = {}
|
||||
env_file = Path(".env")
|
||||
if env_file.exists():
|
||||
with open(env_file) as f:
|
||||
for line in f:
|
||||
line = line.strip()
|
||||
if line and not line.startswith('#') and '=' in line:
|
||||
key, value = line.split('=', 1)
|
||||
env_vars[key.strip()] = value.strip()
|
||||
|
||||
if 'ANTHROPIC_API_KEY' not in env_vars:
|
||||
print("[FAIL] No API key found in .env")
|
||||
sys.exit(1)
|
||||
|
||||
print("[OK] API key loaded")
|
||||
print()
|
||||
print("=" * 80)
|
||||
print("RUNNING E2E TEST - LIVE OUTPUT")
|
||||
print("=" * 80)
|
||||
print()
|
||||
|
||||
# Run test with live output (not in background)
|
||||
python_exe = "c:/Users/antoi/anaconda3/envs/test_env/python.exe"
|
||||
test_script = Path(__file__).parent / "tests" / "test_phase_3_2_e2e.py"
|
||||
|
||||
# Set environment and run
|
||||
import os
|
||||
os.environ.update(env_vars)
|
||||
|
||||
# Run with unbuffered output so we see it live
|
||||
result = subprocess.run(
|
||||
[python_exe, "-u", str(test_script)],
|
||||
env=os.environ
|
||||
)
|
||||
|
||||
sys.exit(result.returncode)
|
||||
Reference in New Issue
Block a user