-
Notifications
You must be signed in to change notification settings - Fork 26k
/
create-optimistic-tree.test.ts
50 lines (47 loc) · 1.09 KB
/
create-optimistic-tree.test.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import { createOptimisticTree } from './create-optimistic-tree'
import type { FlightRouterState } from '../../../server/app-render/types'
const getInitialRouterStateTree = (): FlightRouterState => [
'',
{
children: [
'linking',
{
children: ['', {}],
},
],
},
undefined,
undefined,
true,
]
describe('createOptimisticTree', () => {
it('should create an optimistic tree', () => {
const initialRouterStateTree = getInitialRouterStateTree()
const pathname = '/dashboard/settings'
const segments = pathname.split('/')
// TODO-APP: figure out something better for index pages
segments.push('')
const result = createOptimisticTree(segments, initialRouterStateTree, false)
expect(result).toMatchObject([
'',
{
children: [
'dashboard',
{
children: [
'settings',
{
children: ['', {}],
},
],
},
undefined,
'refetch',
],
},
undefined,
undefined,
true,
])
})
})