private async Task PrepareAppointmentsAsync(AppointmentsService service) { await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "11:00", "test comment"); await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "12:00", "test comment"); await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "13:00", "test comment"); }
private async Task PrepareAppointmentsAndStatusAsync(AppointmentsService service) { string firstAppId = await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "11:00", "test comment"); string secondAppId = await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "12:00", "test comment"); string thirdAppId = await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "13:00", "test comment"); await service.DoneAsync(firstAppId); await service.DoneAsync(secondAppId); await service.CancelAsync(thirdAppId); }
public async Task CreateAsyncWorksCorrectly() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options; var dbContext = new ApplicationDbContext(options); var addressesService = new Mock <IAddressesService>(); var repository = new EfDeletableEntityRepository <Appointment>(dbContext); var service = new AppointmentsService(repository); var orderId = Guid.NewGuid().ToString(); var startDate = new DateTime(2020, 4, 27, 10, 0, 0); var endDate = new DateTime(2020, 4, 27, 12, 0, 0); await service.CreateAsync(startDate, 2, orderId); var result = dbContext.Appointments.FirstOrDefault(); Assert.Equal(result.EndDate, endDate); }
private async Task <string> GetAppointmentIdAsync(AppointmentsService service) { return(await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "11:00", "test comment")); }
private async Task <AppointmentsService> PrepareAppointmentReviewAsync() { ApplicationDbContext db = GetDb(); var repository = new EfDeletableEntityRepository <Appointment>(db); var usersService = new Mock <IUsersService>(); var cardsService = new Mock <ICardsService>(); var categoriesRepository = new EfDeletableEntityRepository <Category>(db); var categoryService = new CategoriesService(categoriesRepository); var proceduresRepository = new EfDeletableEntityRepository <Procedure>(db); var procedureReviewsRepository = new EfDeletableEntityRepository <Review>(db); var procedureProductsRepository = new EfRepository <ProcedureProduct>(db); var procedureStylistsRepository = new EfRepository <ProcedureStylist>(db); var skinProblemProcedureRepository = new EfRepository <SkinProblemProcedure>(db); var proceduresService = new ProceduresService( proceduresRepository, procedureReviewsRepository, procedureProductsRepository, procedureStylistsRepository, skinProblemProcedureRepository, repository, categoryService); var service = new AppointmentsService( repository, usersService.Object, cardsService.Object, proceduresService, categoryService); await db.Procedures.AddAsync(this.procedure); await db.Categories.AddAsync(this.category); await db.SaveChangesAsync(); var pastDate = DateTime.ParseExact("12/10/2020", "dd/MM/yyyy", CultureInfo.InvariantCulture); string firstAppId = await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, pastDate, "11:00", "test comment"); string secondAppId = await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, pastDate, "12:00", "test comment"); string thirdAppId = await service.CreateAsync(this.client.Id, this.stylist.Id, this.procedure.Id, DateTime.UtcNow, "13:00", "test comment"); await service.DoneAsync(firstAppId); await service.DoneAsync(secondAppId); await service.DoneAsync(thirdAppId); var firstApp = await GetAppointmentAsync(repository, firstAppId); firstApp.IsReview = true; repository.Update(firstApp); await repository.SaveChangesAsync(); return(service); }