Exemple #1
0
        public async Task Group_Convert_Confirm_Success()
        {
            var domainModel = new SearchGroupDocument {
                Name = "Group 1000", GroupUId = 1000, GroupTypeId = (int)eLookupGroupType.SingleacademyTrust
            };

            GetMock <IGroupsWriteService>().Setup(x => x.ConvertSAT2MAT(It.Is <int>(i => i == 1000), It.Is <bool>(b => b == true), It.IsAny <IPrincipal>())).ReturnsAsync(new ApiResponse <NumericResultDto>(true)
            {
                Response = new NumericResultDto {
                    Value = 200
                }
            });

            var vm = new ConvertSATViewModel
            {
                Token              = UriHelper.SerializeToUrlToken(domainModel),
                ActionName         = "confirm",
                CopyGovernanceInfo = true
            };
            var response = (RedirectToRouteResult)await ObjectUnderTest.Convert(vm);

            response.RouteName.ShouldBe("GroupDetails");
            response.RouteValues["id"].ShouldBe(200);
            GetMock <IGroupsWriteService>().Verify(x => x.ConvertSAT2MAT(It.Is <int>(i => i == 1000), It.Is <bool>(b => b == true), It.IsAny <IPrincipal>()), Times.Once);
        }
Exemple #2
0
        public async Task Group_Convert_Confirm_WithValidationError()
        {
            var domainModel = new SearchGroupDocument {
                Name = "Group 1000", GroupUId = 1000, GroupTypeId = (int)eLookupGroupType.SingleacademyTrust
            };

            GetMock <IGroupsWriteService>().Setup(x => x.ConvertSAT2MAT(It.Is <int>(i => i == 1000), It.Is <bool>(b => b == true), It.IsAny <IPrincipal>())).ReturnsAsync(new ApiResponse <NumericResultDto>(false)
            {
                Errors = new [] { new ApiError {
                                      Code = "test", Message = "msg"
                                  } }
            });

            var vm = new ConvertSATViewModel
            {
                Token              = UriHelper.SerializeToUrlToken(domainModel),
                ActionName         = "confirm",
                CopyGovernanceInfo = true
            };
            var response = (ViewResult)await ObjectUnderTest.Convert(vm);

            response.ViewName.ShouldBe("");
            Assert.That(ObjectUnderTest.ModelState[""].Errors[0].ErrorMessage, Is.EqualTo("msg"));
            GetMock <IGroupsWriteService>().Verify(x => x.ConvertSAT2MAT(It.Is <int>(i => i == 1000), It.Is <bool>(b => b == true), It.IsAny <IPrincipal>()), Times.Once);
        }
        private IReadOnlyCollection <SitemapNode> GetGroupTabs(SearchGroupDocument item, double?priority)
        {
            var urlHelper = this.Url;
            var nodes     = new List <SitemapNode>();

            nodes.Add(BuildNode("Details", "Group", new { area = "Groups", id = item.GroupUId }, "details", priority, SitemapFrequency.Weekly));
            nodes.Add(BuildNode("Details", "Group", new { area = "Groups", id = item.GroupUId }, "list", priority, SitemapFrequency.Weekly));

            // not all groups have access to governance tab
            if (item.GroupTypeId == (int)eLookupGroupType.MultiacademyTrust)
            {
                nodes.Add(BuildNode("Details", "Group", new { area = "Groups", id = item.GroupUId }, "governance", priority, SitemapFrequency.Weekly));
            }

            return(nodes);
        }