public void BenchmarkPresenter_DeleteProjectClicked_AsksYesNoQuestionAndExitsAfterNoAnswer() { // Arrange var benchmarkService = CreateBenchmarkServiceWithTwoSlotsAndProjects(); var model = CreateModel(benchmarkService); var messageBox = new MockMessageBoxPresenter((o, t, c) => DialogResult.No); using (var presenter = new MockFormBenchmarksPresenter(model, messageBox)) { presenter.Show(); presenter.Model.SelectedSlotIdentifier = presenter.Model.SlotIdentifierValueItems.Last(); Assert.AreEqual(2, presenter.Model.SlotProjects.Count); presenter.Model.SelectedSlotProjectListItems.Clear(); presenter.Model.SelectedSlotProjectListItems.Add(presenter.Model.SlotProjectListItems.Last()); // Act presenter.DeleteProjectClicked(); // Assert Assert.AreEqual(2, presenter.Model.SlotProjects.Count); Assert.AreEqual(1, messageBox.Invocations.Count); } }