public async Task Add_Get_Update_Delete()
        {
            var adminKey     = KeyHelper.GetAdminKey();
            var emailAddress = "*****@*****.**";

            var permissionService = new PermissionService(adminKey);

            var addResponse = await permissionService.Add(new AddPermissionRequest(emailAddress, new PermissionRequest(false, false, false)));

            Assert.IsTrue(addResponse.IsSuccess);

            var getResponse = await permissionService.Get(new GetPermissionRequest(emailAddress));

            Assert.IsTrue(getResponse.IsSuccess);

            var listResponse = await permissionService.List();

            Assert.IsTrue(listResponse.IsSuccess);

            var updateResponse = await permissionService.Update(new UpdatePermissionRequest(emailAddress, new PermissionRequest(true, true, true)));

            Assert.IsTrue(updateResponse.IsSuccess);

            var getResponse2 = await permissionService.Get(new GetPermissionRequest(emailAddress));

            Assert.IsTrue(getResponse2.IsSuccess);

            var deleteResponse = await permissionService.Remove(new RemovePermissionRequest(emailAddress));

            Assert.IsTrue(deleteResponse.IsSuccess);
        }
示例#2
0
        public async Task <ActionResult <List <Permission> > > Get([FromHeader] string authToken)
        {
            if (!await _authenticationService.CheckAccess(authToken, "permView"))
            {
                return(Unauthorized());
            }

            return(await _permissionService.Get());
        }
        public void GetPermission()
        {
            //Automapper
            AutoMapperConfig.RegisterMappings();

            //Mock repos
            Mock <IRepo <Permission> > mockPermissionRepo = new Mock <IRepo <Permission> >();

            //Test permissions
            Permission testPermission = new Permission {
                Id   = Guid.NewGuid(),
                Name = "Test 1"
            };
            PermissionDto testPermissionDto = Mapper.Map <PermissionDto>(testPermission);

            //Mock call
            mockPermissionRepo.Setup(x => x.Get(It.Is <Guid>(y => y == testPermission.Id))).Returns(testPermission);

            //Mock unit of work
            Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.SetupGet(x => x.PermissionRepo).Returns(mockPermissionRepo.Object);

            //Permission service
            PermissionService permissionService = new PermissionService(mockUnitOfWork.Object);

            //Test
            PermissionDto permission = permissionService.Get(testPermission.Id);

            TestUtil.Compare(testPermissionDto, permission);
        }
示例#4
0
        public void UpdatePermission(AjaxEditPermissionViewModel ajaxEditPermissionViewModel)
        {
            using (var unitOfWork = _unitOfWorkManager.NewUnitOfWork())
            {
                try
                {
                    var mappedItem = new CategoryPermission
                    {
                        CategoryId    = ajaxEditPermissionViewModel.Category,
                        MemberGroupId = ajaxEditPermissionViewModel.MemberGroup,
                        Permission    = _permissionService.Get(ajaxEditPermissionViewModel.Permission),
                        IsTicked      = ajaxEditPermissionViewModel.HasPermission
                    };
                    _categoryPermissionService.UpdateOrCreateNew(mappedItem);

                    unitOfWork.Commit();
                }
                catch (Exception ex)
                {
                    unitOfWork.Rollback();
                    AppHelpers.LogError("Error updating permissions on category", ex);
                    throw;
                }
            }
        }
示例#5
0
        public ActionResult Edit(Guid Id)
        {
            var permission = _permissionService.Get(Id);

            if (permission == null)
            {
                return(RedirectToAction("Index"));
            }

            var viewModel = new EditPermissionsViewModel
            {
                Id           = permission.Id,
                Name         = permission.Name,
                Lock         = permission.Lock,
                PermissionId = permission.PermissionId,
                Permissions  = _permissionService.GetBaseSelectListPermissions(_permissionService.GetPermissionsParenPermission(permission))
            };

            return(View(viewModel));
        }
示例#6
0
        public async Task <ActionResult <ResultOutDto <Permission> > > GetPermission(int id)
        {
            try
            {
                var permission = await _permissionService.Get(id);

                return(Ok(ResultOutDtoBuilder.Success(permission)));
            }
            catch (NotExistedException e)
            {
                return(NotFound(ResultOutDtoBuilder.Fail <Permission>(e, "Not exist.")));
            }
        }
        public void GetPermissions()
        {
            //Automapper
            AutoMapperConfig.RegisterMappings();

            //Mock repos
            Mock <IRepo <Permission> > mockPermissionRepo = new Mock <IRepo <Permission> >();

            //Test permissions
            Permission[] testPermissions = new Permission[] {
                new Permission
                {
                    Id   = Guid.NewGuid(),
                    Name = "Test 1"
                },
                new Permission {
                    Id   = Guid.NewGuid(),
                    Name = "Test 2"
                }
            };
            PermissionDto[] testPermissionDtos = Mapper.Map <PermissionDto[]>(testPermissions);

            //Mock call
            mockPermissionRepo.Setup(x => x.Get(
                                         It.IsAny <Expression <Func <Permission, bool> > >(),
                                         -1,
                                         -1,
                                         It.IsAny <Func <IQueryable <Permission>, IOrderedQueryable <Permission> > >(),
                                         ""
                                         )).Returns(testPermissions);

            //Mock unit of work
            Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.SetupGet(x => x.PermissionRepo).Returns(mockPermissionRepo.Object);

            //Permission service
            PermissionService permissionService = new PermissionService(mockUnitOfWork.Object);

            //Test
            PermissionDto[] permissions = permissionService.Get();
            TestUtil.Compare(testPermissionDtos, permissions);
        }
        public void GetNonexistentPermission()
        {
            //Mock repos
            Mock <IRepo <Permission> > mockPermissionRepo = new Mock <IRepo <Permission> >();

            //Mock call
            mockPermissionRepo.Setup(x => x.Get(It.IsAny <Guid>())).Returns <Permission>(null);

            //Mock unit of work
            Mock <IUnitOfWork> mockUnitOfWork = new Mock <IUnitOfWork>();

            mockUnitOfWork.SetupGet(x => x.PermissionRepo).Returns(mockPermissionRepo.Object);

            //Permission service
            PermissionService permissionService = new PermissionService(mockUnitOfWork.Object);

            //Test
            permissionService.Get(Guid.NewGuid());
        }
示例#9
0
        public ActionResult GetForm(string primaryKey)
        {
            var entity = PermissionService.Get(primaryKey);

            return(Content(entity.ToJson()));
        }