Exemple #1
0
        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);
        }
Exemple #2
0
        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);
        }
Exemple #3
0
        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());
        }
Exemple #4
0
        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());
        }
Exemple #5
0
        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);
        }
Exemple #6
0
        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);
        }
Exemple #7
0
        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));
        }
Exemple #8
0
        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));
        }
Exemple #9
0
        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));
        }
Exemple #10
0
        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));
        }
Exemple #11
0
        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);
        }
Exemple #12
0
        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));
        }
Exemple #13
0
        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);
        }
Exemple #14
0
        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));
        }
Exemple #15
0
        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);
        }