@@ -4175,7 +4175,8 @@ describe('Cursor', function () {
4175
4175
const cursor = collection . find ( { } , { sort : input } ) ;
4176
4176
cursor . next ( err => {
4177
4177
expect ( err ) . to . not . exist ;
4178
- expect ( events [ 0 ] . command . sort ) . to . deep . equal ( output ) ;
4178
+ expect ( events [ 0 ] . command . sort ) . to . be . instanceOf ( Map ) ;
4179
+ expect ( Array . from ( events [ 0 ] . command . sort ) ) . to . deep . equal ( Array . from ( output ) ) ;
4179
4180
cursor . close ( done ) ;
4180
4181
} ) ;
4181
4182
} ) ;
@@ -4189,54 +4190,97 @@ describe('Cursor', function () {
4189
4190
const cursor = collection . find ( { } ) . sort ( input ) ;
4190
4191
cursor . next ( err => {
4191
4192
expect ( err ) . to . not . exist ;
4192
- expect ( events [ 0 ] . command . sort ) . to . deep . equal ( output ) ;
4193
+ expect ( events [ 0 ] . command . sort ) . to . be . instanceOf ( Map ) ;
4194
+ expect ( Array . from ( events [ 0 ] . command . sort ) ) . to . deep . equal ( Array . from ( output ) ) ;
4193
4195
cursor . close ( done ) ;
4194
4196
} ) ;
4195
4197
} ) ;
4196
4198
} ) ;
4197
4199
4198
- it ( 'should use find options object' , findSort ( { alpha : 1 } , { alpha : 1 } ) ) ;
4199
- it ( 'should use find options string' , findSort ( 'alpha' , { alpha : 1 } ) ) ;
4200
- it ( 'should use find options shallow array' , findSort ( [ 'alpha' , 1 ] , { alpha : 1 } ) ) ;
4201
- it ( 'should use find options deep array' , findSort ( [ [ 'alpha' , 1 ] ] , { alpha : 1 } ) ) ;
4200
+ it ( 'should use find options object' , findSort ( { alpha : 1 } , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4201
+ it ( 'should use find options string' , findSort ( 'alpha' , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4202
+ it ( 'should use find options shallow array' , findSort ( [ 'alpha' , 1 ] , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4203
+ it ( 'should use find options deep array' , findSort ( [ [ 'alpha' , 1 ] ] , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4202
4204
4203
- it ( 'should use cursor.sort object' , cursorSort ( { alpha : 1 } , { alpha : 1 } ) ) ;
4204
- it ( 'should use cursor.sort string' , cursorSort ( 'alpha' , { alpha : 1 } ) ) ;
4205
- it ( 'should use cursor.sort shallow array' , cursorSort ( [ 'alpha' , 1 ] , { alpha : 1 } ) ) ;
4206
- it ( 'should use cursor.sort deep array' , cursorSort ( [ [ 'alpha' , 1 ] ] , { alpha : 1 } ) ) ;
4205
+ it ( 'should use cursor.sort object' , cursorSort ( { alpha : 1 } , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4206
+ it ( 'should use cursor.sort string' , cursorSort ( 'alpha' , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4207
+ it ( 'should use cursor.sort shallow array' , cursorSort ( [ 'alpha' , 1 ] , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4208
+ it ( 'should use cursor.sort deep array' , cursorSort ( [ [ 'alpha' , 1 ] ] , new Map ( [ [ ' alpha' , 1 ] ] ) ) ) ;
4207
4209
4208
4210
it ( 'formatSort - one key' , ( ) => {
4209
- expect ( formatSort ( 'alpha' ) ) . to . deep . equal ( { alpha : 1 } ) ;
4210
- expect ( formatSort ( [ 'alpha' ] ) ) . to . deep . equal ( { alpha : 1 } ) ;
4211
- expect ( formatSort ( 'alpha' , 1 ) ) . to . deep . equal ( { alpha : 1 } ) ;
4212
- expect ( formatSort ( 'alpha' , 'asc' ) ) . to . deep . equal ( { alpha : 1 } ) ;
4213
- expect ( formatSort ( [ [ 'alpha' , 'asc' ] ] ) ) . to . deep . equal ( { alpha : 1 } ) ;
4214
- expect ( formatSort ( 'alpha' , 'ascending' ) ) . to . deep . equal ( { alpha : 1 } ) ;
4215
- expect ( formatSort ( { alpha : 1 } ) ) . to . deep . equal ( { alpha : 1 } ) ;
4216
- expect ( formatSort ( 'beta' ) ) . to . deep . equal ( { beta : 1 } ) ;
4217
- expect ( formatSort ( [ 'beta' ] ) ) . to . deep . equal ( { beta : 1 } ) ;
4218
- expect ( formatSort ( 'beta' , - 1 ) ) . to . deep . equal ( { beta : - 1 } ) ;
4219
- expect ( formatSort ( 'beta' , 'desc' ) ) . to . deep . equal ( { beta : - 1 } ) ;
4220
- expect ( formatSort ( 'beta' , 'descending' ) ) . to . deep . equal ( { beta : - 1 } ) ;
4221
- expect ( formatSort ( { beta : - 1 } ) ) . to . deep . equal ( { beta : - 1 } ) ;
4222
- expect ( formatSort ( { alpha : { $meta : 'hi' } } ) ) . to . deep . equal ( {
4223
- alpha : { $meta : 'hi' }
4224
- } ) ;
4211
+ // TODO (NODE-3236): These are unit tests for a standalone function and should be moved out of the cursor context file
4212
+ expect ( formatSort ( 'alpha' ) ) . to . deep . equal ( new Map ( [ [ 'alpha' , 1 ] ] ) ) ;
4213
+ expect ( formatSort ( [ 'alpha' ] ) ) . to . deep . equal ( new Map ( [ [ 'alpha' , 1 ] ] ) ) ;
4214
+ expect ( formatSort ( 'alpha' , 1 ) ) . to . deep . equal ( new Map ( [ [ 'alpha' , 1 ] ] ) ) ;
4215
+ expect ( formatSort ( 'alpha' , 'asc' ) ) . to . deep . equal ( new Map ( [ [ 'alpha' , 1 ] ] ) ) ;
4216
+ expect ( formatSort ( [ [ 'alpha' , 'asc' ] ] ) ) . to . deep . equal ( new Map ( [ [ 'alpha' , 1 ] ] ) ) ;
4217
+ expect ( formatSort ( 'alpha' , 'ascending' ) ) . to . deep . equal ( new Map ( [ [ 'alpha' , 1 ] ] ) ) ;
4218
+ expect ( formatSort ( { alpha : 1 } ) ) . to . deep . equal ( new Map ( [ [ 'alpha' , 1 ] ] ) ) ;
4219
+ expect ( formatSort ( 'beta' ) ) . to . deep . equal ( new Map ( [ [ 'beta' , 1 ] ] ) ) ;
4220
+ expect ( formatSort ( [ 'beta' ] ) ) . to . deep . equal ( new Map ( [ [ 'beta' , 1 ] ] ) ) ;
4221
+ expect ( formatSort ( 'beta' , - 1 ) ) . to . deep . equal ( new Map ( [ [ 'beta' , - 1 ] ] ) ) ;
4222
+ expect ( formatSort ( 'beta' , 'desc' ) ) . to . deep . equal ( new Map ( [ [ 'beta' , - 1 ] ] ) ) ;
4223
+ expect ( formatSort ( 'beta' , 'descending' ) ) . to . deep . equal ( new Map ( [ [ 'beta' , - 1 ] ] ) ) ;
4224
+ expect ( formatSort ( { beta : - 1 } ) ) . to . deep . equal ( new Map ( [ [ 'beta' , - 1 ] ] ) ) ;
4225
+ expect ( formatSort ( { alpha : { $meta : 'hi' } } ) ) . to . deep . equal (
4226
+ new Map ( [ [ 'alpha' , { $meta : 'hi' } ] ] )
4227
+ ) ;
4225
4228
} ) ;
4226
4229
4227
4230
it ( 'formatSort - multi key' , ( ) => {
4228
- expect ( formatSort ( [ 'alpha' , 'beta' ] ) ) . to . deep . equal ( { alpha : 1 , beta : 1 } ) ;
4229
- expect ( formatSort ( { alpha : 1 , beta : 1 } ) ) . to . deep . equal ( { alpha : 1 , beta : 1 } ) ;
4231
+ expect ( formatSort ( [ 'alpha' , 'beta' ] ) ) . to . deep . equal (
4232
+ new Map ( [
4233
+ [ 'alpha' , 1 ] ,
4234
+ [ 'beta' , 1 ]
4235
+ ] )
4236
+ ) ;
4237
+ expect ( formatSort ( { alpha : 1 , beta : 1 } ) ) . to . deep . equal (
4238
+ new Map ( [
4239
+ [ 'alpha' , 1 ] ,
4240
+ [ 'beta' , 1 ]
4241
+ ] )
4242
+ ) ;
4230
4243
expect (
4231
4244
formatSort ( [
4232
4245
[ 'alpha' , 'asc' ] ,
4233
4246
[ 'beta' , 'ascending' ]
4234
4247
] )
4235
- ) . to . deep . equal ( { alpha : 1 , beta : 1 } ) ;
4236
- expect ( formatSort ( { alpha : { $meta : 'hi' } , beta : 'ascending' } ) ) . to . deep . equal ( {
4237
- alpha : { $meta : 'hi' } ,
4238
- beta : 1
4239
- } ) ;
4248
+ ) . to . deep . equal (
4249
+ new Map ( [
4250
+ [ 'alpha' , 1 ] ,
4251
+ [ 'beta' , 1 ]
4252
+ ] )
4253
+ ) ;
4254
+ expect (
4255
+ formatSort (
4256
+ new Map ( [
4257
+ [ 'alpha' , 'asc' ] ,
4258
+ [ 'beta' , 'ascending' ]
4259
+ ] )
4260
+ )
4261
+ ) . to . deep . equal (
4262
+ new Map ( [
4263
+ [ 'alpha' , 1 ] ,
4264
+ [ 'beta' , 1 ]
4265
+ ] )
4266
+ ) ;
4267
+ expect (
4268
+ formatSort ( [
4269
+ [ '3' , 'asc' ] ,
4270
+ [ '1' , 'ascending' ]
4271
+ ] )
4272
+ ) . to . deep . equal (
4273
+ new Map ( [
4274
+ [ '3' , 1 ] ,
4275
+ [ '1' , 1 ]
4276
+ ] )
4277
+ ) ;
4278
+ expect ( formatSort ( { alpha : { $meta : 'hi' } , beta : 'ascending' } ) ) . to . deep . equal (
4279
+ new Map ( [
4280
+ [ 'alpha' , { $meta : 'hi' } ] ,
4281
+ [ 'beta' , 1 ]
4282
+ ] )
4283
+ ) ;
4240
4284
} ) ;
4241
4285
4242
4286
it ( 'should use allowDiskUse option on sort' , {
@@ -4249,7 +4293,7 @@ describe('Cursor', function () {
4249
4293
cursor . next ( err => {
4250
4294
expect ( err ) . to . not . exist ;
4251
4295
const { command } = events . shift ( ) ;
4252
- expect ( command . sort ) . to . deep . equal ( { alpha : 1 } ) ;
4296
+ expect ( command . sort ) . to . deep . equal ( new Map ( [ [ ' alpha' , 1 ] ] ) ) ;
4253
4297
expect ( command . allowDiskUse ) . to . be . true ;
4254
4298
cursor . close ( done ) ;
4255
4299
} ) ;
0 commit comments