private Schedule_AtomicHandler_Sequential ( ) : System.Threading.Tasks.Task | ||
return | System.Threading.Tasks.Task |
public async Task Schedule_AtomicHandler_Sequential()
{
// Arrange
var log = new LogBoard<Tuple<int, int>>();
var a = ActorOf(() => new TestScheduleActor(log)).Cast<WorkerRef>();
// Act
var t1 = a.Atomic(1);
var t2 = a.Atomic(2);
await Task.WhenAll(t1, t2);
// Assert
Assert.Equal(new Tuple<int, int>[]
{
Tuple.Create(1, 1),
Tuple.Create(1, 2),
Tuple.Create(1, 3),
Tuple.Create(2, 1),
Tuple.Create(2, 2),
Tuple.Create(2, 3),
}, log);
}