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