run_one_test.py•1.63 kB
#!/usr/bin/env python3
"""Run a single simple test"""
import asyncio
import logging
from agents.action_generation import action_agent, input_agent, task_agent, State
from agents.browser_loop import browser_loop
async def main():
    log_file = "logs/simple_test.log"
    logging.basicConfig(
        level=logging.INFO,
        format='%(message)s',
        handlers=[
            logging.FileHandler(log_file, mode='w'),
            logging.StreamHandler()
        ]
    )
    logger = logging.getLogger(__name__)
    logger.info("="*80)
    logger.info("TEST: Simple Google Search")
    logger.info("="*80)
    logger.info("")
    # Create initial state
    state = State(
        action_description="search for a query on Google",
        website_url="https://google.com"
    )
    # Run pipeline
    logger.info("Step 1: action_agent")
    state = await action_agent(state)
    logger.info(f"  → Function: {state.function_metadata.function_name}")
    logger.info("")
    logger.info("Step 2: input_agent")
    state = await input_agent(state)
    logger.info(f"  → Test inputs: {state.test_inputs}")
    logger.info("")
    logger.info("Step 3: task_agent")
    state = await task_agent(state)
    logger.info(f"  → Task created")
    logger.info("")
    logger.info("Step 4: browser_loop")
    logger.info("")
    state = await browser_loop(state)
    logger.info("")
    logger.info("="*80)
    logger.info(f"RESULT: {state.result}")
    logger.info(f"Test results: {state.test_results}")
    logger.info("="*80)
    logger.info(f"\nLog: {log_file}")
if __name__ == "__main__":
    asyncio.run(main())