summaryrefslogtreecommitdiff
path: root/tests/qunit/suites/resources/mediawiki/mediawiki.language.test.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/qunit/suites/resources/mediawiki/mediawiki.language.test.js')
-rw-r--r--tests/qunit/suites/resources/mediawiki/mediawiki.language.test.js799
1 files changed, 424 insertions, 375 deletions
diff --git a/tests/qunit/suites/resources/mediawiki/mediawiki.language.test.js b/tests/qunit/suites/resources/mediawiki/mediawiki.language.test.js
index 3fa2b099..9ca434f1 100644
--- a/tests/qunit/suites/resources/mediawiki/mediawiki.language.test.js
+++ b/tests/qunit/suites/resources/mediawiki/mediawiki.language.test.js
@@ -1,394 +1,443 @@
-QUnit.module( 'mediawiki.language', QUnit.newMwEnvironment({
- setup: function () {
- this.liveLangData = mw.language.data.values;
- mw.language.data.values = $.extend( true, {}, this.liveLangData );
- },
- teardown: function () {
- // Restore
- mw.language.data.values = this.liveLangData;
- }
-}) );
+( function ( mw, $ ) {
+ 'use strict';
-QUnit.test( 'mw.language getData and setData', function ( assert ) {
- QUnit.expect( 2 );
+ QUnit.module( 'mediawiki.language', QUnit.newMwEnvironment( {
+ setup: function () {
+ this.liveLangData = mw.language.data.values;
+ mw.language.data.values = $.extend( true, {}, this.liveLangData );
+ },
+ teardown: function () {
+ mw.language.data.values = this.liveLangData;
+ }
+ } ) );
- mw.language.setData( 'en', 'testkey', 'testvalue' );
- assert.equal( mw.language.getData( 'en', 'testkey' ), 'testvalue', 'Getter setter test for mw.language' );
- assert.equal( mw.language.getData( 'en', 'invalidkey' ), undefined, 'Getter setter test for mw.language with invalid key' );
-} );
+ QUnit.test( 'mw.language getData and setData', 2, function ( assert ) {
+ mw.language.setData( 'en', 'testkey', 'testvalue' );
+ assert.equal( mw.language.getData( 'en', 'testkey' ), 'testvalue', 'Getter setter test for mw.language' );
+ assert.equal( mw.language.getData( 'en', 'invalidkey' ), undefined, 'Getter setter test for mw.language with invalid key' );
+ } );
-function grammarTest( langCode, test ) {
- // The test works only if the content language is opt.language
- // because it requires [lang].js to be loaded.
- QUnit.test( 'Grammar test for lang=' + langCode, function ( assert ) {
- QUnit.expect( test.length );
+ function grammarTest( langCode, test ) {
+ // The test works only if the content language is opt.language
+ // because it requires [lang].js to be loaded.
+ QUnit.test( 'Grammar test for lang=' + langCode, function ( assert ) {
+ QUnit.expect( test.length );
- for ( var i = 0 ; i < test.length; i++ ) {
- assert.equal(
- mw.language.convertGrammar( test[i].word, test[i].grammarForm ),
- test[i].expected,
- test[i].description
- );
- }
- });
-}
+ for ( var i = 0; i < test.length; i++ ) {
+ assert.equal(
+ mw.language.convertGrammar( test[i].word, test[i].grammarForm ),
+ test[i].expected,
+ test[i].description
+ );
+ }
+ } );
+ }
-var grammarTests = {
- bs: [
- {
- word: 'word',
- grammarForm: 'instrumental',
- expected: 's word',
- description: 'Grammar test for instrumental case'
- },
- {
- word: 'word',
- grammarForm: 'lokativ',
- expected: 'o word',
- description: 'Grammar test for lokativ case'
- }
- ],
+ // These tests run only for the current UI language.
+ var grammarTests = {
+ bs: [
+ {
+ word: 'word',
+ grammarForm: 'instrumental',
+ expected: 's word',
+ description: 'Grammar test for instrumental case'
+ },
+ {
+ word: 'word',
+ grammarForm: 'lokativ',
+ expected: 'o word',
+ description: 'Grammar test for lokativ case'
+ }
+ ],
- he: [
- {
- word: "ויקיפדיה",
- grammarForm: 'prefixed',
- expected: "וויקיפדיה",
- description: 'Duplicate the "Waw" if prefixed'
- },
- {
- word: "וולפגנג",
- grammarForm: 'prefixed',
- expected: "וולפגנג",
- description: 'Duplicate the "Waw" if prefixed, but not if it is already duplicated.'
- },
- {
- word: "הקובץ",
- grammarForm: 'prefixed',
- expected: "קובץ",
- description: 'Remove the "He" if prefixed'
- },
- {
- word: 'Wikipedia',
- grammarForm: 'תחילית',
- expected: '־Wikipedia',
- description: 'GAdd a hyphen (maqaf) before non-Hebrew letters'
- },
- {
- word: '1995',
- grammarForm: 'תחילית',
- expected: '־1995',
- description: 'Add a hyphen (maqaf) before numbers'
- }
- ],
+ he: [
+ {
+ word: 'ויקיפדיה',
+ grammarForm: 'prefixed',
+ expected: 'וויקיפדיה',
+ description: 'Duplicate the "Waw" if prefixed'
+ },
+ {
+ word: 'וולפגנג',
+ grammarForm: 'prefixed',
+ expected: 'וולפגנג',
+ description: 'Duplicate the "Waw" if prefixed, but not if it is already duplicated.'
+ },
+ {
+ word: 'הקובץ',
+ grammarForm: 'prefixed',
+ expected: 'קובץ',
+ description: 'Remove the "He" if prefixed'
+ },
+ {
+ word: 'Wikipedia',
+ grammarForm: 'תחילית',
+ expected: '־Wikipedia',
+ description: 'GAdd a hyphen (maqaf) before non-Hebrew letters'
+ },
+ {
+ word: '1995',
+ grammarForm: 'תחילית',
+ expected: '־1995',
+ description: 'Add a hyphen (maqaf) before numbers'
+ }
+ ],
- hsb: [
- {
- word: 'word',
- grammarForm: 'instrumental',
- expected: 'z word',
- description: 'Grammar test for instrumental case'
- },
- {
- word: 'word',
- grammarForm: 'lokatiw',
- expected: 'wo word',
- description: 'Grammar test for lokatiw case'
- }
- ],
+ hsb: [
+ {
+ word: 'word',
+ grammarForm: 'instrumental',
+ expected: 'z word',
+ description: 'Grammar test for instrumental case'
+ },
+ {
+ word: 'word',
+ grammarForm: 'lokatiw',
+ expected: 'wo word',
+ description: 'Grammar test for lokatiw case'
+ }
+ ],
- dsb: [
- {
- word: 'word',
- grammarForm: 'instrumental',
- expected: 'z word',
- description: 'Grammar test for instrumental case'
- },
- {
- word: 'word',
- grammarForm: 'lokatiw',
- expected: 'wo word',
- description: 'Grammar test for lokatiw case'
- }
- ],
+ dsb: [
+ {
+ word: 'word',
+ grammarForm: 'instrumental',
+ expected: 'z word',
+ description: 'Grammar test for instrumental case'
+ },
+ {
+ word: 'word',
+ grammarForm: 'lokatiw',
+ expected: 'wo word',
+ description: 'Grammar test for lokatiw case'
+ }
+ ],
- hy: [
- {
- word: 'Մաունա',
- grammarForm: 'genitive',
- expected: 'Մաունայի',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'հետո',
- grammarForm: 'genitive',
- expected: 'հետոյի',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'գիրք',
- grammarForm: 'genitive',
- expected: 'գրքի',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'ժամանակի',
- grammarForm: 'genitive',
- expected: 'ժամանակիի',
- description: 'Grammar test for genitive case'
- }
- ],
+ hy: [
+ {
+ word: 'Մաունա',
+ grammarForm: 'genitive',
+ expected: 'Մաունայի',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'հետո',
+ grammarForm: 'genitive',
+ expected: 'հետոյի',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'գիրք',
+ grammarForm: 'genitive',
+ expected: 'գրքի',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'ժամանակի',
+ grammarForm: 'genitive',
+ expected: 'ժամանակիի',
+ description: 'Grammar test for genitive case'
+ }
+ ],
- fi: [
- {
- word: 'talo',
- grammarForm: 'genitive',
- expected: 'talon',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'linux',
- grammarForm: 'genitive',
- expected: 'linuxin',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'talo',
- grammarForm: 'elative',
- expected: 'talosta',
- description: 'Grammar test for elative case'
- },
- {
- word: 'pastöroitu',
- grammarForm: 'partitive',
- expected: 'pastöroitua',
- description: 'Grammar test for partitive case'
- },
- {
- word: 'talo',
- grammarForm: 'partitive',
- expected: 'taloa',
- description: 'Grammar test for partitive case'
- },
- {
- word: 'talo',
- grammarForm: 'illative',
- expected: 'taloon',
- description: 'Grammar test for illative case'
- },
- {
- word: 'linux',
- grammarForm: 'inessive',
- expected: 'linuxissa',
- description: 'Grammar test for inessive case'
- }
- ],
+ fi: [
+ {
+ word: 'talo',
+ grammarForm: 'genitive',
+ expected: 'talon',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'linux',
+ grammarForm: 'genitive',
+ expected: 'linuxin',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'talo',
+ grammarForm: 'elative',
+ expected: 'talosta',
+ description: 'Grammar test for elative case'
+ },
+ {
+ word: 'pastöroitu',
+ grammarForm: 'partitive',
+ expected: 'pastöroitua',
+ description: 'Grammar test for partitive case'
+ },
+ {
+ word: 'talo',
+ grammarForm: 'partitive',
+ expected: 'taloa',
+ description: 'Grammar test for partitive case'
+ },
+ {
+ word: 'talo',
+ grammarForm: 'illative',
+ expected: 'taloon',
+ description: 'Grammar test for illative case'
+ },
+ {
+ word: 'linux',
+ grammarForm: 'inessive',
+ expected: 'linuxissa',
+ description: 'Grammar test for inessive case'
+ }
+ ],
- ru: [
- {
- word: 'тесть',
- grammarForm: 'genitive',
- expected: 'тестя',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'привилегия',
- grammarForm: 'genitive',
- expected: 'привилегии',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'установка',
- grammarForm: 'genitive',
- expected: 'установки',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'похоти',
- grammarForm: 'genitive',
- expected: 'похотей',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'доводы',
- grammarForm: 'genitive',
- expected: 'доводов',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'песчаник',
- grammarForm: 'genitive',
- expected: 'песчаника',
- description: 'Grammar test for genitive case'
- }
- ],
+ ru: [
+ {
+ word: 'тесть',
+ grammarForm: 'genitive',
+ expected: 'тестя',
+ description: 'Grammar test for genitive case, тесть -> тестя'
+ },
+ {
+ word: 'привилегия',
+ grammarForm: 'genitive',
+ expected: 'привилегии',
+ description: 'Grammar test for genitive case, привилегия -> привилегии'
+ },
+ {
+ word: 'установка',
+ grammarForm: 'genitive',
+ expected: 'установки',
+ description: 'Grammar test for genitive case, установка -> установки'
+ },
+ {
+ word: 'похоти',
+ grammarForm: 'genitive',
+ expected: 'похотей',
+ description: 'Grammar test for genitive case, похоти -> похотей'
+ },
+ {
+ word: 'доводы',
+ grammarForm: 'genitive',
+ expected: 'доводов',
+ description: 'Grammar test for genitive case, доводы -> доводов'
+ },
+ {
+ word: 'песчаник',
+ grammarForm: 'genitive',
+ expected: 'песчаника',
+ description: 'Grammar test for genitive case, песчаник -> песчаника'
+ },
+ {
+ word: 'данные',
+ grammarForm: 'genitive',
+ expected: 'данных',
+ description: 'Grammar test for genitive case, данные -> данных'
+ },
+ {
+ word: 'тесть',
+ grammarForm: 'prepositional',
+ expected: 'тесте',
+ description: 'Grammar test for prepositional case, тесть -> тесте'
+ },
+ {
+ word: 'привилегия',
+ grammarForm: 'prepositional',
+ expected: 'привилегии',
+ description: 'Grammar test for prepositional case, привилегия -> привилегии'
+ },
+ {
+ word: 'установка',
+ grammarForm: 'prepositional',
+ expected: 'установке',
+ description: 'Grammar test for prepositional case, установка -> установке'
+ },
+ {
+ word: 'похоти',
+ grammarForm: 'prepositional',
+ expected: 'похотях',
+ description: 'Grammar test for prepositional case, похоти -> похотях'
+ },
+ {
+ word: 'доводы',
+ grammarForm: 'prepositional',
+ expected: 'доводах',
+ description: 'Grammar test for prepositional case, доводы -> доводах'
+ },
+ {
+ word: 'песчаник',
+ grammarForm: 'prepositional',
+ expected: 'песчанике',
+ description: 'Grammar test for prepositional case, песчаник -> песчанике'
+ },
+ {
+ word: 'данные',
+ grammarForm: 'prepositional',
+ expected: 'данных',
+ description: 'Grammar test for prepositional case, данные -> данных'
+ }
+ ],
+ hu: [
+ {
+ word: 'Wikipédiá',
+ grammarForm: 'rol',
+ expected: 'Wikipédiáról',
+ description: 'Grammar test for rol case'
+ },
+ {
+ word: 'Wikipédiá',
+ grammarForm: 'ba',
+ expected: 'Wikipédiába',
+ description: 'Grammar test for ba case'
+ },
+ {
+ word: 'Wikipédiá',
+ grammarForm: 'k',
+ expected: 'Wikipédiák',
+ description: 'Grammar test for k case'
+ }
+ ],
- hu: [
- {
- word: 'Wikipédiá',
- grammarForm: 'rol',
- expected: 'Wikipédiáról',
- description: 'Grammar test for rol case'
- },
- {
- word: 'Wikipédiá',
- grammarForm: 'ba',
- expected: 'Wikipédiába',
- description: 'Grammar test for ba case'
- },
- {
- word: 'Wikipédiá',
- grammarForm: 'k',
- expected: 'Wikipédiák',
- description: 'Grammar test for k case'
- }
- ],
+ ga: [
+ {
+ word: 'an Domhnach',
+ grammarForm: 'ainmlae',
+ expected: 'Dé Domhnaigh',
+ description: 'Grammar test for ainmlae case'
+ },
+ {
+ word: 'an Luan',
+ grammarForm: 'ainmlae',
+ expected: 'Dé Luain',
+ description: 'Grammar test for ainmlae case'
+ },
+ {
+ word: 'an Satharn',
+ grammarForm: 'ainmlae',
+ expected: 'Dé Sathairn',
+ description: 'Grammar test for ainmlae case'
+ }
+ ],
- ga: [
- {
- word: 'an Domhnach',
- grammarForm: 'ainmlae',
- expected: 'Dé Domhnaigh',
- description: 'Grammar test for ainmlae case'
- },
- {
- word: 'an Luan',
- grammarForm: 'ainmlae',
- expected: 'Dé Luain',
- description: 'Grammar test for ainmlae case'
- },
- {
- word: 'an Satharn',
- grammarForm: 'ainmlae',
- expected: 'Dé Sathairn',
- description: 'Grammar test for ainmlae case'
- }
- ],
+ uk: [
+ {
+ word: 'тесть',
+ grammarForm: 'genitive',
+ expected: 'тестя',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'Вікіпедія',
+ grammarForm: 'genitive',
+ expected: 'Вікіпедії',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'установка',
+ grammarForm: 'genitive',
+ expected: 'установки',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'похоти',
+ grammarForm: 'genitive',
+ expected: 'похотей',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'доводы',
+ grammarForm: 'genitive',
+ expected: 'доводов',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'песчаник',
+ grammarForm: 'genitive',
+ expected: 'песчаника',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'Вікіпедія',
+ grammarForm: 'accusative',
+ expected: 'Вікіпедію',
+ description: 'Grammar test for accusative case'
+ }
+ ],
- uk: [
- {
- word: 'тесть',
- grammarForm: 'genitive',
- expected: 'тестя',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'Вікіпедія',
- grammarForm: 'genitive',
- expected: 'Вікіпедії',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'установка',
- grammarForm: 'genitive',
- expected: 'установки',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'похоти',
- grammarForm: 'genitive',
- expected: 'похотей',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'доводы',
- grammarForm: 'genitive',
- expected: 'доводов',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'песчаник',
- grammarForm: 'genitive',
- expected: 'песчаника',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'Вікіпедія',
- grammarForm: 'accusative',
- expected: 'Вікіпедію',
- description: 'Grammar test for accusative case'
- }
- ],
+ sl: [
+ {
+ word: 'word',
+ grammarForm: 'orodnik',
+ expected: 'z word',
+ description: 'Grammar test for orodnik case'
+ },
+ {
+ word: 'word',
+ grammarForm: 'mestnik',
+ expected: 'o word',
+ description: 'Grammar test for mestnik case'
+ }
+ ],
- sl: [
- {
- word: 'word',
- grammarForm: 'orodnik',
- expected: 'z word',
- description: 'Grammar test for orodnik case'
- },
- {
- word: 'word',
- grammarForm: 'mestnik',
- expected: 'o word',
- description: 'Grammar test for mestnik case'
- }
- ],
+ os: [
+ {
+ word: 'бæстæ',
+ grammarForm: 'genitive',
+ expected: 'бæсты',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'бæстæ',
+ grammarForm: 'allative',
+ expected: 'бæстæм',
+ description: 'Grammar test for allative case'
+ },
+ {
+ word: 'Тигр',
+ grammarForm: 'dative',
+ expected: 'Тигрæн',
+ description: 'Grammar test for dative case'
+ },
+ {
+ word: 'цъити',
+ grammarForm: 'dative',
+ expected: 'цъитийæн',
+ description: 'Grammar test for dative case'
+ },
+ {
+ word: 'лæппу',
+ grammarForm: 'genitive',
+ expected: 'лæппуйы',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: '2011',
+ grammarForm: 'equative',
+ expected: '2011-ау',
+ description: 'Grammar test for equative case'
+ }
+ ],
- os: [
- {
- word: 'бæстæ',
- grammarForm: 'genitive',
- expected: 'бæсты',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'бæстæ',
- grammarForm: 'allative',
- expected: 'бæстæм',
- description: 'Grammar test for allative case'
- },
- {
- word: 'Тигр',
- grammarForm: 'dative',
- expected: 'Тигрæн',
- description: 'Grammar test for dative case'
- },
- {
- word: 'цъити',
- grammarForm: 'dative',
- expected: 'цъитийæн',
- description: 'Grammar test for dative case'
- },
- {
- word: 'лæппу',
- grammarForm: 'genitive',
- expected: 'лæппуйы',
- description: 'Grammar test for genitive case'
- },
- {
- word: '2011',
- grammarForm: 'equative',
- expected: '2011-ау',
- description: 'Grammar test for equative case'
- }
- ],
+ la: [
+ {
+ word: 'Translatio',
+ grammarForm: 'genitive',
+ expected: 'Translationis',
+ description: 'Grammar test for genitive case'
+ },
+ {
+ word: 'Translatio',
+ grammarForm: 'accusative',
+ expected: 'Translationem',
+ description: 'Grammar test for accusative case'
+ },
+ {
+ word: 'Translatio',
+ grammarForm: 'ablative',
+ expected: 'Translatione',
+ description: 'Grammar test for ablative case'
+ }
+ ]
+ };
- la: [
- {
- word: 'Translatio',
- grammarForm: 'genitive',
- expected: 'Translationis',
- description: 'Grammar test for genitive case'
- },
- {
- word: 'Translatio',
- grammarForm: 'accusative',
- expected: 'Translationem',
- description: 'Grammar test for accusative case'
- },
- {
- word: 'Translatio',
- grammarForm: 'ablative',
- expected: 'Translatione',
- description: 'Grammar test for ablative case'
+ $.each( grammarTests, function ( langCode, test ) {
+ if ( langCode === mw.config.get( 'wgUserLanguage' ) ) {
+ grammarTest( langCode, test );
}
- ]
-};
-
-$.each( grammarTests, function ( langCode, test ) {
- if ( langCode === mw.config.get( 'wgUserLanguage' ) ) {
- grammarTest( langCode, test );
- }
-});
+ } );
+}( mediaWiki, jQuery ) );