public void Multiple_correlationIds()
{
var sut = new AutoResetJoin(2);
List<object> result = null;
Action<List<object>> onJoin = _ => result = _;
var corrId1 = Guid.NewGuid();
var corrId2 = Guid.NewGuid();
sut.Process(0, "a", corrId1, onJoin);
sut.Process(0, "x", corrId2, onJoin);
sut.Process(1, 1, corrId1, onJoin);
Assert.That(new object[] { "a", 1 }, Is.EqualTo(result));
sut.Process(1, 10, corrId2, onJoin);
Assert.That(new object[] { "x", 10 }, Is.EqualTo(result));
sut.Process(0, "b", corrId1, onJoin);
sut.Process(1, 11, corrId2, onJoin);
sut.Process(1, 2, corrId1, onJoin);
Assert.That(result, Is.EqualTo(new object[] { "b", 2 }));
sut.Process(0, "y", corrId2, onJoin);
Assert.That(result, Is.EqualTo(new object[] { "y", 11 }));
}