IQueryable_OrderByAndPage_Test.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using Vit.Linq.ComponentModel;
  3. namespace Vit.Linq.MsTest.Extensions
  4. {
  5. [TestClass]
  6. public class IQueryable_OrderByAndPage_Test
  7. {
  8. [TestMethod]
  9. public void Test()
  10. {
  11. var query = DataSource.GetIQueryable();
  12. #region #1 OrderBy Page
  13. {
  14. var result = query
  15. .IQueryable_OrderBy(new[] {
  16. new OrderField { field = "job.departmentId", asc = false },
  17. new OrderField { field = "id", asc = true }
  18. })
  19. .IQueryable_Page(new PageInfo { pageSize = 10, pageIndex = 1 })
  20. .IQueryable_ToList<Person>();
  21. Assert.AreEqual(10, result.Count);
  22. Assert.AreEqual(990, result[0].id);
  23. }
  24. #endregion
  25. #region #2 OrderBy Page
  26. {
  27. var result = query
  28. .IQueryable_OrderBy("id", false)
  29. .IQueryable_Page(pageSize: 10, pageIndex: 2)
  30. .IQueryable_ToList<Person>();
  31. Assert.AreEqual(10, result.Count);
  32. Assert.AreEqual(989, result[0].id);
  33. }
  34. #endregion
  35. #region #3 ToPageData
  36. {
  37. var result = query
  38. .IQueryable_OrderBy(new[] {
  39. new OrderField { field = "job.departmentId", asc = false },
  40. new OrderField { field = "id", asc = true }
  41. })
  42. .IQueryable_ToPageData<Person>(new PageInfo { pageSize = 10, pageIndex = 1 });
  43. Assert.AreEqual(1000, result.totalCount);
  44. Assert.AreEqual(10, result.items.Count);
  45. Assert.AreEqual(990, result.items[0].id);
  46. }
  47. #endregion
  48. }
  49. }
  50. }