public void Christmas_is_only_from_December_3rd_to_December_31() { // Given var presenter = new DecorationsPresenter(dayUpdateMock.Object, configuration); DateTime November_30th = new DateTime(2015, 11, 30); DateTime December_1st = new DateTime(2015, 12, 1); DateTime December_3rd = new DateTime(2014, 12, 3); DateTime December_31st = new DateTime(2016, 12, 31); DateTime January_1st = new DateTime(2016, 1, 1); // When, Then mockDotNet.Setup(m => m.Now).Returns(November_30th); Assert.IsFalse(presenter.IsChristmas); mockDotNet.Setup(m => m.Now).Returns(December_1st); Assert.IsFalse(presenter.IsChristmas); mockDotNet.Setup(m => m.Now).Returns(December_3rd); Assert.IsTrue(presenter.IsChristmas); mockDotNet.Setup(m => m.Now).Returns(December_31st); Assert.IsTrue(presenter.IsChristmas); mockDotNet.Setup(m => m.Now).Returns(January_1st); Assert.IsFalse(presenter.IsChristmas); }
public void Easter_can_be_forced_by_a_configuration_item() { // Given configuration.Add(new InformationRadiatorItemConfigurationField() { ID = "ForceEaster", Value = "true" }); var presenter = new DecorationsPresenter(dayUpdateMock.Object, configuration); mockDotNet.Setup(m => m.Now).Returns(new DateTime(2015, 4, 9)); // When, Then Assert.IsTrue(presenter.IsEaster); }
public void Christmas_can_be_forced_by_a_configuration_item() { // Given configuration.Add(new InformationRadiatorItemConfigurationField() { ID = "ForceChristmas", Value = "true" }); var presenter = new DecorationsPresenter(dayUpdateMock.Object, configuration); DateTime November_30th = new DateTime(2015, 11, 30); mockDotNet.Setup(m => m.Now).Returns(November_30th); // When, Then Assert.IsTrue(presenter.IsChristmas); }
public void The_view_is_updated_on_a_day_change() { // Given var presenter = new DecorationsPresenter(dayUpdateMock.Object, configuration); DecorationsPresenter eventPresenter = null; presenter.Update += (sender, e) => { eventPresenter = sender as DecorationsPresenter; }; // When dayUpdateMock.Raise(m => m.DayChanged += null, dayUpdateMock.Object, EventArgs.Empty); // Then Assert.AreEqual(presenter, eventPresenter, "Update event was not raised"); }
public void Easter_is_only_from_March_20th_to_April_8th() { // Given var presenter = new DecorationsPresenter(dayUpdateMock.Object, configuration); // When, Then mockDotNet.Setup(m => m.Now).Returns(new DateTime(2015, 3, 19)); Assert.IsFalse(presenter.IsEaster); mockDotNet.Setup(m => m.Now).Returns(new DateTime(2015, 3, 20)); Assert.IsTrue(presenter.IsEaster); mockDotNet.Setup(m => m.Now).Returns(new DateTime(2015, 4, 8)); Assert.IsTrue(presenter.IsEaster); mockDotNet.Setup(m => m.Now).Returns(new DateTime(2015, 4, 9)); Assert.IsFalse(presenter.IsEaster); }
public void A_Steve_Quote_Angel_is_not_shown_if_it_is_not_Christmas() { // Given DateTime November_30th = new DateTime(2015, 11, 30); mockDotNet.Setup(m => m.Now).Returns(November_30th); var presenter = new DecorationsPresenter(dayUpdateMock.Object, configuration); bool show = true; presenter.SteveQuoteUpdate += (sender, e) => { show = e.ShowSteveAngel; }; // When fakeTimer.OnTick(times: 14); // Then Assert.IsFalse(show, "SteveQuoteUpdate event indicated that the Steve Quote Angel should be shown when it isn't Christmas"); }
public void A_Steve_Quote_Angel_is_shown_if_it_is_Christmas() { // Given DateTime December_3rd = new DateTime(2014, 12, 3); mockDotNet.Setup(m => m.Now).Returns(December_3rd); var presenter = new DecorationsPresenter(dayUpdateMock.Object, configuration); bool show = false; presenter.SteveQuoteUpdate += (sender, e) => { show = e.ShowSteveAngel; }; // When fakeTimer.OnTick(times: 14); // Then Assert.IsTrue(show, "SteveQuoteUpdate event did not indicate that the Steve Quote Angel should be shown during Christmas"); }