Beispiel #1
0
        public void UpdateFromAPI(long id, UserRoleUpdate userRoleUpdate)
        {
            UserRoleRepository userRoleRepository = new UserRoleRepository();

            userRoleRepository.Roleid = userRoleUpdate.Roleid;
            userRoleRepository.Userid = userRoleUpdate.Userid;
            this.userRoleStoreRepository.Update(id, userRoleRepository);
        }
Beispiel #2
0
        public ActionResult UserRoles(FormCollection formCollection)
        {
            var username        = formCollection["Username"];
            var formUserInRoles = ConvertFormCollection();

            if (!string.IsNullOrWhiteSpace(username) && formUserInRoles != null)
            {
                var userRoleUpdate = new UserRoleUpdate();

                userRoleUpdate.UpdateUserRoles(username, formUserInRoles);
            }

            ViewBag.Title = "User Roles";

            return(RedirectToAction("UserRoles", new { username = username }));
        }
Beispiel #3
0
 public void ConstructorTest()
 {
     #region Init variables
     string address  = "*****@*****.**";
     string roleName = "testname";
     #endregion
     UserRoleUpdate userRoleUpdate = new UserRoleUpdate
     {
         Address  = address,
         RoleName = roleName
     };
     #region Tests
     Assert.NotNull(userRoleUpdate);
     Assert.Equal(userRoleUpdate.Address, address);
     Assert.Equal(userRoleUpdate.RoleName, roleName);
     #endregion
 }
Beispiel #4
0
        public IActionResult UpdateUserRole([FromBody] UserRoleUpdate userRoleUpdate)
        {
            _telemetryClient.TrackEvent("Put");
            ErrorResponse errorResponse = new ErrorResponse();
            string        userEmail     = User.Claims.Where(x => x.Type == "emails").First().Value;

            if (userEmail == userRoleUpdate.Address)
            {
                errorResponse.Errors.Add(new ErrorModel {
                    FieldName = "User", Message = "You can't change your role"
                });
                Response.StatusCode = 400;
                return(new JsonResult(errorResponse));
            }
            _userService.UpdateUserRole(userRoleUpdate);
            return(Ok());
        }
        public void WhenUserRoleUpdateHaveWrongRole_ShouldHaveError()
        {
            var validator = new UserRoleUpdateValidator();

            #region Init variables
            string address  = "*****@*****.**";
            string rolename = "WrongRole";
            #endregion
            UserRoleUpdate mailReadUpdate = new UserRoleUpdate
            {
                Address  = address,
                RoleName = rolename
            };
            var result = validator.TestValidate(mailReadUpdate);
            #region Tests
            result.ShouldHaveValidationErrorFor(x => x.RoleName);
            #endregion
        }
        public void WhenUserRoleUpdateAddressHaveNoDomain_ShouldHaveError()
        {
            var validator = new UserRoleUpdateValidator();

            #region Init variables
            string address  = "test@address";
            string roleName = "User";
            #endregion
            UserRoleUpdate mailReadUpdate = new UserRoleUpdate
            {
                Address  = address,
                RoleName = roleName
            };
            var result = validator.TestValidate(mailReadUpdate);
            #region Tests
            result.ShouldHaveValidationErrorFor(x => x.Address);
            #endregion
        }
        public void WhenUserRoleUpdateIsOk_ShouldNotHaveAnyError()
        {
            var validator = new UserRoleUpdateValidator();

            #region Init variables
            string address  = "*****@*****.**";
            string roleName = "User";
            #endregion
            UserRoleUpdate mailReadUpdate = new UserRoleUpdate
            {
                Address  = address,
                RoleName = roleName
            };
            var result = validator.TestValidate(mailReadUpdate);
            #region Tests
            result.ShouldNotHaveAnyValidationErrors();
            #endregion
        }
Beispiel #8
0
        public void UpdateUserRole(UserRoleUpdate userRoleUpdate)
        {
            var user = _context.Users.First(u => u.Email == userRoleUpdate.Address);

            user.Role = _context.Roles.First(r => r.RoleName == userRoleUpdate.RoleName);
            _context.SaveChanges();
            if (userRoleUpdate.RoleName == "User" || userRoleUpdate.RoleName == "Admin")
            {
                _notificationService.SendNotification(new List <string> {
                    userRoleUpdate.Address
                }, "ActivatedAccount", false);
            }
            else if (userRoleUpdate.RoleName == "Banned")
            {
                _notificationService.SendNotification(new List <string> {
                    userRoleUpdate.Address
                }, "BannedAccount", false);
            }
        }
Beispiel #9
0
        public void UpdateUserRole_ValidCall()
        {
            var users = GetSampleUsers().AsQueryable();
            var roles = GetSampleUserRoles().AsQueryable();

            var mockUserSet = new Mock <DbSet <User> >();

            mockUserSet.As <IQueryable <User> >().Setup(m => m.Provider).Returns(users.Provider);
            mockUserSet.As <IQueryable <User> >().Setup(m => m.Expression).Returns(users.Expression);
            mockUserSet.As <IQueryable <User> >().Setup(m => m.ElementType).Returns(users.ElementType);
            mockUserSet.As <IQueryable <User> >().Setup(m => m.GetEnumerator()).Returns(users.GetEnumerator());

            var mockRolesSet = new Mock <DbSet <UserRole> >();

            mockRolesSet.As <IQueryable <UserRole> >().Setup(m => m.Provider).Returns(roles.Provider);
            mockRolesSet.As <IQueryable <UserRole> >().Setup(m => m.Expression).Returns(roles.Expression);
            mockRolesSet.As <IQueryable <UserRole> >().Setup(m => m.ElementType).Returns(roles.ElementType);
            mockRolesSet.As <IQueryable <UserRole> >().Setup(m => m.GetEnumerator()).Returns(roles.GetEnumerator());

            var mockContext = new Mock <MailBoxDBContext>();

            mockContext.Setup(c => c.Users).Returns(mockUserSet.Object);
            mockContext.Setup(c => c.Roles).Returns(mockRolesSet.Object);

            var mockNotificationService = new Mock <NotificationService>();

            var            service        = new UserService(mockContext.Object, mockNotificationService.Object);
            UserRoleUpdate userRoleUpdate = new UserRoleUpdate
            {
                Address  = "*****@*****.**",
                RoleName = "User"
            };

            service.UpdateUserRole(userRoleUpdate);

            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }
Beispiel #10
0
 public void Update(long id, UserRoleUpdate userRoleUpdate)
 {
     this.userRoleApplication.UpdateFromAPI(id, userRoleUpdate);
 }