示例#1
0
        public void Test_UserBanDelete()
        {
            var value = new UserBanDelete(
                new UserBan
                {
                    Id = 1,
                    User = new User()
                }
            );

            Assert.AreEqual(1, value.Id, "Id");
            Assert.IsNotNull(value.User, "User");
        }
示例#2
0
        public void Test_BanController_Delete_Post()
        {
            PrincipalHelper.Create();

            var value = new UserBanDelete { Id = 0 };
            var notFoundResult = this.BanController.Delete(value) as HttpNotFoundResult;

            Assert.IsNotNull(notFoundResult, "HttpNotFoundResult");

            value.Id = 1;

            var redirectToRouteResult = this.BanController.Delete(value) as RedirectToRouteResult;

            Assert.IsNotNull(redirectToRouteResult, "RedirectToRouteResult");
            Assert.AreEqual(UsersAdministrationRoutes.BanIndex, redirectToRouteResult.RouteName, "RouteName");

            PrincipalHelper.Clear();

            var notAuthorizedResult = this.BanController.Delete(value) as NotAuthorizedResult;

            Assert.IsNotNull(notAuthorizedResult, "NotAuthorizedResult");
        }
示例#3
0
        public ActionResult Delete(UserBanDelete value)
        {
            if (value == null)
            {
                throw new ArgumentNullException("value");
            }

            var ban = this.UserBanService.GetById(value.Id);

            if (ban == null)
            {
                return base.HttpNotFound();
            }

            var privilege = new UserBanPrivilege();

            if (!privilege.CanDelete(ban))
            {
                return NotAuthorized();
            }

            this.UserBanService.Delete(ban);

            return RedirectToRoute(UsersAdministrationRoutes.BanIndex);
        }