From: Lukas B Date: Tue, 4 Nov 2014 23:51:39 +0000 (-0800) Subject: Beef up test_plurals.py X-Git-Tag: 2.2.0~3^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=52a835b0d1b664a514770925de96d586d0f429d5;p=thirdparty%2Fbabel.git Beef up test_plurals.py Update test coverage in test_plurals.py --- diff --git a/tests/messages/test_plurals.py b/tests/messages/test_plurals.py index 8c11745f..63ede13e 100644 --- a/tests/messages/test_plurals.py +++ b/tests/messages/test_plurals.py @@ -37,9 +37,28 @@ def test_get_plural_falls_back_to_default(): assert plurals.get_plural('aa') == (2, '(n != 1)') -def test_plural_tuple_attributes(): - tup = plurals.get_plural("ja") - assert tup.num_plurals == 1 - assert tup.plural_expr == '0' - assert tup.plural_forms == 'npurals=1; plural=0' - assert str(tup) == 'npurals=1; plural=0' +def test_get_plural(): + # See http://localization-guide.readthedocs.org/en/latest/l10n/pluralforms.html for more details. + assert plurals.get_plural(locale='en') == (2, '(n != 1)') + assert plurals.get_plural(locale='ga') == (3, '(n==1 ? 0 : n==2 ? 1 : 2)') + + plural_ja = plurals.get_plural("ja") + assert str(plural_ja) == 'nplurals=1; plural=0;' + assert plural_ja.num_plurals == 1 + assert plural_ja.plural_expr == '0' + assert plural_ja.plural_forms == 'nplurals=1; plural=0;' + + plural_en_US = plurals.get_plural('en_US') + assert str(plural_en_US) == 'nplurals=2; plural=(n != 1);' + assert plural_en_US.num_plurals == 2 + assert plural_en_US.plural_expr == '(n != 1)' + + plural_fr_FR = plurals.get_plural('fr_FR') + assert str(plural_fr_FR) == 'nplurals=2; plural=(n > 1);' + assert plural_fr_FR.num_plurals == 2 + assert plural_fr_FR.plural_expr == '(n > 1)' + + plural_pl_PL = plurals.get_plural('pl_PL') + assert str(plural_pl_PL) == 'nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);' + assert plural_pl_PL.num_plurals == 3 + assert plural_pl_PL.plural_expr == '(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)'