public async void StopShouldWaitUntilCollectionEmpty()
{
var fakeRouter = new FakeBrokerRouter();
using (var producer = new Producer(fakeRouter.Create()) { BatchDelayTime = TimeSpan.FromMilliseconds(500) })
{
var sendTask = producer.SendMessageAsync(FakeBrokerRouter.TestTopic, new[] { new Message() });
Assert.That(producer.BufferCount, Is.EqualTo(1));
producer.Stop(true, TimeSpan.FromSeconds(5));
await sendTask;
Assert.That(producer.BufferCount, Is.EqualTo(0));
Assert.That(sendTask.IsCompleted, Is.True);
Console.WriteLine("Unwinding test...");
}
}