Пример #1
0
        public void ShouldGetResourceClaims()
        {
            var testApplication = new Application
            {
                ApplicationName = "TestApplicationName"
            };

            Save(testApplication);

            var testResourceClaims = SetupResourceClaims(testApplication);

            var testParentResource = testResourceClaims.Single(x => x.ResourceName == "TestParentResourceClaim1");

            Transaction <SqlServerSecurityContext>(securityContext =>
            {
                var query = new GetChildResourceClaimsForParentQuery(securityContext);

                var results = query.Execute(testParentResource.ResourceClaimId).ToArray();

                var testChildResourceClaims = securityContext.ResourceClaims.Where(x =>
                                                                                   x.ParentResourceClaimId == testParentResource.ResourceClaimId);

                results.Length.ShouldBe(testChildResourceClaims.Count());
                results.Select(x => x.Name).ShouldBe(testChildResourceClaims.Select(x => x.ResourceName), true);
                results.Select(x => x.Id).ShouldBe(testChildResourceClaims.Select(x => x.ResourceClaimId), true);
                results.All(x => x.Create == false).ShouldBe(true);
                results.All(x => x.Delete == false).ShouldBe(true);
                results.All(x => x.Update == false).ShouldBe(true);
                results.All(x => x.Read == false).ShouldBe(true);
                results.All(x => x.ParentId.Equals(testParentResource.ResourceClaimId)).ShouldBe(true);
            });
        }
        public JsonResult GetSelectListForChildResourceClaims(int parentResourceClaimId)
        {
            var selectList = new List <SelectListItem> {
                new SelectListItem {
                    Text = "Please select a value", Value = "0", Disabled = true, Selected = true
                },
            };
            var childResources = _getChildResourceClaimsForParentQuery.Execute(parentResourceClaimId);

            selectList.AddRange(new SelectList(childResources.Select(x => new SelectListItem()
            {
                Text  = x.Name,
                Value = x.Id.ToString()
            }), "Value", "Text"));
            return(Json(selectList, JsonRequestBehavior.AllowGet));
        }