async Task <Stream> AppendAndWaitUntilChanged(FlowKey key, Event e, TestTimeline timeline) { var connectionId = Id.FromGuid(); await _queryDb.SubscribeToChanged(connectionId, QueryETag.From(key)); var position = await timeline.Append(e); var newETag = QueryETag.From(key, position); await _notifier.WaitUntilChanged(connectionId, newETag); _queryDb.UnsubscribeFromChanged(connectionId); return(await _queryDb.ReadContent(newETag)); }
public void UnsubscribeFromChanged(string key) => _db.UnsubscribeFromChanged(ConnectionId, FlowKey.From(key, _area));