예제 #1
0
        private static CreateRolePermission CreateRolePermission(string roleId, Permission p)
        {
            var c = new CreateRolePermission();

            c.Id              = new RolePermissionId();
            c.Id.RoleId       = roleId;
            c.Id.PermissionId = p.PermissionId;
            return(c);
        }
        public async Task TestRoleInvalid()
        {
            Dictionary <string, StringValues> parameters = new Dictionary <string, StringValues>()
            {
                { "role", "wrongRole" },
                { "auth_token", TestConfig.AdminToken }
            };
            var request  = CreateHttpRequest(parameters);
            var response = (JsonResult)await CreateRolePermission.Run(request, logger);

            Assert.Equal(400, response.StatusCode);
        }
        public async Task TestValidRole()
        {
            Dictionary <string, StringValues> parameters = new Dictionary <string, StringValues>()
            {
                { "role", "subscriber" },
                { "auth_token", TestConfig.AdminToken }
            };

            var request  = CreateHttpRequest(parameters);
            var response = (JsonResult)await CreateRolePermission.Run(request, logger);

            Assert.Equal(200, response.StatusCode);
            var isSuccess = response.Value.GetType().GetProperty("success")?.GetValue(response.Value, null) as bool?;

            Assert.True(isSuccess);
        }
예제 #4
0
		public RolePermission CreateRolePermission(CreateRolePermission request)
		{
			var rp = new RolePermission();
			rp.PopulateWith(request);

			AuthRepoProxy.Execute(db=>{
				//db.DeleteFromCache<AuthRolePermission>();
				
				var permission= db.FirstOrDefault<AuthPermission>(f=>f.Id==request.AuthPermissionId);
				if(permission==default(AuthPermission))
					throw HttpError.NotFound(string.Format("No found Permission Id :'{0}'",
					                                       request.AuthPermissionId));
				
				db.InsertAndAssertId(rp);
				rp.Name= permission.Name;
			});
			
			return rp;	
		}