コード例 #1
0
        public async Task CheckGettingAllUsersWithRoleStylistAsync()
        {
            ApplicationDbContext db = GetDb();

            var repository      = new EfDeletableEntityRepository <ApplicationUser>(db);
            var rolesRepository = new EfDeletableEntityRepository <ApplicationRole>(db);

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

            var firstStylist = new ApplicationUser()
            {
                Id = "1", Email = "*****@*****.**"
            };
            var secondStylist = new ApplicationUser()
            {
                Id = "2", Email = "*****@*****.**"
            };
            var thirdStylist = new ApplicationUser()
            {
                Id = "3", Email = "*****@*****.**"
            };

            var role = new ApplicationRole()
            {
                Id   = "1",
                Name = GlobalConstants.StylistRoleName,
            };

            await db.Users.AddAsync(firstStylist);

            await db.Users.AddAsync(secondStylist);

            await db.Users.AddAsync(thirdStylist);

            await db.Roles.AddAsync(role);

            await db.SaveChangesAsync();

            await service.AddRoleStylistAsync(firstStylist.Email);

            await service.AddRoleStylistAsync(secondStylist.Email);

            await service.AddRoleStylistAsync(thirdStylist.Email);

            var stylists = await service.GetAllAsync <TestStylistModel>();

            Assert.Equal(3, stylists.Count());
            Assert.Contains(firstStylist.Roles, r => r.RoleId == role.Id);
            Assert.Contains(secondStylist.Roles, r => r.RoleId == role.Id);
            Assert.Contains(thirdStylist.Roles, r => r.RoleId == role.Id);
        }
コード例 #2
0
        public async Task CheckAddingRoleToExistingNonStylistAsync()
        {
            ApplicationDbContext db = GetDb();

            var repository      = new EfDeletableEntityRepository <ApplicationUser>(db);
            var rolesRepository = new EfDeletableEntityRepository <ApplicationRole>(db);

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

            var role = new ApplicationRole()
            {
                Id   = "1",
                Name = GlobalConstants.StylistRoleName,
            };

            await db.Roles.AddAsync(role);

            await db.SaveChangesAsync();

            var stylistId = await service.AddRoleStylistAsync("*****@*****.**");

            Assert.Null(stylistId);
        }
コード例 #3
0
        public async Task CheckSearchingStylistByCategoryAsync()
        {
            ApplicationDbContext db = GetDb();

            var repository      = new EfDeletableEntityRepository <ApplicationUser>(db);
            var rolesRepository = new EfDeletableEntityRepository <ApplicationRole>(db);

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

            var firstCategory = new Category()
            {
                Id   = "1",
                Name = "Hair",
            };

            var secondCategory = new Category()
            {
                Id   = "2",
                Name = "Makeup",
            };

            var firstStylist = new ApplicationUser()
            {
                Id = "1", Email = "*****@*****.**", CategoryId = firstCategory.Id
            };
            var secondStylist = new ApplicationUser()
            {
                Id = "2", Email = "*****@*****.**", CategoryId = firstCategory.Id
            };
            var thirdStylist = new ApplicationUser()
            {
                Id = "3", Email = "*****@*****.**", CategoryId = secondCategory.Id
            };

            var role = new ApplicationRole()
            {
                Id   = "1",
                Name = GlobalConstants.StylistRoleName,
            };

            await db.Users.AddAsync(firstStylist);

            await db.Users.AddAsync(secondStylist);

            await db.Users.AddAsync(thirdStylist);

            await db.Categories.AddAsync(firstCategory);

            await db.Categories.AddAsync(secondCategory);

            await db.Roles.AddAsync(role);

            await db.SaveChangesAsync();

            await service.AddRoleStylistAsync(firstStylist.Email);

            await service.AddRoleStylistAsync(secondStylist.Email);

            await service.AddRoleStylistAsync(thirdStylist.Email);

            var stylists = await service.SearchByCategoryAsync <TestStylistModel>(firstCategory.Id);

            Assert.Equal(2, stylists.Count());
        }