public void SettingValueShouldCallValidateFunc() { // Arrange var sut = new TestValueOption(); // Act sut.Value = new object(); // Assert Assert.True(sut.Validated); }
public void SettingValueShouldThrowWhenGenericTypeDoesNotMatch() { // Arrange var sut = new TestValueOption <string>(); var iSut = (IValueOption)sut; // Act var ex = Record.Exception(() => iSut.Value = 123); // Assert Assert.IsType <ArgumentException>(ex); }
public void SettingValueShouldSetValueWhenCalledByInterface() { // Arrange var sut = new TestValueOption <string>(); var iSut = (IValueOption)sut; const string expected = "test"; // Act iSut.Value = expected; // Assert Assert.Equal(expected, iSut.Value); }
public void SettingValueShouldNotRaiseEventWhenValueIsSame() { // Arrange var sut = new TestValueOption(); var received = false; sut.ValueChanged += (s, e) => received = true; // Act sut.SetValue(sut.Value); // Assert Assert.False(received); }
public void SettingValueShouldRaiseEvent() { // Arrange var sut = new TestValueOption(); var newValue = new object(); // Act var evt = Assert.RaisesAny <EventArgs>( e => sut.ValueChanged += e, e => sut.ValueChanged -= e, () => sut.Value = newValue); // Assert Assert.NotNull(evt); Assert.Same(sut, evt.Sender); }