public void PersonDetailsPresenter_OkButtonPressedInAddMode_AddsPersonToManager() { // Arrange FakePersonManager manager = new FakePersonManager(); IPersonDetailsView view = new FakePersonDetailsView() { Forename = "Jed", Surname = "Jetson", BirthdayDay = "29", BirthdayMonth = "2" }; FakeViewFactory factory = new FakeViewFactory(view); IPersonDetailsPresenter presenter = new PersonDetailsPresenter(factory, manager); presenter.AddPerson(); //Act presenter.OkButtonPressed(); //Assert Person addedPerson = manager.AddedPerson; Assert.IsNotNull(addedPerson, "The person was not added to the repository"); Assert.AreEqual("Jed", addedPerson.Forename, "Forename not added correctly"); Assert.AreEqual("Jetson", addedPerson.Surname, "Surname not added correctly"); Assert.AreEqual(29, addedPerson.BirthdayDay, "BirthdayDay not added correctly"); Assert.AreEqual(2, addedPerson.BirthdayMonth, "BirthdayMonth not added correctly"); }
public static void SetupServiceLocator() { IPersonManager manager = new PersonManager(new PersonRepository()); IViewFactory viewFactory = new ViewFactory(); IPersonDetailsPresenter detailsPresenter = new PersonDetailsPresenter(viewFactory, manager); IPersonListView listView = new PersonListView(); IPersonListPresenter listPresenter = new PersonListPresenter(listView, manager); ClientServiceLocator.PersonDetailsPresenter = detailsPresenter; ClientServiceLocator.PersonListPresenter = listPresenter; }
public void PersonDetailsPresenter_ShowView_ShowsView() { // Arrange FakePersonManager manager = new FakePersonManager(); FakePersonDetailsView view = new FakePersonDetailsView(); FakeViewFactory factory = new FakeViewFactory(view); IPersonDetailsPresenter presenter = new PersonDetailsPresenter(factory, manager); //Act presenter.ShowView(false); //Assert Assert.IsTrue(view.FormShown, "View not shown"); }
public void PersonDetailsPresenter_OkButtonPressedInUndefinedMode_ThrowsException() { // Arrange IPersonDetailsPresenter presenter = new PersonDetailsPresenter(new FakeViewFactory(), new FakePersonManager()); //Act ApplicationException expectedException = null; try{ presenter.OkButtonPressed(); } catch (ApplicationException ex) { expectedException = ex; } //Assert Assert.IsNotNull(expectedException, "Exception not thrown as expected"); }
public void PersonDetailsPresenter_AddPerson_SetsViewTitle() { // Arrange FakePersonManager manager = new FakePersonManager(); FakePersonDetailsView view = new FakePersonDetailsView(); FakeViewFactory factory = new FakeViewFactory(view); IPersonDetailsPresenter presenter = new PersonDetailsPresenter(factory, manager); //Act presenter.AddPerson(); //Assert Assert.AreEqual("Add Person", view.Title, "Title not set in view"); }
public void PersonDetailsPresenter_OkButtonPressedInEditMode_ClosesView() { // Arrange IPersonDetailsPresenter presenter = new PersonDetailsPresenter(new FakeViewFactory(), new FakePersonManager()); presenter.EditPerson(PersonObjectMother.GetPerson(TestPeople.Ted)); // sets to edit mode //Act presenter.OkButtonPressed(); //Assert FakePersonDetailsView view = (FakePersonDetailsView)presenter.View; Assert.IsTrue(view.FormClosed, "Form not closed"); }
public void PersonDetailsPresenter_OkButtonPressedInAddMode_ClosesView() { // Arrange IPersonDetailsPresenter presenter = new PersonDetailsPresenter(new FakeViewFactory(), new FakePersonManager()); presenter.AddPerson(); //Act presenter.OkButtonPressed(); //Assert FakePersonDetailsView view = (FakePersonDetailsView)presenter.View; Assert.IsTrue(view.FormClosed, "Form not closed"); }
public void PersonDetailsPresenter_EditPerson_PassesCorrectDetailsToView() { // Arrange FakePersonManager manager = new FakePersonManager(); FakePersonDetailsView view = new FakePersonDetailsView(); FakeViewFactory factory = new FakeViewFactory(view); IPersonDetailsPresenter presenter = new PersonDetailsPresenter(factory, manager); //Act presenter.EditPerson(PersonObjectMother.GetPerson(TestPeople.Ted)); //Assert Assert.AreEqual(PersonObjectMother.GetPerson(TestPeople.Ted).Forename, view.Forename, "Forename not set in view"); Assert.AreEqual(PersonObjectMother.GetPerson(TestPeople.Ted).Surname, view.Surname, "Surname not set in view"); Assert.AreEqual(PersonObjectMother.GetPerson(TestPeople.Ted).BirthdayDay.ToString(), view.BirthdayDay, "BirthdayDay not set in view"); Assert.AreEqual(PersonObjectMother.GetPerson(TestPeople.Ted).BirthdayMonth.ToString(), view.BirthdayMonth, "BirthdayMonth not set in view"); }
public void PersonDetailsPresenter_OkButtonPressedInEditMode_UpdatesPersonInManager() { // Arrange FakePersonManager manager = new FakePersonManager(); IPersonDetailsPresenter presenter = new PersonDetailsPresenter(new FakeViewFactory(), manager); Person p = PersonObjectMother.GetPerson(TestPeople.Sue); presenter.EditPerson(p); //Act presenter.OkButtonPressed(); //Assert Person updatedPerson = manager.UpdatedPerson; Assert.IsNotNull(updatedPerson, "The person was not updated in the manager"); Assertions.AssertPeopleAreEqual(p, updatedPerson); }