public void INotifiedPropertyChanged_implementation_can_be_converted_to_reactive() { // Arrange var viewModel = new SomeViewModel(); var someData = viewModel.ToReactive(x => x.SomeData); // Act viewModel.SomeData += 1; // Assert someData.Value.Should().Be(viewModel.SomeData); }
public void Reactive_created_from_INotifiedPropertyChanged_should_not_notify_on_non_wrapped_property_change() { // Arrange var viewModel = new SomeViewModel(); var someData = viewModel.ToReactive(v => v.SomeData); var notified = false; someData.PropertyChanged += (sender, args) => notified = true; // Act viewModel.OtherData += 1; // Assert notified.Should().BeFalse(); }