intl/locale/tests/unit/test_pluralForm_makeGetter.js

Fri, 16 Jan 2015 18:13:44 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 16 Jan 2015 18:13:44 +0100
branch
TOR_BUG_9701
changeset 14
925c144e1f1f
permissions
-rw-r--r--

Integrate suggestion from review to improve consistency with existing code.

michael@0 1 /* This Source Code Form is subject to the terms of the Mozilla Public
michael@0 2 * License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
michael@0 4
michael@0 5 /**
michael@0 6 * This unit test makes sure the plural form for Irish Gaeilge is working by
michael@0 7 * using the makeGetter method instead of using the default language (by
michael@0 8 * development), English.
michael@0 9 */
michael@0 10
michael@0 11 Components.utils.import("resource://gre/modules/PluralForm.jsm");
michael@0 12
michael@0 13 function run_test()
michael@0 14 {
michael@0 15 // Irish is plural rule #11
michael@0 16 let [get, numForms] = PluralForm.makeGetter(11);
michael@0 17
michael@0 18 // Irish has 5 plural forms
michael@0 19 do_check_eq(5, numForms());
michael@0 20
michael@0 21 // I don't really know Irish, so I'll stick in some dummy text
michael@0 22 let words = "is 1;is 2;is 3-6;is 7-10;everything else";
michael@0 23
michael@0 24 let test = function(text, low, high) {
michael@0 25 for (let num = low; num <= high; num++)
michael@0 26 do_check_eq(text, get(num, words));
michael@0 27 };
michael@0 28
michael@0 29 // Make sure for good inputs, things work as expected
michael@0 30 test("everything else", 0, 0);
michael@0 31 test("is 1", 1, 1);
michael@0 32 test("is 2", 2, 2);
michael@0 33 test("is 3-6", 3, 6);
michael@0 34 test("is 7-10", 7, 10);
michael@0 35 test("everything else", 11, 200);
michael@0 36 }

mercurial