Utils.spec.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import {
  2. descendingComparator,
  3. getComparator,
  4. stableSort,
  5. } from '../../../utils/Sort';
  6. describe('Test Gird Utils', () => {
  7. it('Test descendingComparator', () => {
  8. const a = {
  9. order: 2,
  10. };
  11. const b = {
  12. order: 11,
  13. };
  14. expect(descendingComparator(a, b, 'order')).toEqual(1);
  15. });
  16. it('Test getComparator', () => {
  17. const a = {
  18. order: 2,
  19. };
  20. const b = {
  21. order: 11,
  22. };
  23. expect(getComparator('desc', 'order')(a, b)).toEqual(1);
  24. expect(getComparator('asc', 'order')(a, b)).toEqual(-1);
  25. });
  26. it('Test stableSort', () => {
  27. const arr = [
  28. {
  29. order: 2,
  30. },
  31. {
  32. order: 11,
  33. },
  34. ];
  35. const comparator = getComparator('desc', 'order');
  36. expect(stableSort(JSON.parse(JSON.stringify(arr)), comparator)).toEqual(
  37. JSON.parse(JSON.stringify(arr)).reverse()
  38. );
  39. const ascComparator = getComparator('asc', 'order');
  40. expect(stableSort(JSON.parse(JSON.stringify(arr)), ascComparator)).toEqual(
  41. arr
  42. );
  43. });
  44. });