public void SetProperty_Exception_LambdaExpression_IsNotMemberAccess() { TestableNotifyPropertyChanged obj = new TestableNotifyPropertyChanged(); var e = Assert.Throws <ArgumentException>(() => obj.SetProperty_MySetProperty(10, () => 42)); Assert.Equal("The argument must be a member access lambda expression.\r\nParameter name: propertyExpression", e.Message); Assert.Equal("propertyExpression", e.ParamName); }
public void SetProperty_Exception_LambdaExpression_ExpressionIsNull() { TestableNotifyPropertyChanged obj = new TestableNotifyPropertyChanged(); Expression <Func <int> > propertyExpression = null; var e = Assert.Throws <ArgumentNullException>(() => obj.SetProperty_MySetProperty(10, propertyExpression)); Assert.Equal("Value cannot be null.\r\nParameter name: propertyExpression", e.Message); Assert.Equal("propertyExpression", e.ParamName); }
public void SetProperty_SetsProperty_Struct() { TestableNotifyPropertyChanged obj = new TestableNotifyPropertyChanged() { MySetProperty = 5 }; obj.SetProperty_MySetProperty(10, "MySetProperty"); Assert.Equal(10, obj.MySetProperty); }
public void SetProperty_ReturnsTrue_IfValueHasNotChanged() { TestableNotifyPropertyChanged obj = new TestableNotifyPropertyChanged() { MySetProperty = 10 }; bool changed = obj.SetProperty_MySetProperty(10, "MySetProperty"); Assert.Equal(false, changed); }
public void SetProperty_FiresPropertyChangedEvent_LambdaExpression() { TestableNotifyPropertyChanged obj = new TestableNotifyPropertyChanged(); int propertyChangedCount = 0; obj.PropertyChanged += (sender, e) => { Assert.Equal(obj, sender); Assert.Equal("MySetProperty", e.PropertyName); propertyChangedCount++; }; obj.SetProperty_MySetProperty(42, () => obj.MySetProperty); Assert.Equal(1, propertyChangedCount); }