forked from eatvio/eatvio_app
fix(chat): ws manager
This commit is contained in:
@@ -252,5 +252,36 @@ void main() {
|
||||
|
||||
expect(manager.client, isNull);
|
||||
});
|
||||
|
||||
test('reconnected - эмитит сигнал после восстановления соединения', () async {
|
||||
final wsService = MockWsService();
|
||||
final manager = WsManager(wsService: wsService, errorReporter: const NoOpErrorReporter());
|
||||
|
||||
final received = <void>[];
|
||||
final subscription = manager.reconnected.listen(received.add);
|
||||
|
||||
manager.handleConnectionEstablished();
|
||||
await Future<void>.delayed(Duration.zero);
|
||||
|
||||
expect(received, hasLength(1));
|
||||
|
||||
await subscription.cancel();
|
||||
});
|
||||
|
||||
test('reconnected - переживает clear (поток не закрывается при логауте)', () async {
|
||||
final wsService = MockWsService();
|
||||
final manager = WsManager(wsService: wsService, errorReporter: const NoOpErrorReporter());
|
||||
|
||||
final received = <void>[];
|
||||
final subscription = manager.reconnected.listen(received.add);
|
||||
|
||||
await manager.clear();
|
||||
manager.handleConnectionEstablished();
|
||||
await Future<void>.delayed(Duration.zero);
|
||||
|
||||
expect(received, hasLength(1));
|
||||
|
||||
await subscription.cancel();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user