public void RaisePropertyChanged_WithExpressionAndMessage_ShouldCallRaisePropertyChangedWithStringAndWithExpression() { var testObject = new TestViewModelForPropertyChanged(); var eventWasRaised = false; var messageWasReceived = false; testObject.PropertyChanged += (s, e) => { if (e.PropertyName == "BoolPropertyWithExpressionAndMessage") { eventWasRaised = true; } }; Messenger.Default.Register<PropertyChangedMessage<bool>>( this, message => { if (message.PropertyName == "BoolPropertyWithExpressionAndMessage" && message.Sender == testObject) { messageWasReceived = true; } }); Assert.IsFalse(testObject.BoolPropertyWithExpressionAndMessage); testObject.BoolPropertyWithExpressionAndMessage = true; Assert.IsTrue(testObject.BoolPropertyWithExpressionAndMessage); Assert.IsTrue(eventWasRaised); Assert.IsTrue(messageWasReceived); Assert.IsTrue(testObject.RaisePropertyChangedWithPropertyNameWasCalled); Assert.IsTrue(testObject.RaisePropertyChangedWithExpressionWasCalled); }
public void RaisePropertyChanged_WithExpressionAndMessage_ShouldCallRaisePropertyChangedWithStringAndWithExpression() { var testObject = new TestViewModelForPropertyChanged(); var eventWasRaised = false; var messageWasReceived = false; testObject.PropertyChanged += (s, e) => { if (e.PropertyName == "BoolPropertyWithExpressionAndMessage") { eventWasRaised = true; } }; Messenger.Default.Register <PropertyChangedMessage <bool> >( this, message => { if (message.PropertyName == "BoolPropertyWithExpressionAndMessage" && message.Sender == testObject) { messageWasReceived = true; } }); Assert.IsFalse(testObject.BoolPropertyWithExpressionAndMessage); testObject.BoolPropertyWithExpressionAndMessage = true; Assert.IsTrue(testObject.BoolPropertyWithExpressionAndMessage); Assert.IsTrue(eventWasRaised); Assert.IsTrue(messageWasReceived); Assert.IsTrue(testObject.RaisePropertyChangedWithPropertyNameWasCalled); Assert.IsTrue(testObject.RaisePropertyChangedWithExpressionWasCalled); }
public void RaisePropertyChanged_WithExpression_ShouldCallRaisePropertyChangedWithStringAndWithExpression() { var testObject = new TestViewModelForPropertyChanged(); var eventWasRaised = false; testObject.PropertyChanged += (s, e) => { if (e.PropertyName == "BoolPropertyWithExpression") { eventWasRaised = true; } }; Assert.IsFalse(testObject.BoolPropertyWithExpression); testObject.BoolPropertyWithExpression = true; Assert.IsTrue(testObject.BoolPropertyWithExpression); Assert.IsTrue(eventWasRaised); Assert.IsTrue(testObject.RaisePropertyChangedWithPropertyNameWasCalled); Assert.IsTrue(testObject.RaisePropertyChangedWithExpressionWasCalled); }
public void RaisePropertyChanged_WithSetAndExpression_ShouldCallRaisePropertyChangedWithStringAndWithExpression() { var testObject = new TestViewModelForPropertyChanged(); var eventWasRaised = false; testObject.PropertyChanged += (s, e) => { if (e.PropertyName == "BoolPropertyWithSetAndExpression") { eventWasRaised = true; } }; Assert.IsFalse(testObject.BoolPropertyWithSetAndExpression); testObject.BoolPropertyWithSetAndExpression = true; Assert.IsTrue(testObject.BoolPropertyWithSetAndExpression); Assert.IsTrue(eventWasRaised); Assert.IsTrue(testObject.RaisePropertyChangedWithPropertyNameWasCalled); Assert.IsTrue(testObject.RaisePropertyChangedWithExpressionWasCalled); }