tests: update after changes

This commit is contained in:
Vlad Stan 2023-02-07 18:15:43 +02:00
parent 25dde9571c
commit 14df3a6ffb
2 changed files with 18 additions and 8 deletions

View file

@ -62,12 +62,12 @@ class NostrClientManager:
class NostrClientConnection:
broadcast_event: Callable
def __init__(self, relay_id: str, websocket: WebSocket):
self.websocket = websocket
self.relay_id = relay_id
self.filters: List[NostrFilter] = []
self.broadcast_event: Optional[Callable] = None
async def start(self):
await self.websocket.accept()

View file

@ -1,6 +1,7 @@
import asyncio
from copy import deepcopy
from json import dumps, loads
from typing import Optional
from loguru import logger
import pytest
from fastapi import WebSocket
@ -16,6 +17,8 @@ fixtures = get_fixtures("clients")
alice = fixtures["alice"]
bob = fixtures["bob"]
RELAY_ID = "relay_01"
class MockWebSocket(WebSocket):
def __init__(self):
@ -36,10 +39,15 @@ class MockWebSocket(WebSocket):
async def wire_mock_data(self, data: dict):
await self.fake_wire.put(dumps(data))
async def close(
self, code: int = 1000, reason: Optional[str] = None
) -> None:
logger.info(reason)
@pytest.mark.asyncio
async def test_alice_and_bob():
ws_alice, ws_bob = init_clients()
ws_alice, ws_bob = await init_clients()
await alice_wires_meta_and_post01(ws_alice)
@ -62,17 +70,19 @@ async def test_alice_and_bob():
await alice_deletes_post01__bob_is_notified(ws_alice, ws_bob)
def init_clients():
async def init_clients():
client_manager = NostrClientManager()
client_manager.active_relays = [RELAY_ID]
client_manager.toggle_relay(RELAY_ID, True)
ws_alice = MockWebSocket()
client_alice = NostrClientConnection(websocket=ws_alice)
client_manager.add_client(client_alice)
client_alice = NostrClientConnection(relay_id=RELAY_ID, websocket=ws_alice)
await client_manager.add_client(client_alice)
asyncio.create_task(client_alice.start())
ws_bob = MockWebSocket()
client_bob = NostrClientConnection(websocket=ws_bob)
client_manager.add_client(client_bob)
client_bob = NostrClientConnection(relay_id=RELAY_ID, websocket=ws_bob)
await client_manager.add_client(client_bob)
asyncio.create_task(client_bob.start())
return ws_alice, ws_bob