@@ -277,27 +277,41 @@ test('accepts opts.enjoyBy option to do date-based cutoffs', t => {
277
277
created : '2018-01-01T00:00:00.000Z' ,
278
278
'1.0.0' : '2018-01-01T00:00:00.000Z' ,
279
279
'2.0.0' : '2018-01-02T00:00:00.000Z' ,
280
- '3.0.0' : '2018-01-03T00:00:00.000Z'
280
+ '2.0.1' : '2018-01-03T00:00:00.000Z' ,
281
+ '3.0.0' : '2018-01-04T00:00:00.000Z'
281
282
} ,
282
283
versions : {
283
284
'1.0.0' : { version : '1.0.0' } ,
284
285
'2.0.0' : { version : '2.0.0' } ,
286
+ '2.0.1' : { version : '2.0.1' } ,
285
287
'3.0.0' : { version : '3.0.0' }
286
288
}
287
289
}
288
- const manifest = pickManifest ( metadata , '*' , {
290
+
291
+ let manifest = pickManifest ( metadata , '*' , {
289
292
enjoyBy : '2018-01-02'
290
293
} )
291
294
t . equal ( manifest . version , '2.0.0' , 'filtered out 3.0.0 because of dates' )
295
+
296
+ manifest = pickManifest ( metadata , 'latest' , {
297
+ enjoyBy : '2018-01-02'
298
+ } )
299
+ t . equal ( manifest . version , '3.0.0' , 'tag specs use tagVersion if nothing else works' )
300
+
301
+ manifest = pickManifest ( metadata , '3.0.0' , {
302
+ enjoyBy : '2018-01-02'
303
+ } )
304
+ t . equal ( manifest . version , '3.0.0' , 'requesting specific version overrides' )
305
+
306
+ manifest = pickManifest ( metadata , '^2' , {
307
+ enjoyBy : '2018-01-02'
308
+ } )
309
+ t . equal ( manifest . version , '2.0.0' , 'non-tag ranges filtered' )
310
+
292
311
t . throws ( ( ) => {
293
- pickManifest ( metadata , '3.0.0' , {
294
- enjoyBy : '2018-01-02'
295
- } )
296
- } , / E n j o y B y d a t e o f / , 'trying to find by out-of-range version breaks' )
297
- t . throws ( ( ) => {
298
- pickManifest ( metadata , 'latest' , {
312
+ pickManifest ( metadata , '^3' , {
299
313
enjoyBy : '2018-01-02'
300
314
} )
301
- } , / E n j o y B y d a t e o f / , 'trying to find by tag breaks if date is out of range ' )
315
+ } , / E n j o y B y / , 'range for out-of-range spec fails even if defaultTag avail ' )
302
316
t . done ( )
303
317
} )
0 commit comments