Example #1
0
        public JsonResult AllFilteredUserIds()
        {
            UserClientDataTable requests = new UserClientDataTable(Request, SecurityConfiguration);
            var items = LogicManager.GetFilteredUserIds(requests);

            return(Json(items, JsonRequestBehavior.DenyGet));
        }
Example #2
0
        public JsonResult DataTableAjaxHandler(DataTableRequestModel requestModel)
        {
            UserClientDataTable dataTable = new UserClientDataTable(Request, SecurityConfiguration);
            var viewModel = LogicManager.GenerateDataTableResultViewModel(requestModel, dataTable);

            return(Json(viewModel, JsonRequestBehavior.AllowGet));
        }
        public void GivenEmailSearchCriteria_AndUserEmailPartiallyMatches_WhenInvokeFilterPredicate_ThenReturnTrue()
        {
            User user = new User { EmailAddress = "*****@*****.**" };
            MockRequest.Expect(m => m["email"]).Return("Dei");
            var target = new UserClientDataTable(MockRequest, SecurityConfiguration);

            Assert.IsTrue(target.FilterPredicate.Compile().Invoke(user));
        }
        public void GivenFirstNameSearchCriteria_AndUserNamePartiallyMatches_WhenInvokeFilterPredicate_ThenReturnTrue()
        {
            User user = new User { FirstName = "Alec" };
            MockRequest.Expect(m => m["firstName"]).Return("Ale");
            var target = new UserClientDataTable(MockRequest, SecurityConfiguration);

            Assert.IsTrue(target.FilterPredicate.Compile().Invoke(user));
        }
        public void GivenLastNameSearchCriteria_AndUserNameDoesntPartiallyMatch_WhenInvokeFilterPredicate_ThenReturnFalse()
        {
            User user = new User { LastName = "Deitz" };
            MockRequest.Expect(m => m["lastName"]).Return("xyz");
            var target = new UserClientDataTable(MockRequest, SecurityConfiguration);

            Assert.IsFalse(target.FilterPredicate.Compile().Invoke(user));
        }
        public void GivenSortOnStatus_WhenGenerateDataTableResultViewModel_ThenViewModelContainsData()
        {
            HttpContextBase mockHttpContext = MockHttpContextFactory.Create();
            DataTableRequestModel viewModel = new DataTableRequestModel { iDisplayLength = 10 };
            mockHttpContext.Request.Expect(m => m["iSortCol_0"]).Return("0");
            mockHttpContext.Request.Expect(m => m["sSortDir_0"]).Return("acs");
            UserClientDataTable dataTable = new UserClientDataTable(mockHttpContext.Request, new DefaultSecurityConfiguration());

            DataTableResultModel actual = Target.GenerateDataTableResultViewModel(viewModel, dataTable);

            Assert.AreNotEqual(0, actual.aaData.Count());
        }
        public void WhenGenerateDataTableResultViewModel_ThenViewModelContainsData()
        {
            HttpContextBase       mockHttpContext = MockHttpContextFactory.Create();
            DataTableRequestModel viewModel       = new DataTableRequestModel {
                iDisplayLength = 10
            };
            UserClientDataTable dataTable = new UserClientDataTable(mockHttpContext.Request, new DefaultSecurityConfiguration());

            DataTableResultModel actual = Target.GenerateDataTableResultViewModel(viewModel, dataTable);

            Assert.AreNotEqual(0, actual.aaData.Count());
        }
        public void GivenSortOnStatus_WhenGenerateDataTableResultViewModel_ThenViewModelContainsData()
        {
            HttpContextBase       mockHttpContext = MockHttpContextFactory.Create();
            DataTableRequestModel viewModel       = new DataTableRequestModel {
                iDisplayLength = 10
            };

            mockHttpContext.Request.Expect(m => m["iSortCol_0"]).Return("0");
            mockHttpContext.Request.Expect(m => m["sSortDir_0"]).Return("acs");
            UserClientDataTable dataTable = new UserClientDataTable(mockHttpContext.Request, new DefaultSecurityConfiguration());

            DataTableResultModel actual = Target.GenerateDataTableResultViewModel(viewModel, dataTable);

            Assert.AreNotEqual(0, actual.aaData.Count());
        }
        public void GivenSortDirectionOnLastLoginTime_WhenExecuteSortSelector_ThenReturnLastLoginTimeInMinutes()
        {
            MockRequest.Expect(m => m["iSortCol_0"]).Return("3");
            MockRequest.Expect(m => m["sSortDir_0"]).Return("asc");
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User
            {
                LoginEvents = new List<LoginEvent>
                {
                    new LoginEvent { CreateTime = DateTime.Now }
                }
            };
            string expected = ((int)new TimeSpan(user.LastLoginTime.Value.Ticks).TotalMinutes).ToString();

            var actual = target.SortSelector.Compile().Invoke(user);

            Assert.AreEqual(expected, actual);
        }
        public void GivenUserIsConfiguredAsAdministrator_WhenIExecuteDataSelector_ThenDataRolesIsAdministrator()
        {
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User { EmailAddress = "*****@*****.**" };
            SecurityConfiguration.Expect(m => m.AdministratorEmailAddresses).Return(new string[] { user.EmailAddress });

            dynamic actual = target.DataSelector.Compile().Invoke(user);

            Assert.AreEqual(SecurityRoles.Administrator, ((IEnumerable<string>)actual.Roles).Single());
        }
 public JsonResult DataTableAjaxHandler(DataTableRequestModel requestModel)
 {
     UserClientDataTable dataTable = new UserClientDataTable(Request, SecurityConfiguration);
     var viewModel = LogicManager.GenerateDataTableResultViewModel(requestModel, dataTable);
     return Json(viewModel, JsonRequestBehavior.AllowGet);
 }
 public JsonResult AllFilteredUserIds()
 {
     UserClientDataTable requests = new UserClientDataTable(Request, SecurityConfiguration);
     var items = LogicManager.GetFilteredUserIds(requests);
     return Json(items, JsonRequestBehavior.DenyGet);
 }
        public void WhenGenerateDataTableResultViewModel_ThenViewModelContainsData()
        {
            HttpContextBase mockHttpContext = MockHttpContextFactory.Create();
            DataTableRequestModel viewModel = new DataTableRequestModel { iDisplayLength = 10 };
            UserClientDataTable dataTable = new UserClientDataTable(mockHttpContext.Request, new DefaultSecurityConfiguration());

            DataTableResultModel actual = Target.GenerateDataTableResultViewModel(viewModel, dataTable);

            Assert.AreNotEqual(0, actual.aaData.Count());
        }
        public void GivenSortDirectionOnLastName_WhenExecuteSortSelector_ThenReturnLastName()
        {
            MockRequest.Expect(m => m["iSortCol_0"]).Return("1");
            MockRequest.Expect(m => m["sSortDir_0"]).Return("asc");
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User { LastName = "Deitz" };

            var actual = target.SortSelector.Compile().Invoke(user);

            Assert.AreEqual("Deitz", actual);
        }
        public void GivenStatusFilterCriteria_AndUserHasStatus_WhenInvokeFilterPredicate_ThenReturnTrue()
        {
            User user = new User { Active = false };
            MockRequest.Expect(m => m["status"]).Return("Inactive");
            var target = new UserClientDataTable(MockRequest, SecurityConfiguration);

            Assert.IsTrue(target.FilterPredicate.Compile().Invoke(user));
        }
        public void GivenSortDirectionOnStatus_WhenExecuteSortSelector_ThenReturnStatus()
        {
            MockRequest.Expect(m => m["iSortCol_0"]).Return("0");
            MockRequest.Expect(m => m["sSortDir_0"]).Return("asc");
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User { Active = false };

            var actual = target.SortSelector.Compile().Invoke(user);

            Assert.AreEqual("Inactive", actual);
        }
        public void GivenUserHasLoginEvents_WhenIExecuteDataSelector_ThenDataHasLastLoginTime()
        {
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User
            {
                LoginEvents = new List<LoginEvent>
                {
                    new LoginEvent { CreateTime = DateTime.Now }
                }
            };
            SecurityConfiguration.Expect(m => m.AdministratorEmailAddresses).Return(new string[] { user.EmailAddress });

            dynamic actual = target.DataSelector.Compile().Invoke(user);

            Assert.AreEqual(user.LastLoginTime, actual.LastLoginTime);
        }
        public void GivenSchoolsFilterCriteria_AndUserIsNotAssociatedToSchool_WhenInvokeFilterPredicate_ThenReturnFalse()
        {
            User user = new User { UserRoles = new List<UserRole> { new UserRole { Schools = new List<School> { TestData.Schools[1] } } } };
            MockRequest.Expect(m => m["schools"]).Return(TestData.Schools[0].Name);
            var target = new UserClientDataTable(MockRequest, SecurityConfiguration);

            Assert.IsFalse(target.FilterPredicate.Compile().Invoke(user));
        }
        public void GivenUserHasProviderAssociations_AndSortOnAssociationCount_WhenExecuteSortSelector_ThenReturnProviderAssociationCount()
        {
            MockRequest.Expect(m => m["iSortCol_0"]).Return("4");
            MockRequest.Expect(m => m["sSortDir_0"]).Return("asc");
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User
            {
                UserRoles = new List<UserRole>
                {
                    new UserRole { Providers = new List<Provider> { new Provider(), new Provider(), new Provider() } }
                }
            };

            var actual = target.SortSelector.Compile().Invoke(user);

            Assert.AreEqual("3", actual);
        }
        public void GivenUserIsConfiguredAsAdministrator_AndHasDataAdminRole_WhenIExecuteDataSelector_ThenDataRolesContainsAdministratorAndDataAdmin()
        {
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User
            {
                EmailAddress = "*****@*****.**",
                UserRoles = new List<UserRole>
                {
                    new UserRole { Role = new Role { Name = SecurityRoles.DataAdmin } }
                }
            };
            string[] expected = new[] { "Administrator", SecurityRoles.DataAdmin };
            SecurityConfiguration.Expect(m => m.AdministratorEmailAddresses).Return(new string[] { user.EmailAddress });

            dynamic actual = target.DataSelector.Compile().Invoke(user);

            CollectionAssert.AreEqual(expected, ((IEnumerable<string>)actual.Roles).ToList());
        }
        public void GivenUserHasSchoolAssociations_WhenIExecuteDataSelector_ThenAssociationsIsSchoolAssociationCount()
        {
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            var schools = new List<School> { new School(), new School() };
            User user = new User
            {
                UserRoles = new List<UserRole>
                {
                    new UserRole
                    {
                        Role = new Role(),
                        Schools = schools
                    }
                }
            };
            SecurityConfiguration.Expect(m => m.AdministratorEmailAddresses).Return(new string[] { "*****@*****.**" });

            dynamic actual = target.DataSelector.Compile().Invoke(user);

            Assert.AreEqual(schools.Count, actual.Associations);
        }
        public void GivenUserIsNotConfiguredAsAdministrator_WhenIExecuteDataSelector_ThenDataRolesDoesNotContainAdministrator()
        {
            UserClientDataTable target = new UserClientDataTable(MockRequest, SecurityConfiguration);
            User user = new User { EmailAddress = "*****@*****.**" };
            SecurityConfiguration.Expect(m => m.AdministratorEmailAddresses).Return(new string[] { "*****@*****.**" });

            dynamic actual = target.DataSelector.Compile().Invoke(user);

            Assert.IsFalse(((IEnumerable<string>)actual.Roles).Contains(SecurityRoles.Administrator));
        }
        public void GivenRoleFilterCriteria_AndUserHasRole_WhenInvokeFilterPredicate_ThenReturnTrue()
        {
            User user = new User { UserRoles = new List<UserRole> { new UserRole { Role = new Role { Name = SecurityRoles.DataAdmin } } } };
            MockRequest.Expect(m => m["roles"]).Return("Data Admin");
            var target = new UserClientDataTable(MockRequest, SecurityConfiguration);

            Assert.IsTrue(target.FilterPredicate.Compile().Invoke(user));
        }