public void CreateAppointment_NullStaff_ThrowsArgumentException() { var appointmentRepository = new Mock<IAppointmentRepository> (); var appointmentFactory = new AppointmentFactory ( appointmentRepository.Object ); var start = new DateTime ( 2000, 1, 1, 9, 0, 0 ); var end = new DateTime ( 2000, 1, 1, 10, 0, 0 ); appointmentFactory.CreateAppointment ( null, new DateTimeRange ( start, end ) ); }
public void CreateAppointment_GivenValidArguments_CreatesAnAppointment() { var appointmentRepository = new Mock<IAppointmentRepository> (); var appointmentFactory = new AppointmentFactory ( appointmentRepository.Object ); var staff = new Mock<Staff> (); var start = new DateTime ( 2000, 1, 1, 9, 0, 0 ); var end = new DateTime ( 2000, 1, 1, 10, 0, 0 ); Appointment appointment = appointmentFactory.CreateAppointment ( staff.Object, new DateTimeRange ( start, end ) ); Assert.IsNotNull ( appointment ); }
public void CreateAppointment_GivenValidArguments_AppointmentIsEditable() { using ( var serviceLocatorFixture = new ServiceLocatorFixture () ) { // Setup var appointmentRepository = new Mock<IAppointmentRepository> (); var appointmentFactory = new AppointmentFactory ( appointmentRepository.Object ); var staff = new Mock<Staff> (); var start = new DateTime ( 2000, 1, 1, 9, 0, 0 ); var end = new DateTime ( 2000, 1, 1, 10, 0, 0 ); Appointment appointment = appointmentFactory.CreateAppointment ( staff.Object, new DateTimeRange ( start, end ) ); appointment.ReviseSubjectDescription ( "Some Appointment" ); } }
public void CreateAppointment_GivenValidArguments_AppointmentIsPersisted() { bool isPersisted = false; var appointmentRepository = new Mock<IAppointmentRepository> (); appointmentRepository .Setup ( a => a.MakePersistent ( It.IsAny<Appointment> () ) ) .Callback ( () => isPersisted = true ); var appointmentFactory = new AppointmentFactory ( appointmentRepository.Object ); var staff = new Mock<Staff> (); var start = new DateTime ( 2000, 1, 1, 9, 0, 0 ); var end = new DateTime ( 2000, 1, 1, 10, 0, 0 ); appointmentFactory.CreateAppointment ( staff.Object, new DateTimeRange ( start, end ) ); Assert.IsTrue ( isPersisted ); }
public void DestroyAppointment_GivenAnAppointment_AppointmentIsMadeTransient() { bool isTransient = false; var appointmentRepository = new Mock<IAppointmentRepository> (); appointmentRepository .Setup ( a => a.MakeTransient ( It.IsAny<Appointment> () ) ) .Callback ( () => isTransient = true ); var appointmentFactory = new AppointmentFactory ( appointmentRepository.Object ); var appointment = new Mock<Appointment> (); appointmentFactory.DestroyAppointment ( appointment.Object ); Assert.IsTrue ( isTransient ); }