public void SubscribesStream(User user) { var sut = new ReactiveViewModel<User, string>(user.Id); sut.MonitorEvents(); Connect(user.Id).Emit(user); sut.Model.Should().BeSameAs(user); sut.ShouldRaisePropertyChangeFor(x => x.Model); }
public void ModelSetterRaisesEventWithModelChangedEventArgs(User user) { var sut = new ReactiveViewModel<User, string>(user.Id); sut.MonitorEvents(); Connect(user.Id).Emit(user); sut.ShouldRaisePropertyChangeFor(x => x.Model) .WithArgs<PropertyChangedEventArgs>(args => ReferenceEquals( args, ReactiveViewModel.ModelChangedEventArgs)); }
public void SubscribesStream(User user) { var stream = Stream<User, string>.Get(user.Id); var sut = new ReactiveViewModel<User, string>(user.Id); sut.MonitorEvents(); stream.OnNext(Observable.Return(user)); sut.Model.Should().BeSameAs(user); sut.ShouldRaisePropertyChangeFor(x => x.Model); }