Home.utils.test.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { describe, expect, it } from 'vitest'
  2. import { mergeSectionOrder } from './Home.utils'
  3. describe('mergeSectionOrder', () => {
  4. it('returns stored order unchanged when it matches defaults', () => {
  5. const stored = ['connect', 'usage', 'advisor', 'custom-report']
  6. expect(mergeSectionOrder(stored)).toBe(stored)
  7. })
  8. it('inserts missing sections at their default-relative position', () => {
  9. expect(mergeSectionOrder(['usage', 'advisor', 'custom-report'])).toEqual([
  10. 'connect',
  11. 'usage',
  12. 'advisor',
  13. 'custom-report',
  14. ])
  15. })
  16. it('preserves user reordering while inserting missing sections', () => {
  17. expect(mergeSectionOrder(['advisor', 'usage', 'custom-report'])).toEqual([
  18. 'advisor',
  19. 'connect',
  20. 'usage',
  21. 'custom-report',
  22. ])
  23. })
  24. it('strips unknown sections from stored order', () => {
  25. expect(mergeSectionOrder(['usage', 'deleted-section', 'advisor', 'custom-report'])).toEqual([
  26. 'connect',
  27. 'usage',
  28. 'advisor',
  29. 'custom-report',
  30. ])
  31. })
  32. it('strips legacy getting-started from stored order', () => {
  33. expect(
  34. mergeSectionOrder(['connect', 'getting-started', 'usage', 'advisor', 'custom-report'])
  35. ).toEqual(['connect', 'usage', 'advisor', 'custom-report'])
  36. })
  37. })