Agentic-RagBot / scripts /test_chat_demo.py
T0X1N's picture
chore: codebase audit and fixes (ruff, mypy, pytest)
9659593
"""
Quick demo script to test the chatbot with pre-defined inputs
"""
import subprocess
import sys
# Test inputs
test_cases = [
"help", # Show biomarker help
"glucose 185, HbA1c 8.2, cholesterol 235, triglycerides 210, HDL 38", # Diabetes case
"n", # Don't save report
"quit", # Exit
]
print("=" * 70)
print("CLI Chatbot Demo Test")
print("=" * 70)
print("\nThis will run the chatbot with pre-defined inputs:")
for i, case in enumerate(test_cases, 1):
print(f" {i}. {case}")
print("\n" + "=" * 70 + "\n")
# Prepare input string
input_str = "\n".join(test_cases) + "\n"
# Run the chatbot with piped input
try:
result = subprocess.run(
[sys.executable, "scripts/chat.py"],
input=input_str,
capture_output=True,
text=True,
timeout=120,
encoding="utf-8",
errors="replace",
)
print("STDOUT:")
print(result.stdout)
if result.stderr:
print("\nSTDERR:")
print(result.stderr)
print(f"\nExit code: {result.returncode}")
except subprocess.TimeoutExpired:
print("⚠️ Test timed out after 120 seconds")
except Exception as e:
print(f"❌ Error running test: {e}")