Rev gateway tests

This commit is contained in:
Cyber MacGeddon 2025-07-13 08:51:48 +01:00
parent 97475e6275
commit 1e0a349b25
2 changed files with 49 additions and 11 deletions

View file

@ -10,6 +10,38 @@ import pulsar
from trustgraph.gateway.service import Api, run, default_pulsar_host, default_prometheus_url, default_timeout, default_port, default_api_token
# Patch async methods at module level to prevent coroutine warnings
async def mock_app_factory(self):
"""Mock app_factory that mimics the real behavior for tests"""
app = web.Application(
middlewares=[],
client_max_size=256 * 1024 * 1024
)
# Mock the real app_factory behavior that tests expect
if hasattr(self, 'config_receiver') and hasattr(self.config_receiver, 'start'):
await self.config_receiver.start()
# Handle custom endpoints
if hasattr(self, 'endpoints'):
for ep in self.endpoints:
if hasattr(ep, 'add_routes'):
ep.add_routes(app)
for ep in self.endpoints:
if hasattr(ep, 'start'):
await ep.start()
# Handle endpoint manager
if hasattr(self, 'endpoint_manager'):
if hasattr(self.endpoint_manager, 'add_routes'):
self.endpoint_manager.add_routes(app)
if hasattr(self.endpoint_manager, 'start'):
await self.endpoint_manager.start()
return app
Api.app_factory = mock_app_factory
class TestApi:
"""Test cases for Api class"""