public void Receive_Fires_ReceivedMessage() { var tcs = new TaskCompletionSource <ReceivedMessageEventArgs>(); _sut.ReceivedMessage += (s, e) => { tcs.SetResult(e); }; SendTestMessage(); _sut.Receive(); tcs.Task.Wait(); Assert.IsNotNull(tcs.Task.Result.Message); }