@@ -12,6 +12,7 @@ import {
12
12
} from 'uiSrc/utils/test-utils'
13
13
import { CommandExecutionStatus } from 'uiSrc/slices/interfaces/cli'
14
14
import QueryCard , { Props , getSummaryText } from './QueryCard'
15
+ import { ViewMode , ViewModeContextProvider } from '../context/view-mode.context'
15
16
16
17
const mockedProps = mock < Props > ( )
17
18
@@ -44,15 +45,27 @@ jest.mock('uiSrc/slices/app/plugins', () => ({
44
45
} ) ,
45
46
} ) )
46
47
48
+ const renderQueryCardComponent = ( props : Partial < Props > = { } ) => {
49
+ return render (
50
+ < ViewModeContextProvider viewMode = { ViewMode . Workbench } >
51
+ < QueryCard { ...instance ( mockedProps ) } { ...props } />
52
+ </ ViewModeContextProvider > ,
53
+ {
54
+ store,
55
+ } ,
56
+ )
57
+ }
58
+
47
59
describe ( 'QueryCard' , ( ) => {
48
60
it ( 'should render' , ( ) => {
49
- expect ( render ( < QueryCard { ...instance ( mockedProps ) } /> ) ) . toBeTruthy ( )
61
+ const { container } = renderQueryCardComponent ( )
62
+ expect ( container ) . toBeTruthy ( )
50
63
} )
51
64
52
65
it ( 'Cli result should not in the document before Expand' , ( ) => {
53
66
const cliResultTestId = 'query-cli-result'
54
67
55
- const { queryByTestId } = render ( < QueryCard { ... instance ( mockedProps ) } /> )
68
+ const { queryByTestId } = renderQueryCardComponent ( )
56
69
57
70
const cliResultEl = queryByTestId ( cliResultTestId )
58
71
expect ( cliResultEl ) . not . toBeInTheDocument ( )
@@ -61,9 +74,10 @@ describe('QueryCard', () => {
61
74
it ( 'Cli result should in the document when "isOpen = true"' , ( ) => {
62
75
const cliResultTestId = 'query-cli-result'
63
76
64
- const { queryByTestId } = render (
65
- < QueryCard { ...instance ( mockedProps ) } isOpen result = { mockResult } /> ,
66
- )
77
+ const { queryByTestId } = renderQueryCardComponent ( {
78
+ isOpen : true ,
79
+ result : mockResult ,
80
+ } )
67
81
68
82
const cliResultEl = queryByTestId ( cliResultTestId )
69
83
@@ -73,13 +87,10 @@ describe('QueryCard', () => {
73
87
it ( 'Cli result should not in the document when "isOpen = false"' , ( ) => {
74
88
const cliResultTestId = 'query-cli-result'
75
89
76
- const { queryByTestId } = render (
77
- < QueryCard
78
- { ...instance ( mockedProps ) }
79
- isOpen = { false }
80
- result = { mockResult }
81
- /> ,
82
- )
90
+ const { queryByTestId } = renderQueryCardComponent ( {
91
+ isOpen : false ,
92
+ result : mockResult ,
93
+ } )
83
94
84
95
const cliResultEl = queryByTestId ( cliResultTestId )
85
96
@@ -89,14 +100,11 @@ describe('QueryCard', () => {
89
100
it ( 'Should be in the document when resultsMode === ResultsMode.GroupMode' , ( ) => {
90
101
const cliResultTestId = 'query-cli-result'
91
102
92
- const { queryByTestId } = render (
93
- < QueryCard
94
- { ...instance ( mockedProps ) }
95
- isOpen = { false }
96
- result = { mockResult }
97
- resultsMode = { ResultsMode . GroupMode }
98
- /> ,
99
- )
103
+ const { queryByTestId } = renderQueryCardComponent ( {
104
+ isOpen : false ,
105
+ result : mockResult ,
106
+ resultsMode : ResultsMode . GroupMode ,
107
+ } )
100
108
101
109
const cliResultEl = queryByTestId ( cliResultTestId )
102
110
@@ -107,9 +115,10 @@ describe('QueryCard', () => {
107
115
const cardHeaderTestId = 'query-card-open'
108
116
const mockId = '123'
109
117
110
- const { queryByTestId } = render (
111
- < QueryCard { ...instance ( mockedProps ) } id = { mockId } result = { mockResult } /> ,
112
- )
118
+ const { queryByTestId } = renderQueryCardComponent ( {
119
+ id : mockId ,
120
+ result : mockResult ,
121
+ } )
113
122
114
123
const cardHeaderTestEl = queryByTestId ( cardHeaderTestId )
115
124
@@ -131,15 +140,13 @@ describe('QueryCard', () => {
131
140
} )
132
141
133
142
it ( 'should render QueryCardCliResultWrapper when command is null' , ( ) => {
134
- const { queryByTestId } = render (
135
- < QueryCard
136
- { ...instance ( mockedProps ) }
137
- resultsMode = { ResultsMode . GroupMode }
138
- result = { null }
139
- isOpen
140
- command = { null }
141
- /> ,
142
- )
143
+ const { queryByTestId } = renderQueryCardComponent ( {
144
+ resultsMode : ResultsMode . GroupMode ,
145
+ result : null ,
146
+ isOpen : true ,
147
+ command : null ,
148
+ } )
149
+
143
150
const queryCommonResultEl = queryByTestId ( 'query-common-result-wrapper' )
144
151
const queryCliResultEl = queryByTestId ( 'query-cli-result-wrapper' )
145
152
@@ -148,62 +155,53 @@ describe('QueryCard', () => {
148
155
} )
149
156
150
157
it ( 'should render QueryCardCliResult when result reached response size threshold' , ( ) => {
151
- const { queryByTestId } = render (
152
- < QueryCard
153
- { ...instance ( mockedProps ) }
154
- resultsMode = { ResultsMode . GroupMode }
155
- result = { [
156
- {
157
- status : CommandExecutionStatus . Success ,
158
- response : 'Any message about size limit threshold exceeded' ,
159
- sizeLimitExceeded : true ,
160
- } ,
161
- ] }
162
- isOpen
163
- command = { null }
164
- /> ,
165
- )
158
+ const { queryByTestId } = renderQueryCardComponent ( {
159
+ resultsMode : ResultsMode . GroupMode ,
160
+ result : [
161
+ {
162
+ status : CommandExecutionStatus . Success ,
163
+ response : 'Any message about size limit threshold exceeded' ,
164
+ sizeLimitExceeded : true ,
165
+ } ,
166
+ ] ,
167
+ isOpen : true ,
168
+ command : null ,
169
+ } )
166
170
const queryCliResultEl = queryByTestId ( 'query-cli-result' )
167
171
168
172
expect ( queryCliResultEl ) . toBeInTheDocument ( )
169
173
} )
170
174
171
175
it ( 'should render properly result when it has pure number' , ( ) => {
172
- const { getByTestId } = render (
173
- < QueryCard
174
- { ...instance ( mockedProps ) }
175
- resultsMode = { ResultsMode . GroupMode }
176
- result = { [
177
- {
178
- status : CommandExecutionStatus . Success ,
179
- response : 1 ,
180
- } ,
181
- ] }
182
- isOpen
183
- command = "del key"
184
- /> ,
185
- )
176
+ const { getByTestId } = renderQueryCardComponent ( {
177
+ resultsMode : ResultsMode . GroupMode ,
178
+ result : [
179
+ {
180
+ status : CommandExecutionStatus . Success ,
181
+ response : 1 ,
182
+ } ,
183
+ ] ,
184
+ isOpen : true ,
185
+ command : 'del key' ,
186
+ } )
186
187
const queryCliResultEl = getByTestId ( 'query-cli-result' )
187
188
188
189
expect ( queryCliResultEl . textContent ) . toBe ( '(integer) 1' )
189
190
} )
190
191
191
192
it ( 'should render QueryCardCliResult when result reached response size threshold even w/o flag' , ( ) => {
192
- const { queryByTestId } = render (
193
- < QueryCard
194
- { ...instance ( mockedProps ) }
195
- resultsMode = { ResultsMode . GroupMode }
196
- result = { [
197
- {
198
- status : CommandExecutionStatus . Success ,
199
- response :
200
- 'Results have been deleted since they exceed 1 MB. Re-run the command to see new results.' ,
201
- } ,
202
- ] }
203
- isOpen
204
- command = { null }
205
- /> ,
206
- )
193
+ const { queryByTestId } = renderQueryCardComponent ( {
194
+ resultsMode : ResultsMode . GroupMode ,
195
+ result : [
196
+ {
197
+ status : CommandExecutionStatus . Success ,
198
+ response :
199
+ 'Results have been deleted since they exceed 1 MB. Re-run the command to see new results.' ,
200
+ } ,
201
+ ] ,
202
+ isOpen : true ,
203
+ command : null ,
204
+ } )
207
205
const queryCliResultEl = queryByTestId ( 'query-cli-result' )
208
206
209
207
expect ( queryCliResultEl ) . toBeInTheDocument ( )
0 commit comments