public void GivenStudent_AndStudentHasApprovedProviders_WhenExecuteDataSelctor_ThenDataContainsApprovedProviderDetail() { List <Provider> expectedState = new List <Provider> { new Provider { Id = 382, Name = "Blah1", IsActive = true }, new Provider { Id = 289, Name = "Grapejuice", IsActive = true } }; Student student = new Student { School = new School(), ApprovedProviders = expectedState }; StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); dynamic actual = target.DataSelector.Compile().Invoke(student); int i = 0; foreach (dynamic actualProvider in actual.ApprovedProviders) { Assert.AreEqual(expectedState[i].Id, actualProvider.Id); Assert.AreEqual(expectedState[i].Name, actualProvider.Name); i++; } Assert.AreEqual(expectedState.Count, i); }
public void GivenStudent_WhenExecuteDataSelctor_ThenDataContainsStudentProperties() { Student expectedState = new Student { Id = 1877, FirstName = "Bob", MiddleName = "Allan", LastName = "Smith", HasParentalOptOut = true, Grade = 7, School = new School { Name = "Random High School" }, StudentSISId = "3823282" }; StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); dynamic actual = target.DataSelector.Compile().Invoke(expectedState); Assert.AreEqual(expectedState.Id, actual.Id); Assert.AreEqual(expectedState.FullName, actual.Name); Assert.AreEqual(expectedState.HasParentalOptOut, actual.HasParentalOptOut); Assert.AreEqual(expectedState.Grade, actual.Grade); Assert.AreEqual(expectedState.School.Name, actual.School); Assert.AreEqual(expectedState.StudentSISId, actual.StudentSISId); }
public void GivenProviderListFilter_WhenConstruct_ThenProviderFilterListSet() { string[] expected = { "YMCA", "Learning Place", "Athletics Club" }; MockRequest.Expect(m => m["providers"]).Return("|YMCA|Learning Place|Athletics Club|"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); CollectionAssert.AreEqual(expected, target.Providers.ToList()); }
public void GivenSchoolListFilter_WhenConstruct_ThenSchoolFilterListSet() { string[] expected = { "high school", "middle school", "other school" }; MockRequest.Expect(m => m["schools"]).Return("high school|middle school|other school"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); CollectionAssert.AreEqual(expected, target.Schools.ToList()); }
public void GivenLastNameFilter_WhenConstruct_ThenLastNameFilterValueSet() { string expected = "smith"; MockRequest.Expect(m => m["lastName"]).Return(expected); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.AreEqual(expected, target.LastName); }
public void GivenIDFilter_WhenConstruct_ThenIDFilterValueSet() { string expected = "324"; MockRequest.Expect(m => m["ID"]).Return(expected); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.AreEqual(expected, target.Id); }
public void GivenFirstNameFilter_AndStudentDoesNotMatch_WhenExecuteFilterPredicate_ThenReturnFalse() { Student toFilter = new Student { FirstName = "abcd" }; MockRequest.Expect(m => m["firstName"]).Return("de"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.IsFalse(target.FilterPredicate.Compile().Invoke(toFilter)); }
public void GivenFirstNameFilter_AndStudentMatches_AndFirstNameCaseDiffers_WhenExecuteFilterPredicate_ThenReturnTrue() { Student toFilter = new Student { FirstName = "aBcd", School = new School() }; MockRequest.Expect(m => m["firstName"]).Return("bC"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.IsTrue(target.FilterPredicate.Compile().Invoke(toFilter)); }
public void GivenIDFilter_AndStudentDoesNotMatch_WhenExecuteFilterPredicate_ThenReturnFalse() { Student toFilter = new Student { StudentSISId = "1234" }; MockRequest.Expect(m => m["ID"]).Return("45"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.IsFalse(target.FilterPredicate.Compile().Invoke(toFilter)); }
public void GivenIDFilter_AndStudentMatches_WhenExecuteFilterPredicate_ThenReturnTrue() { Student toFilter = new Student { StudentSISId = "1234", School = new School() }; MockRequest.Expect(m => m["ID"]).Return("23"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.IsTrue(target.FilterPredicate.Compile().Invoke(toFilter)); }
public void GivenNoSortColumn_WhenExecuteSortSelector_ThenUseDefaultSortById() { List <Student> toSort = CreateStudentList(); List <Student> expected = new List <Student> { toSort[3], toSort[4], toSort[1], toSort[0], toSort[2], toSort[6], toSort[5] }; StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); var targetSorter = target.SortSelector.Compile(); List <Student> actual = toSort.OrderBy(targetSorter).ToList(); CollectionAssert.AreEqual(expected, actual); }
public void GivenSchoolFilterList_AndStudentSchoolDoesNotMatch_WhenExecuteFilterPredicate_ThenReturnFalse() { Student toFilter = new Student { School = new School { Name = "jkl" } }; MockRequest.Expect(m => m["schools"]).Return("abc|def|ghi"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.IsFalse(target.FilterPredicate.Compile().Invoke(toFilter)); }
public void GivenSortColumnIndex1_WhenExecuteSortSelector_ThenSortByName() { List <Student> toSort = CreateStudentList(); List <Student> expected = new List <Student> { toSort[2], toSort[6], toSort[0], toSort[3], toSort[5], toSort[1], toSort[4] }; MockRequest.Expect(m => m["iSortCol_0"]).Return("1"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); var targetSorter = target.SortSelector.Compile(); List <Student> actual = toSort.OrderBy(targetSorter).ToList(); CollectionAssert.AreEqual(expected, actual); }
public void GivenProviderFilterList_AndStudentSchoolMatches_WhenExecuteFilterPredicate_ThenReturnTrue() { Student toFilter = new Student { ApprovedProviders = new List <Provider> { new Provider { Name = "def" } }, School = new School() }; MockRequest.Expect(m => m["providers"]).Return("abc|def|ghi"); StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); Assert.IsTrue(target.FilterPredicate.Compile().Invoke(toFilter)); }
public void GivenStudent_AndStudentHasApprovedProviders_AndSomeProvidersAreInactive_WhenExecuteDataSelctor_ThenDataContainsActiveApprovedProviderDetail() { Provider expectedState = new Provider { Id = 382, Name = "Blah1", IsActive = true }; Student student = new Student { School = new School(), ApprovedProviders = new List <Provider> { expectedState, new Provider { Id = 289, Name = "Grapejuice" } } }; StudentApprovalClientDataTable target = new StudentApprovalClientDataTable(MockRequest); dynamic actual = target.DataSelector.Compile().Invoke(student); dynamic actualApprovedProvider = ((IEnumerable <object>)actual.ApprovedProviders).Single(); Assert.AreEqual(expectedState.Id, actualApprovedProvider.Id); Assert.AreEqual(expectedState.Name, actualApprovedProvider.Name); }