@@ -6,21 +6,21 @@ const Extensions = require('../lib/Extensions');
66
77describe ( 'Extensions' , function ( ) {
88 describe ( 'parse' , function ( ) {
9- it ( 'should parse ' , function ( ) {
9+ it ( 'parses a single extension ' , function ( ) {
1010 const extensions = Extensions . parse ( 'foo' ) ;
1111
1212 assert . deepStrictEqual ( extensions , { foo : [ { } ] } ) ;
1313 } ) ;
1414
15- it ( 'should parse params' , function ( ) {
15+ it ( 'parses params' , function ( ) {
1616 const extensions = Extensions . parse ( 'foo; bar; baz=1; bar=2' ) ;
1717
1818 assert . deepStrictEqual ( extensions , {
1919 foo : [ { bar : [ true , '2' ] , baz : [ '1' ] } ]
2020 } ) ;
2121 } ) ;
2222
23- it ( 'should parse multiple extensions' , function ( ) {
23+ it ( 'parse multiple extensions' , function ( ) {
2424 const extensions = Extensions . parse ( 'foo, bar; baz, foo; baz' ) ;
2525
2626 assert . deepStrictEqual ( extensions , {
@@ -29,29 +29,36 @@ describe('Extensions', function () {
2929 } ) ;
3030 } ) ;
3131
32- it ( 'should parse quoted params' , function ( ) {
32+ it ( 'parses quoted params' , function ( ) {
3333 const extensions = Extensions . parse ( 'foo; bar="hi"' ) ;
3434
3535 assert . deepStrictEqual ( extensions , {
3636 foo : [ { bar : [ 'hi' ] } ]
3737 } ) ;
3838 } ) ;
39+
40+ it ( 'ignores names that match Object.prototype properties' , function ( ) {
41+ const parse = Extensions . parse ;
42+
43+ assert . deepStrictEqual ( parse ( 'hasOwnProperty, toString' ) , { } ) ;
44+ assert . deepStrictEqual ( parse ( 'foo; constructor' ) , { foo : [ { } ] } ) ;
45+ } ) ;
3946 } ) ;
4047
4148 describe ( 'format' , function ( ) {
42- it ( 'should format ' , function ( ) {
49+ it ( 'formats a single extension ' , function ( ) {
4350 const extensions = Extensions . format ( { foo : { } } ) ;
4451
4552 assert . strictEqual ( extensions , 'foo' ) ;
4653 } ) ;
4754
48- it ( 'should format params' , function ( ) {
55+ it ( 'formats params' , function ( ) {
4956 const extensions = Extensions . format ( { foo : { bar : [ true , 2 ] , baz : 1 } } ) ;
5057
5158 assert . strictEqual ( extensions , 'foo; bar; bar=2; baz=1' ) ;
5259 } ) ;
5360
54- it ( 'should format multiple extensions' , function ( ) {
61+ it ( 'formats multiple extensions' , function ( ) {
5562 const extensions = Extensions . format ( {
5663 foo : [ { } , { baz : true } ] ,
5764 bar : { baz : true }
0 commit comments