public void GivenNullRequestModel_WhenCreateResultSet_ThenThrowException()
        {
            TestClientDataTable target = CreateTarget(1, "asc");
            IQueryable <string> items = new[] { "hi", "yo", "sup" }.AsQueryable();

            target.ExpectException <ArgumentNullException>(() => target.CreateResultSet(items, null));
        }
        public void GivenItems_AndDisplayLengthSet_WhenCreateResultSet_ThenItemsCountDoesNotExceedDisplayLength()
        {
            TestClientDataTable   target = CreateTarget(1, "asc");
            IQueryable <string>   items = new[] { "hi", "yo", "sup" }.AsQueryable();
            DataTableRequestModel requestModel = new DataTableRequestModel {
                iDisplayLength = 2
            };

            var actual = target.CreateResultSet(items, requestModel);

            actual.Cast <string[]>().ToList().AssertItemsEqual(new[] { new[] { "2", "hi" }, new[] { "2", "yo" } });
        }
        public void GivenItems_WhenCreateResultSet_ThenItemsGetSelectedByColumnArraySelector()
        {
            TestClientDataTable   target = CreateTarget(1, "asc");
            IQueryable <string>   items = new[] { "hi", "yo", "sup" }.AsQueryable();
            DataTableRequestModel requestModel = new DataTableRequestModel {
                iDisplayLength = -1
            };

            var actual = target.CreateResultSet(items, requestModel);

            actual.Cast <string[]>().ToList().AssertItemsEqual(new[] { new[] { "2", "hi" }, new[] { "2", "yo" }, new[] { "3", "sup" } });
        }