public void SignalsOnDerivedSourceChanges() { var fake = new DerivedFake(); fake.ObservePropertyChangedWithValue(x => x.Name, false) .Subscribe(_changes.Add); CollectionAssert.IsEmpty(_changes); fake.Name = "El Kurro"; Assert.AreEqual(1, _changes.Count); Assert.AreEqual("El Kurro", _changes.Single().EventArgs.Value); Assert.AreSame(fake, _changes.Single().Sender); Assert.IsTrue(_changes.Single().EventArgs.HasValue); }
public void SignalsOnDerivedSourceChanges() { var changes = new List <EventPattern <PropertyChangedAndValueEventArgs <string> > >(); var fake = new DerivedFake(); using (fake.ObservePropertyChangedWithValue(x => x.Name, signalInitial: false) .Subscribe(changes.Add)) { CollectionAssert.IsEmpty(changes); fake.Name = "Johan"; EventPatternAssert.AreEqual(fake, "Name", Maybe.Some("Johan"), changes.Single()); } }