1
1
// Copyright 2022 MFB Technologies, Inc.
2
2
3
3
import { getOptimisticAsyncLoadState } from ".."
4
- import { AsyncRequestStatus } from "../enumerations"
4
+ import { AsyncRequestStatus , AsyncRequestStatusEnum } from "../enumerations"
5
5
import { getCascadedAsyncState , rtkqResultsToStatusError } from "../utils"
6
6
7
7
describe ( `${ rtkqResultsToStatusError . name } ` , ( ) => {
8
8
it . each ( [
9
- [ [ { isLoading : true } , { isLoading : true } ] , AsyncRequestStatus . PENDING ] ,
10
- [ [ { isSuccess : true } , { isLoading : true } ] , AsyncRequestStatus . PENDING ] ,
11
- [ [ { isError : true } , { isError : true } ] , AsyncRequestStatus . ERROR ] ,
12
- [ [ { isError : true } , { isLoading : true } ] , AsyncRequestStatus . ERROR ] ,
13
- [ [ { isError : true } , { isSuccess : true } ] , AsyncRequestStatus . ERROR ] ,
14
- [ [ { isSuccess : true } , { isSuccess : true } ] , AsyncRequestStatus . FULFILLED ] ,
15
- [ [ { } , { } ] , AsyncRequestStatus . INIT ]
9
+ [
10
+ [ { isLoading : true } , { isLoading : true } ] ,
11
+ AsyncRequestStatusEnum . PENDING
12
+ ] ,
13
+ [
14
+ [ { isSuccess : true } , { isLoading : true } ] ,
15
+ AsyncRequestStatusEnum . PENDING
16
+ ] ,
17
+ [ [ { isError : true } , { isError : true } ] , AsyncRequestStatusEnum . ERROR ] ,
18
+ [ [ { isError : true } , { isLoading : true } ] , AsyncRequestStatusEnum . ERROR ] ,
19
+ [ [ { isError : true } , { isSuccess : true } ] , AsyncRequestStatusEnum . ERROR ] ,
20
+ [
21
+ [ { isSuccess : true } , { isSuccess : true } ] ,
22
+ AsyncRequestStatusEnum . FULFILLED
23
+ ] ,
24
+ [ [ { } , { } ] , AsyncRequestStatusEnum . INIT ]
16
25
] ) ( "correctly converts %s to %s" , ( results , expectedStatus ) => {
17
26
expect ( rtkqResultsToStatusError ( results ) . status ) . toEqual ( expectedStatus )
18
27
} )
@@ -27,12 +36,12 @@ it("converts all errors to a single string", () => {
27
36
describe ( getCascadedAsyncState . name , ( ) => {
28
37
it ( "returns the first async state if it is not fulfilled" , ( ) => {
29
38
const asyncStates = [
30
- { status : AsyncRequestStatus . PENDING , error : null } ,
31
- { status : AsyncRequestStatus . INIT , error : null } ,
32
- { status : AsyncRequestStatus . INIT , error : null }
39
+ { status : AsyncRequestStatusEnum . PENDING , error : null } ,
40
+ { status : AsyncRequestStatusEnum . INIT , error : null } ,
41
+ { status : AsyncRequestStatusEnum . INIT , error : null }
33
42
]
34
43
const expectedState = {
35
- status : AsyncRequestStatus . PENDING ,
44
+ status : AsyncRequestStatusEnum . PENDING ,
36
45
error : null
37
46
}
38
47
@@ -43,12 +52,12 @@ describe(getCascadedAsyncState.name, () => {
43
52
44
53
it ( "returns the first async state as an init state if it is init" , ( ) => {
45
54
const asyncStates = [
46
- { status : AsyncRequestStatus . INIT , error : null } ,
47
- { status : AsyncRequestStatus . INIT , error : null } ,
48
- { status : AsyncRequestStatus . INIT , error : null }
55
+ { status : AsyncRequestStatusEnum . INIT , error : null } ,
56
+ { status : AsyncRequestStatusEnum . INIT , error : null } ,
57
+ { status : AsyncRequestStatusEnum . INIT , error : null }
49
58
]
50
59
const expectedState = {
51
- status : AsyncRequestStatus . INIT ,
60
+ status : AsyncRequestStatusEnum . INIT ,
52
61
error : null
53
62
}
54
63
@@ -59,12 +68,12 @@ describe(getCascadedAsyncState.name, () => {
59
68
60
69
it ( "returns the next async state if the previous async state is fulfilled" , ( ) => {
61
70
const asyncStates = [
62
- { status : AsyncRequestStatus . FULFILLED , error : null } ,
63
- { status : AsyncRequestStatus . PENDING , error : null } ,
64
- { status : AsyncRequestStatus . INIT , error : null }
71
+ { status : AsyncRequestStatusEnum . FULFILLED , error : null } ,
72
+ { status : AsyncRequestStatusEnum . PENDING , error : null } ,
73
+ { status : AsyncRequestStatusEnum . INIT , error : null }
65
74
]
66
75
const expectedState = {
67
- status : AsyncRequestStatus . PENDING ,
76
+ status : AsyncRequestStatusEnum . PENDING ,
68
77
error : null
69
78
}
70
79
@@ -75,12 +84,12 @@ describe(getCascadedAsyncState.name, () => {
75
84
76
85
it ( "returns the next async state as pending if it has a init status" , ( ) => {
77
86
const asyncStates = [
78
- { status : AsyncRequestStatus . FULFILLED , error : null } ,
79
- { status : AsyncRequestStatus . INIT , error : null } ,
80
- { status : AsyncRequestStatus . INIT , error : null }
87
+ { status : AsyncRequestStatusEnum . FULFILLED , error : null } ,
88
+ { status : AsyncRequestStatusEnum . INIT , error : null } ,
89
+ { status : AsyncRequestStatusEnum . INIT , error : null }
81
90
]
82
91
const expectedState = {
83
- status : AsyncRequestStatus . PENDING ,
92
+ status : AsyncRequestStatusEnum . PENDING ,
84
93
error : null
85
94
}
86
95
@@ -91,12 +100,12 @@ describe(getCascadedAsyncState.name, () => {
91
100
92
101
it ( "returns a fulfilled async state if all of the async states are fulfilled" , ( ) => {
93
102
const asyncStates = [
94
- { status : AsyncRequestStatus . FULFILLED , error : null } ,
95
- { status : AsyncRequestStatus . FULFILLED , error : null } ,
96
- { status : AsyncRequestStatus . FULFILLED , error : null }
103
+ { status : AsyncRequestStatusEnum . FULFILLED , error : null } ,
104
+ { status : AsyncRequestStatusEnum . FULFILLED , error : null } ,
105
+ { status : AsyncRequestStatusEnum . FULFILLED , error : null }
97
106
]
98
107
const expectedState = {
99
- status : AsyncRequestStatus . FULFILLED ,
108
+ status : AsyncRequestStatusEnum . FULFILLED ,
100
109
error : null
101
110
}
102
111
@@ -108,12 +117,12 @@ describe(getCascadedAsyncState.name, () => {
108
117
it ( "does not return the next async state if the previous async state is error" , ( ) => {
109
118
const expectedError = "some error"
110
119
const asyncStates = [
111
- { status : AsyncRequestStatus . FULFILLED , error : null } ,
112
- { status : AsyncRequestStatus . ERROR , error : expectedError } ,
113
- { status : AsyncRequestStatus . INIT , error : null }
120
+ { status : AsyncRequestStatusEnum . FULFILLED , error : null } ,
121
+ { status : AsyncRequestStatusEnum . ERROR , error : expectedError } ,
122
+ { status : AsyncRequestStatusEnum . INIT , error : null }
114
123
]
115
124
const expectedState = {
116
- status : AsyncRequestStatus . ERROR ,
125
+ status : AsyncRequestStatusEnum . ERROR ,
117
126
error : expectedError
118
127
}
119
128
@@ -122,13 +131,13 @@ describe(getCascadedAsyncState.name, () => {
122
131
expect ( result ) . toEqual ( expectedState )
123
132
} )
124
133
125
- it ( `returns status as ${ AsyncRequestStatus . INIT } and error as null when the argument is an empty array` , ( ) => {
134
+ it ( `returns status as ${ AsyncRequestStatusEnum . INIT } and error as null when the argument is an empty array` , ( ) => {
126
135
const asyncStates : Array < {
127
136
status : AsyncRequestStatus
128
137
error : string | null
129
138
} > = [ ]
130
139
const expectedState = {
131
- status : AsyncRequestStatus . INIT ,
140
+ status : AsyncRequestStatusEnum . INIT ,
132
141
error : null
133
142
}
134
143
@@ -152,9 +161,9 @@ describe(getOptimisticAsyncLoadState.name, () => {
152
161
isLastActionLoad : true
153
162
}
154
163
155
- it ( `return status as ${ AsyncRequestStatus . FULFILLED } ` , ( ) => {
164
+ it ( `return status as ${ AsyncRequestStatusEnum . FULFILLED } ` , ( ) => {
156
165
const expectedResult : GetOptimisticAsyncLoadStateResult = {
157
- status : AsyncRequestStatus . FULFILLED ,
166
+ status : AsyncRequestStatusEnum . FULFILLED ,
158
167
error : null
159
168
}
160
169
@@ -165,13 +174,13 @@ describe(getOptimisticAsyncLoadState.name, () => {
165
174
} )
166
175
167
176
describe ( "isLoaded is false" , ( ) => {
168
- it ( `return status as ${ AsyncRequestStatus . INIT } if isLastActionLoad is false` , ( ) => {
177
+ it ( `return status as ${ AsyncRequestStatusEnum . INIT } if isLastActionLoad is false` , ( ) => {
169
178
const args : GetOptimisticAsyncLoadStateArgs = {
170
179
isLoaded : false ,
171
180
isLastActionLoad : false
172
181
}
173
182
const expectedResult : GetOptimisticAsyncLoadStateResult = {
174
- status : AsyncRequestStatus . INIT ,
183
+ status : AsyncRequestStatusEnum . INIT ,
175
184
error : null
176
185
}
177
186
@@ -180,13 +189,13 @@ describe(getOptimisticAsyncLoadState.name, () => {
180
189
expect ( result ) . toEqual ( expectedResult )
181
190
} )
182
191
183
- it ( `return status as ${ AsyncRequestStatus . INIT } if isLastActionLoad is true and lastActionAsyncState is undefined` , ( ) => {
192
+ it ( `return status as ${ AsyncRequestStatusEnum . INIT } if isLastActionLoad is true and lastActionAsyncState is undefined` , ( ) => {
184
193
const args : GetOptimisticAsyncLoadStateArgs = {
185
194
isLoaded : false ,
186
195
isLastActionLoad : true
187
196
}
188
197
const expectedResult : GetOptimisticAsyncLoadStateResult = {
189
- status : AsyncRequestStatus . INIT ,
198
+ status : AsyncRequestStatusEnum . INIT ,
190
199
error : null
191
200
}
192
201
@@ -195,17 +204,17 @@ describe(getOptimisticAsyncLoadState.name, () => {
195
204
expect ( result ) . toEqual ( expectedResult )
196
205
} )
197
206
198
- it ( `return status as ${ AsyncRequestStatus . INIT } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatus . INIT } ` , ( ) => {
207
+ it ( `return status as ${ AsyncRequestStatusEnum . INIT } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatusEnum . INIT } ` , ( ) => {
199
208
const args : GetOptimisticAsyncLoadStateArgs = {
200
209
isLoaded : false ,
201
210
isLastActionLoad : true ,
202
211
lastActionAsyncState : {
203
- status : AsyncRequestStatus . INIT ,
212
+ status : AsyncRequestStatusEnum . INIT ,
204
213
error : null
205
214
}
206
215
}
207
216
const expectedResult : GetOptimisticAsyncLoadStateResult = {
208
- status : AsyncRequestStatus . INIT ,
217
+ status : AsyncRequestStatusEnum . INIT ,
209
218
error : null
210
219
}
211
220
@@ -214,17 +223,17 @@ describe(getOptimisticAsyncLoadState.name, () => {
214
223
expect ( result ) . toEqual ( expectedResult )
215
224
} )
216
225
217
- it ( `return status as ${ AsyncRequestStatus . PENDING } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatus . PENDING } ` , ( ) => {
226
+ it ( `return status as ${ AsyncRequestStatusEnum . PENDING } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatusEnum . PENDING } ` , ( ) => {
218
227
const args : GetOptimisticAsyncLoadStateArgs = {
219
228
isLoaded : false ,
220
229
isLastActionLoad : true ,
221
230
lastActionAsyncState : {
222
- status : AsyncRequestStatus . PENDING ,
231
+ status : AsyncRequestStatusEnum . PENDING ,
223
232
error : null
224
233
}
225
234
}
226
235
const expectedResult : GetOptimisticAsyncLoadStateResult = {
227
- status : AsyncRequestStatus . PENDING ,
236
+ status : AsyncRequestStatusEnum . PENDING ,
228
237
error : null
229
238
}
230
239
@@ -233,17 +242,17 @@ describe(getOptimisticAsyncLoadState.name, () => {
233
242
expect ( result ) . toEqual ( expectedResult )
234
243
} )
235
244
236
- it ( `return status as ${ AsyncRequestStatus . FULFILLED } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatus . FULFILLED } ` , ( ) => {
245
+ it ( `return status as ${ AsyncRequestStatusEnum . FULFILLED } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatusEnum . FULFILLED } ` , ( ) => {
237
246
const args : GetOptimisticAsyncLoadStateArgs = {
238
247
isLoaded : false ,
239
248
isLastActionLoad : true ,
240
249
lastActionAsyncState : {
241
- status : AsyncRequestStatus . FULFILLED ,
250
+ status : AsyncRequestStatusEnum . FULFILLED ,
242
251
error : null
243
252
}
244
253
}
245
254
const expectedResult : GetOptimisticAsyncLoadStateResult = {
246
- status : AsyncRequestStatus . FULFILLED ,
255
+ status : AsyncRequestStatusEnum . FULFILLED ,
247
256
error : null
248
257
}
249
258
@@ -252,17 +261,17 @@ describe(getOptimisticAsyncLoadState.name, () => {
252
261
expect ( result ) . toEqual ( expectedResult )
253
262
} )
254
263
255
- it ( `return status as ${ AsyncRequestStatus . ERROR } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatus . ERROR } ` , ( ) => {
264
+ it ( `return status as ${ AsyncRequestStatusEnum . ERROR } if isLastActionLoad is true and lastActionAsyncState.status is ${ AsyncRequestStatusEnum . ERROR } ` , ( ) => {
256
265
const args : GetOptimisticAsyncLoadStateArgs = {
257
266
isLoaded : false ,
258
267
isLastActionLoad : true ,
259
268
lastActionAsyncState : {
260
- status : AsyncRequestStatus . ERROR ,
269
+ status : AsyncRequestStatusEnum . ERROR ,
261
270
error : "some error"
262
271
}
263
272
}
264
273
const expectedResult : GetOptimisticAsyncLoadStateResult = {
265
- status : AsyncRequestStatus . ERROR ,
274
+ status : AsyncRequestStatusEnum . ERROR ,
266
275
error : "some error"
267
276
}
268
277
0 commit comments