public void Execute()
{
int cnt = 0;
IPortReceive pa = new Port <int> ();
IPortReceive pb = new Port <string> ();
var mr = new MultipleItemReceiver (Arbiter.FromHandler (() => { ++cnt; }), pa, pb);
var dq = new SerialDispatchQueue ();
mr.TaskQueue = dq;
Assert.AreEqual (0, pa.GetReceivers ().Length, "#1");
Assert.AreEqual (0, pb.GetReceivers ().Length, "#2");
mr.Execute ();
Assert.AreEqual (1, pa.GetReceivers ().Length, "#3");
Assert.AreEqual (1, pb.GetReceivers ().Length, "#4");
Assert.AreEqual (ReceiverTaskState.Onetime, pa.GetReceivers ()[0].State, "#5");
}