Exemple #1
0
        public async Task CheckRemovingProcedureAsync()
        {
            ApplicationDbContext db = GetDb();

            var repository = new EfDeletableEntityRepository <ApplicationUser>(db);
            var procedureStylistsRepository = new EfRepository <ProcedureStylist>(db);

            var service = new StylistsService(
                repository,
                this.rolesRepository.Object,
                procedureStylistsRepository,
                this.proceduresRepository.Object,
                this.cloudinaryService.Object);

            var firstStylist = new ApplicationUser()
            {
                Id = "1"
            };
            var secondStylist = new ApplicationUser()
            {
                Id = "2"
            };
            var firstProcedure = new Procedure()
            {
                Id = "1"
            };
            var secondProcedure = new Procedure()
            {
                Id = "2"
            };

            await db.Users.AddAsync(firstStylist);

            await db.Users.AddAsync(secondStylist);

            await db.Procedures.AddAsync(firstProcedure);

            await db.Procedures.AddAsync(secondProcedure);

            await db.SaveChangesAsync();

            await service.AddProcedureToStylistAsync(firstStylist.Id, firstProcedure.Id);

            await service.AddProcedureToStylistAsync(secondStylist.Id, firstProcedure.Id);

            await service.AddProcedureToStylistAsync(secondStylist.Id, secondProcedure.Id);

            await service.RemoveProcedureAsync(firstStylist.Id, firstProcedure.Id);

            await service.RemoveAllProceduresAsync(secondStylist.Id);

            Assert.Empty(firstStylist.StylistProcedures);
            Assert.Empty(secondStylist.StylistProcedures);
        }
Exemple #2
0
        public async Task CheckAddingProcedureToStylistAsync()
        {
            ApplicationDbContext db = GetDb();

            var repository = new EfDeletableEntityRepository <ApplicationUser>(db);
            var procedureStylistsRepository = new EfRepository <ProcedureStylist>(db);

            var service = new StylistsService(
                repository,
                this.rolesRepository.Object,
                procedureStylistsRepository,
                this.proceduresRepository.Object,
                this.cloudinaryService.Object);

            var stylist = new ApplicationUser()
            {
                Id = "1"
            };
            var procedure = new Procedure()
            {
                Id = "1"
            };

            await db.Users.AddAsync(stylist);

            await db.Procedures.AddAsync(procedure);

            await db.SaveChangesAsync();

            var isAddedTrueCase = await service.AddProcedureToStylistAsync(stylist.Id, procedure.Id);

            var isAddedFalseCase = await service.AddProcedureToStylistAsync(stylist.Id, procedure.Id);

            Assert.True(isAddedTrueCase);
            Assert.True(!isAddedFalseCase);
        }