Queryable_OrderByAndPage_Test.cs 1.8 KB

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