public async Task EnsureNoMessageSent(int timeout = 10000) { Task <T> onMessageTask; lock (lockObj) { while (listenPosition >= completionSources.Count) { completionSources.Add(new TaskCompletionSource <T>()); } onMessageTask = completionSources[listenPosition].Task; } await IntegrationTestHelper.EnsureTaskDoesntCompleteAsync(onMessageTask, timeout); }