public void FromEvent_ActionOfInt() { var fe = new FromEvent(); var xs = Observable.FromEvent <int>(h => fe.B += h, h => fe.B -= h); fe.OnB(1); var n = 0; var d = xs.Subscribe(x => n += x); fe.OnB(2); fe.OnB(3); d.Dispose(); fe.OnB(4); Assert.Equal(2 + 3, n); }
public void FromEvent_MyAction() { var fe = new FromEvent(); var xs = Observable.FromEvent <MyAction, int>(h => new MyAction(h), h => fe.C += h, h => fe.C -= h); fe.OnC(1); var n = 0; var d = xs.Subscribe(x => n += x); fe.OnC(2); fe.OnC(3); d.Dispose(); fe.OnC(4); Assert.Equal(2 + 3, n); }
public void FromEvent_Action() { var fe = new FromEvent(); var xs = Observable.FromEvent(h => fe.A += h, h => fe.A -= h); fe.OnA(); var n = 0; var d = xs.Subscribe(_ => n++); fe.OnA(); fe.OnA(); d.Dispose(); fe.OnA(); Assert.Equal(2, n); }
public void FromEvent_ActionOfInt_SpecifiedExplicitly_TrivialConversion() { var fe = new FromEvent(); var xs = Observable.FromEvent <Action <int>, int>(h => h, h => fe.B += h, h => fe.B -= h); fe.OnB(1); var n = 0; var d = xs.Subscribe(x => n += x); fe.OnB(2); fe.OnB(3); d.Dispose(); fe.OnB(4); Assert.Equal(2 + 3, n); }