Skip to content

Commit 521d2ef

Browse files
committed
Merge pull request #47 from fieldbook/criterion-criteria
Add special case for criterion/criteria
2 parents 23a7a73 + df2f3fb commit 521d2ef

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

lib/inflection.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,7 @@
376376
geese : new RegExp( '^geese$' , 'gi' ),
377377
quizzes : new RegExp( '(quiz)zes$' , 'gi' ),
378378
whereases : new RegExp( '^(whereas)es$' , 'gi' ),
379+
criteria : new RegExp( '^(criteri)a$' , 'gi' ),
379380
ss : new RegExp( 'ss$' , 'gi' ),
380381
s : new RegExp( 's$' , 'gi' )
381382
},
@@ -405,6 +406,7 @@
405406
goose : new RegExp( '^goose$' , 'gi' ),
406407
quiz : new RegExp( '(quiz)$' , 'gi' ),
407408
whereas : new RegExp( '^(whereas)$' , 'gi' ),
409+
criterion : new RegExp( '^(criteri)on$' , 'gi' ),
408410
s : new RegExp( 's$' , 'gi' ),
409411
common : new RegExp( '$' , 'gi' )
410412
}
@@ -441,6 +443,7 @@
441443
[ regex.plural.geese ],
442444
[ regex.plural.quizzes ],
443445
[ regex.plural.whereases ],
446+
[ regex.plural.criteria ],
444447

445448
// original rule
446449
[ regex.singular.man , '$1en' ],
@@ -467,6 +470,7 @@
467470
[ regex.singular.goose , 'geese' ],
468471
[ regex.singular.quiz , '$1zes' ],
469472
[ regex.singular.whereas, '$1es' ],
473+
[ regex.singular.criterion, '$1a' ],
470474

471475
[ regex.singular.s , 's' ],
472476
[ regex.singular.common, 's' ]
@@ -502,11 +506,13 @@
502506
[ regex.singular.goose ],
503507
[ regex.singular.quiz ],
504508
[ regex.singular.whereas ],
509+
[ regex.singular.criterion ],
505510

506511
// original rule
507512
[ regex.plural.men , '$1an' ],
508513
[ regex.plural.people , '$1rson' ],
509514
[ regex.plural.children , '$1' ],
515+
[ regex.plural.criteria, '$1on'],
510516
[ regex.plural.tia , '$1um' ],
511517
[ regex.plural.analyses , '$1$2sis' ],
512518
[ regex.plural.hives , '$1ve' ],

test/inflection.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ describe( 'test .pluralize', function (){
4545
inflection.pluralize( 'matrix' ).should.equal( 'matrices' );
4646
inflection.pluralize( 'vertex' ).should.equal( 'vertices' );
4747
inflection.pluralize( 'canvas' ).should.equal( 'canvases' );
48+
inflection.pluralize( 'criterion' ).should.equal( 'criteria' );
49+
inflection.pluralize( 'criteria' ).should.equal( 'criteria' );
4850
});
4951
});
5052

@@ -80,6 +82,8 @@ describe( 'test .singularize', function (){
8082
inflection.singularize( 'matrices' ).should.equal( 'matrix' );
8183
inflection.singularize( 'vertices' ).should.equal( 'vertex' );
8284
inflection.singularize( 'canvases' ).should.equal( 'canvas' );
85+
inflection.singularize( 'criteria' ).should.equal( 'criterion' );
86+
inflection.singularize( 'criterion' ).should.equal( 'criterion' );
8387

8488
});
8589
});

0 commit comments

Comments
 (0)