public async void EndAppointmentShouldChangeTheStatusToProcessed(AppointmentStatus status) { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()); var appointmentsRepository = new EfDeletableEntityRepository <Appointment>(new ApplicationDbContext(options.Options)); var notificationsRepository = new EfDeletableEntityRepository <Notification>(new ApplicationDbContext(options.Options)); var appointmentsService = new AppointmentsService(notificationsRepository, appointmentsRepository); var appointment = new Appointment { Status = status, Date = DateTime.UtcNow, StartTime = DateTime.UtcNow, EndTime = DateTime.UtcNow.AddMinutes(5), Dogsitter = new Dogsitter { WageRate = 10, }, Owner = new Owner(), }; await appointmentsService.CreateNewAppointment(appointment); await appointmentsService.EndAppointment(appointment.Id); Assert.Equal(AppointmentStatus.Processed.ToString(), appointmentsService.GetAppointment(appointment.Id).Status.ToString()); }