Stub web project
This commit is contained in:
@@ -1,23 +1,19 @@
|
||||
from aiohttp import WSMsgType
|
||||
from aiohttp import WSMsgType
|
||||
from aiohttp import web
|
||||
from aiohttp.test_utils import AioHTTPTestCase, unittest_run_loop
|
||||
from pathlib import Path
|
||||
from sia.web_agent import WebAgentState
|
||||
from typing import AsyncIterator, Iterator
|
||||
from unittest.mock import Mock, patch
|
||||
from unittest.mock import patch
|
||||
import asyncio
|
||||
import asyncio
|
||||
import json
|
||||
import json
|
||||
import shutil
|
||||
import tempfile
|
||||
|
||||
from sia.llm_engine import LlmEngine
|
||||
from sia.response_parser import ResponseParser
|
||||
from sia.system_metrics import SystemMetrics
|
||||
from sia.web_agent import WebAgentState
|
||||
from sia.web_io_buffer import WebIOBuffer
|
||||
from sia.web_server import WebServer, ServerMessage, ClientMessage
|
||||
from sia.working_memory import WorkingMemory
|
||||
from sia.xml_validator import XMLValidator
|
||||
from .mock_web_agent import MockWebAgent
|
||||
|
||||
class WebServerTest(AioHTTPTestCase):
|
||||
@@ -25,13 +21,28 @@ class WebServerTest(AioHTTPTestCase):
|
||||
"""Create application for testing."""
|
||||
self.io_buffer = WebIOBuffer()
|
||||
|
||||
# Create MockWebAgent instance
|
||||
self.agent = MockWebAgent()
|
||||
|
||||
# Create temporary directory for static files
|
||||
self.temp_dir = Path(tempfile.mkdtemp())
|
||||
self.static_dir = self.temp_dir / "static"
|
||||
self.static_dir.mkdir(exist_ok=True)
|
||||
|
||||
# Create web server
|
||||
self.web_server = WebServer(self.agent, self.io_buffer, "localhost", 8080)
|
||||
# Create web server with temp static directory
|
||||
self.web_server = WebServer(
|
||||
self.agent,
|
||||
self.io_buffer,
|
||||
"localhost",
|
||||
8080,
|
||||
static_dir=self.static_dir
|
||||
)
|
||||
return self.web_server.app
|
||||
|
||||
def tearDown(self):
|
||||
"""Clean up temporary directory."""
|
||||
if hasattr(self, 'temp_dir'):
|
||||
shutil.rmtree(self.temp_dir)
|
||||
|
||||
async def wait_for_messages(self, ws, count=1, timeout=5):
|
||||
"""Helper to wait for multiple WebSocket messages."""
|
||||
messages = []
|
||||
|
||||
Reference in New Issue
Block a user