Skip to content

Commit 78ba705

Browse files
#RI-5131 - add tests
1 parent 10df7b4 commit 78ba705

File tree

1 file changed

+53
-1
lines changed

1 file changed

+53
-1
lines changed

redisinsight/ui/src/pages/browser/components/virtual-tree/VirtualTree.spec.tsx

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import React from 'react'
22
import { mock, instance } from 'ts-mockito'
33

44
import { render } from 'uiSrc/utils/test-utils'
5+
import { useDisposableWebworker } from 'uiSrc/services'
56
import VirtualTree, { Props } from './VirtualTree'
67

78
const mockedProps = mock<Props>()
@@ -39,9 +40,26 @@ export const mockVirtualTreeResult = [{
3940
name: 'test',
4041
}]
4142

43+
export const mockVirtualTreeResult1 = [{
44+
children: [{
45+
children: [],
46+
fullName: 'car:110:',
47+
id: '0.snc1rc3zwgo',
48+
keyApproximate: 0.01,
49+
keyCount: 1,
50+
name: '110',
51+
}],
52+
fullName: 'car:',
53+
id: '0.sz1ie1koqi8',
54+
keyApproximate: 47.18,
55+
keyCount: 4718,
56+
name: 'car',
57+
}]
58+
4259
jest.mock('uiSrc/services', () => ({
4360
...jest.requireActual('uiSrc/services'),
44-
useDisposableWebworker: () => ({ result: mockVirtualTreeResult, run: jest.fn() }),
61+
useDisposableWebworker: jest.fn(() => ({ result: mockVirtualTreeResult, run: jest.fn() }))
62+
// useDisposableWebworker: () => ({ result: mockVirtualTreeResult, run: jest.fn() }),
4563
}))
4664

4765
describe('VirtualTree', () => {
@@ -74,4 +92,38 @@ describe('VirtualTree', () => {
7492

7593
expect(queryByTestId('node-item_test')).toBeInTheDocument()
7694
})
95+
96+
it('should call onStatusOpen if only one folder is exist', () => {
97+
(useDisposableWebworker as jest.Mock).mockReturnValueOnce({
98+
result: mockVirtualTreeResult1,
99+
run: jest.fn()
100+
})
101+
const mockFn = jest.fn()
102+
const mockOnStatusOpen = jest.fn()
103+
104+
render(
105+
<VirtualTree
106+
{...instance(mockedProps)}
107+
onStatusOpen={mockOnStatusOpen}
108+
setConstructingTree={mockFn}
109+
/>
110+
)
111+
112+
expect(mockOnStatusOpen).toBeCalledWith('car:', true)
113+
})
114+
115+
it('should not call onStatusOpen if more then one folder is exist', () => {
116+
const mockFn = jest.fn()
117+
const mockOnStatusOpen = jest.fn()
118+
119+
render(
120+
<VirtualTree
121+
{...instance(mockedProps)}
122+
onStatusOpen={mockOnStatusOpen}
123+
setConstructingTree={mockFn}
124+
/>
125+
)
126+
127+
expect(mockOnStatusOpen).not.toHaveBeenCalled()
128+
})
77129
})

0 commit comments

Comments
 (0)