public void NotCallUpdate_WhenObserverNotAttachedToSubject() { // Arrange var subject = new SpecialsSubject(); var mockObserver = new Mock <IObserver>(); // Act subject.SubjectState = "Footwear Sale"; subject.Notify(); // Assert mockObserver.Verify(observer => observer.Update(subject), Times.Never()); }
public void UpdateObserverOnce_WhenSubjectHasSpecials() { // Arrange var subject = new SpecialsSubject(); var mockObserver = new Mock <IObserver>(); // Act subject.Attach(mockObserver.Object); subject.SubjectState = "Footwear Sale"; subject.Notify(); // Assert mockObserver.Verify(observer => observer.Update(subject), Times.Once()); }