示例#1
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);
        }
示例#2
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);
        }
示例#3
0
        public async Task Group_Convert_FindValidGroup()
        {
            GetMock <ICachedLookupService>().Setup(x => x.GetNameAsync(It.IsAny <Expression <Func <int?> > >(), It.IsAny <string>())).ReturnsAsync("placeholder");
            GetMock <IGroupReadService>().Setup(x => x.SearchByIdsAsync(It.IsAny <string>(), It.Is <int?>(i => i == 1000), It.IsAny <string>(), It.IsAny <int?>(), It.IsAny <IPrincipal>())).ReturnsAsync(() => new ApiPagedResult <SearchGroupDocument>(1, new List <SearchGroupDocument>()
            {
                new SearchGroupDocument {
                    Name = "Group 1000", GroupUId = 1000, GroupTypeId = (int)eLookupGroupType.SingleacademyTrust
                }
            }));

            var vm = new ConvertSATViewModel
            {
                ActionName = "find",
                Text       = "1000"
            };
            var response = (ViewResult)await ObjectUnderTest.Convert(vm);

            vm.Details.Name.ShouldBe("Group 1000");
            vm.Details.GroupUId.ShouldBe(1000);
            vm.Details.GroupTypeId.ShouldBe((int)eLookupGroupType.SingleacademyTrust);
            vm.CountryName.ShouldBe("placeholder");
            vm.CountyName.ShouldBe("placeholder");
            vm.Token.ShouldNotBe(null);
            response.ViewName.ShouldBe("");
        }
示例#4
0
        public void Group_Convert()
        {
            var response = (ViewResult)ObjectUnderTest.Convert();
            var vm       = (ConvertSATViewModel)response.Model;

            Assert.That(response.ViewName, Is.EqualTo(string.Empty));
            Assert.That(response.Model, Is.TypeOf <ConvertSATViewModel>());
        }
示例#5
0
        public async Task Group_Convert_FindNonExistentSAT()
        {
            var grs = GetMock <IGroupReadService>();

            grs.Setup(x => x.SearchByIdsAsync(It.IsAny <string>(), It.Is <int?>(i => i == 1000), It.IsAny <string>(), It.IsAny <int?>(), It.IsAny <IPrincipal>())).ReturnsAsync(() => new ApiPagedResult <SearchGroupDocument>(0, new List <SearchGroupDocument>()));

            var response = (ViewResult)await ObjectUnderTest.Convert(new ConvertSATViewModel
            {
                ActionName = "find",
                Text       = "1000"
            });

            Assert.That(ObjectUnderTest.ModelState["Text"].Errors[0].ErrorMessage, Is.EqualTo("We were unable to find a single-academy trust matching those details"));
            Assert.That(response.ViewName, Is.EqualTo(string.Empty));
        }
示例#6
0
        public async Task Group_Convert_FindInvalidGroupType()
        {
            var grs = GetMock <IGroupReadService>();

            grs.Setup(x => x.SearchByIdsAsync(It.IsAny <string>(), It.Is <int?>(i => i == 1000), It.IsAny <string>(), It.IsAny <int?>(), It.IsAny <IPrincipal>())).ReturnsAsync(() => new ApiPagedResult <SearchGroupDocument>(1, new List <SearchGroupDocument>()
            {
                new SearchGroupDocument {
                    Name = "Group 1000", GroupUId = 1000, GroupTypeId = (int)eLookupGroupType.MultiacademyTrust
                }
            }));

            var response = (ViewResult)await ObjectUnderTest.Convert(new ConvertSATViewModel
            {
                ActionName = "find",
                Text       = "1000"
            });

            Assert.That(ObjectUnderTest.ModelState["Text"].Errors[0].ErrorMessage, Is.EqualTo("That's an invalid group because it's of the wrong type."));
            Assert.That(response.ViewName, Is.EqualTo(string.Empty));
        }