@@ -533,5 +533,36 @@ describe('bucketGet API V2', () => {
533533 done ( ) ;
534534 } ) ;
535535 } ) ;
536+
537+ it ( 'should return user metadata as case insentive (lowercase header)' , done => {
538+ const objectNameMeta = 'objectWithMeta' ;
539+ const putRequest = new DummyRequest ( {
540+ bucketName,
541+ headers : { 'x-amz-meta-color' : 'yellow' } ,
542+ url : `/${ bucketName } /${ objectNameMeta } ` ,
543+ namespace,
544+ objectKey : objectNameMeta ,
545+ } , postBody ) ;
546+
547+ const testGetRequest = Object . assign ( {
548+ query : { } ,
549+ url : baseUrl ,
550+ } , baseGetRequest ) ;
551+ testGetRequest . headers [ 'x-amz-optional-object-attributes' ] = 'x-amz-meta-coLor' ;
552+
553+ async . waterfall ( [
554+ next => bucketPut ( authInfo , testPutBucketRequest , log , next ) ,
555+ ( _ , next ) => objectPut ( authInfo , putRequest , undefined , log , next ) ,
556+ ( _ , next ) => bucketGet ( authInfo , testGetRequest , log , next ) ,
557+ ( result , _ , next ) => parseString ( result , next ) ,
558+ ] ,
559+ ( err , result ) => {
560+ assert . strictEqual ( err , null ) ;
561+ const content = result . ListBucketResult . Contents [ 0 ] ;
562+ assert . strictEqual ( content . Key [ 0 ] , objectNameMeta ) ;
563+ assert . strictEqual ( content [ 'x-amz-meta-color' ] [ 0 ] , 'yellow' ) ;
564+ done ( ) ;
565+ } ) ;
566+ } ) ;
536567 } ) ;
537568} ) ;
0 commit comments