@@ -2,7 +2,7 @@ import test from 'ava'
2
2
import transform from '../operations/transform.js'
3
3
import compare from './compare.js'
4
4
5
- import bucket from './bucket.js'
5
+ import bucket , { Bucket } from './bucket.js'
6
6
7
7
// Setup
8
8
@@ -214,6 +214,23 @@ test('should merge bucket arrays into one array when going forward and flipped',
214
214
t . deepEqual ( ret , expected )
215
215
} )
216
216
217
+ test ( 'should return an empty object when no buckets are defined' , async ( t ) => {
218
+ const data = [
219
+ { id : 'user1' , name : 'User 1' , role : 'editor' } ,
220
+ { id : 'user2' , name : 'User 2' , role : undefined } ,
221
+ { id : 'user3' , name : 'User 3' } ,
222
+ { id : 'user4' , name : 'User 4' , role : 'admin' } ,
223
+ { id : 'user5' , name : 'User 5' } ,
224
+ { id : 'user6' , name : 'User 6' , role : 'editor' } ,
225
+ ]
226
+ const buckets : Bucket [ ] = [ ]
227
+ const expected = { }
228
+
229
+ const ret = await bucket ( { buckets } ) ( options ) ( data , state )
230
+
231
+ t . deepEqual ( ret , expected )
232
+ } )
233
+
217
234
// Tests -- rev
218
235
219
236
test ( 'should merge bucket arrays into one array in the order of the defined buckets' , async ( t ) => {
@@ -407,6 +424,27 @@ test('should return empty array when we have no buckets object', async (t) => {
407
424
t . deepEqual ( ret , expected )
408
425
} )
409
426
427
+ test ( 'should return empty array when no buckets are defined' , async ( t ) => {
428
+ const data = {
429
+ users : [
430
+ { id : 'user2' , name : 'User 2' , role : undefined } ,
431
+ { id : 'user3' , name : 'User 3' } ,
432
+ { id : 'user5' , name : 'User 5' } ,
433
+ ] ,
434
+ admin : [ { id : 'user4' , name : 'User 4' , role : 'admin' } ] ,
435
+ editor : [
436
+ { id : 'user1' , name : 'User 1' , role : 'editor' } ,
437
+ { id : 'user6' , name : 'User 6' , role : 'editor' } ,
438
+ ] ,
439
+ }
440
+ const buckets : Bucket [ ] = [ ]
441
+ const expected : unknown [ ] = [ ]
442
+
443
+ const ret = await bucket ( { buckets } ) ( options ) ( data , stateRev )
444
+
445
+ t . deepEqual ( ret , expected )
446
+ } )
447
+
410
448
test ( 'should sort array into buckets in rev when flipped' , async ( t ) => {
411
449
const stateRevFlipped = { ...stateRev , flip : true }
412
450
const data = [
0 commit comments