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 ReactsOnEventDerived() { var fake = new DerivedFake { Value = 1 }; fake.ObservePropertyChanged() .Subscribe(_changes.Add); Assert.AreEqual(0, _changes.Count); fake.OnPropertyChanged("SomeProp"); Assert.AreEqual(1, _changes.Count); AssertRx.AreEqual(fake, "SomeProp", _changes.Last()); }
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()); } }
public void ReactsOnEventDerived() { var changes = new List <EventPattern <PropertyChangedEventArgs> >(); var fake = new DerivedFake { Value = 1 }; using (fake.ObservePropertyChanged() .Subscribe(changes.Add)) { Assert.AreEqual(0, changes.Count); fake.OnPropertyChanged("SomeProp"); Assert.AreEqual(1, changes.Count); EventPatternAssert.AreEqual(fake, "SomeProp", changes.Last()); } }
public static void ReactsOnEventDerived() { var changes = new List <EventPattern <PropertyChangedEventArgs> >(); var source = new DerivedFake { Value = 1 }; using (source.ObservePropertyChanged() .Subscribe(changes.Add)) { Assert.AreEqual(0, changes.Count); source.OnPropertyChanged(nameof(source.Name)); Assert.AreEqual(1, changes.Count); EventPatternAssert.AreEqual(source, nameof(source.Name), changes.Last()); } }