Merge pull request #265 from amire80/unique-autonyms

Make all autonyms unique and add a test for this
This commit is contained in:
Santhosh Thottingal
2017-06-13 10:26:30 +05:30
committed by GitHub
4 changed files with 50 additions and 46 deletions

View File

@@ -316,14 +316,10 @@
[ [
"AS" "AS"
], ],
"Batak Toba" "ᯅᯖᯂ᯲ ᯖᯬᯅ"
], ],
"bbc": [ "bbc": [
"Latn", "bbc-latn"
[
"AS"
],
"Batak Toba"
], ],
"bcc": [ "bcc": [
"Arab", "Arab",
@@ -1445,11 +1441,7 @@
"italiano" "italiano"
], ],
"iu": [ "iu": [
"Cans", "ike-cans"
[
"AM"
],
"ᐃᓄᒃᑎᑐᑦ"
], ],
"ja": [ "ja": [
"Jpan", "Jpan",
@@ -1756,11 +1748,7 @@
"कॉशुर" "कॉशुर"
], ],
"ks": [ "ks": [
"Arab", "ks-arab"
[
"AS"
],
"کٲشُر"
], ],
"ksf": [ "ksf": [
"Latn", "Latn",
@@ -3239,11 +3227,7 @@
"tojikī" "tojikī"
], ],
"tg": [ "tg": [
"Cyrl", "tg-cyrl"
[
"AS"
],
"тоҷикӣ"
], ],
"th": [ "th": [
"Thai", "Thai",
@@ -3700,7 +3684,7 @@
[ [
"AF" "AF"
], ],
"ⵜⴰⵎⴰⵣⵉⵖⵜ" "ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ"
], ],
"zh": [ "zh": [
"Hans", "Hans",
@@ -3710,11 +3694,7 @@
"中文" "中文"
], ],
"zh-classical": [ "zh-classical": [
"Hant", "lzh"
[
"AS"
],
"文言"
], ],
"zh-cn": [ "zh-cn": [
"Hans", "Hans",
@@ -4076,7 +4056,7 @@
"pdt", "pdt",
"cr", "cr",
"yi", "yi",
"iu", "ike-cans",
"atj" "atj"
], ],
"CC": [ "CC": [
@@ -4356,7 +4336,7 @@
"zh", "zh",
"el", "el",
"it", "it",
"ks", "ks-arab",
"gd", "gd",
"yi", "yi",
"ml", "ml",
@@ -4483,7 +4463,7 @@
"bug", "bug",
"bjn", "bjn",
"ace", "ace",
"bbc", "bbc-latn",
"zh-hant", "zh-hant",
"zh", "zh",
"sly", "sly",
@@ -4531,7 +4511,7 @@
"hne", "hne",
"ne", "ne",
"sat", "sat",
"ks", "ks-arab",
"gom-deva", "gom-deva",
"sd", "sd",
"doi", "doi",
@@ -4984,10 +4964,10 @@
"brh", "brh",
"fa", "fa",
"bgn", "bgn",
"tg", "tg-cyrl",
"bft", "bft",
"khw", "khw",
"ks" "ks-arab"
], ],
"PL": [ "PL": [
"pl", "pl",
@@ -5242,7 +5222,7 @@
"shn" "shn"
], ],
"TJ": [ "TJ": [
"tg", "tg-cyrl",
"ru", "ru",
"fa", "fa",
"ar" "ar"

View File

@@ -51,9 +51,8 @@ languages:
bar: [Latn, [EU], Boarisch] bar: [Latn, [EU], Boarisch]
bat-smg: [sgs] bat-smg: [sgs]
bbc-latn: [Latn, [AS], Batak Toba] bbc-latn: [Latn, [AS], Batak Toba]
# FIXME - autonym in the Batak script is unknown bbc-batk: [Batk, [AS], ᯅᯖᯂ᯲ ᯖᯬᯅ]
bbc-batk: [Batk, [AS], Batak Toba] bbc: [bbc-latn]
bbc: [Latn, [AS], Batak Toba]
bcc: [Arab, [AS, ME], جهلسری بلوچی] bcc: [Arab, [AS, ME], جهلسری بلوچی]
bcl: [Latn, [AS], Bikol Central] bcl: [Latn, [AS], Bikol Central]
be-tarask: [Cyrl, [EU], беларуская (тарашкевіца)] be-tarask: [Cyrl, [EU], беларуская (тарашкевіца)]
@@ -228,8 +227,7 @@ languages:
io: [Latn, [WW], Ido] io: [Latn, [WW], Ido]
is: [Latn, [EU], íslenska] is: [Latn, [EU], íslenska]
it: [Latn, [EU], italiano] it: [Latn, [EU], italiano]
# For variants ike-* is used iu: [ike-cans]
iu: [Cans, [AM], ᐃᓄᒃᑎᑐᑦ]
ja: [Jpan, [AS], 日本語] ja: [Jpan, [AS], 日本語]
jam: [Latn, [AM], Patois] jam: [Latn, [AM], Patois]
jbo: [Latn, [WW], lojban] jbo: [Latn, [WW], lojban]
@@ -279,7 +277,7 @@ languages:
krl: [Latn, [EU], Karjala] krl: [Latn, [EU], Karjala]
ks-arab: [Arab, [AS], کٲشُر] ks-arab: [Arab, [AS], کٲشُر]
ks-deva: [Deva, [AS], कॉशुर] ks-deva: [Deva, [AS], कॉशुर]
ks: [Arab, [AS], کٲشُر] ks: [ks-arab]
ksf: [Latn, [AF], Bafia] ksf: [Latn, [AF], Bafia]
ksh: [Latn, [EU], Ripoarisch] ksh: [Latn, [EU], Ripoarisch]
# CLDR uses ku-latn and ku-arab. Latin is more common and is used in Wikipedia. # CLDR uses ku-latn and ku-arab. Latin is more common and is used in Wikipedia.
@@ -502,7 +500,7 @@ languages:
tet: [Latn, [AS, PA], tetun] tet: [Latn, [AS, PA], tetun]
tg-cyrl: [Cyrl, [AS], тоҷикӣ] tg-cyrl: [Cyrl, [AS], тоҷикӣ]
tg-latn: [Latn, [AS], tojikī] tg-latn: [Latn, [AS], tojikī]
tg: [Cyrl, [AS], тоҷикӣ] tg: [tg-cyrl]
th: [Thai, [AS], ไทย] th: [Thai, [AS], ไทย]
ti: [Ethi, [AF], ትግርኛ] ti: [Ethi, [AF], ትግርኛ]
tig: [Ethi, [AF], ትግረ] tig: [Ethi, [AF], ትግረ]
@@ -570,10 +568,10 @@ languages:
yue: [Hant, [AS], 粵語] yue: [Hant, [AS], 粵語]
za: [Latn, [AS], Vahcuengh] za: [Latn, [AS], Vahcuengh]
zea: [Latn, [EU], Zeêuws] zea: [Latn, [EU], Zeêuws]
zgh: [Tfng, [AF], ⵜⴰⵎⴰⵣⵉⵖⵜ] zgh: [Tfng, [AF], ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ]
# world? (may apply to many varieties of Chinese) # world? (may apply to many varieties of Chinese)
zh: [Hans, [AS], 中文] zh: [Hans, [AS], 中文]
zh-classical: [Hant, [AS], 文言] zh-classical: [lzh]
zh-cn: [Hans, [AS], 中文(中国大陆)] zh-cn: [Hans, [AS], 中文(中国大陆)]
zh-hans: [Hans, [AS], 中文(简体)] zh-hans: [Hans, [AS], 中文(简体)]
zh-hant: [Hant, [AS], 中文(繁體)] zh-hant: [Hant, [AS], 中文(繁體)]

File diff suppressed because one or more lines are too long

View File

@@ -20,7 +20,7 @@
module( 'jquery.uls' ); module( 'jquery.uls' );
var orphanScripts, badRedirects, doubleRedirects, languagesWithoutAutonym; var orphanScripts, badRedirects, doubleRedirects, doubleAutonyms, languagesWithoutAutonym;
/* /*
* Runs over all script codes mentioned in langdb and checks whether * Runs over all script codes mentioned in langdb and checks whether
@@ -59,6 +59,31 @@
return result; return result;
}; };
/*
* Runs over all languages and checks that all autonyms are unique.
*/
doubleAutonyms = function () {
var language, autonym,
autonyms = [],
duplicateAutonyms = [];
for ( language in $.uls.data.languages ) {
if ( $.uls.data.isRedirect( language ) ) {
continue;
}
autonym = $.uls.data.getAutonym( language );
if ( $.inArray( autonym, autonyms ) > -1 ) {
duplicateAutonyms.push( language );
}
autonyms.push( autonym );
}
return duplicateAutonyms;
};
/* /*
* Runs over all languages and checks that all redirects point to a language. * Runs over all languages and checks that all redirects point to a language.
* There's no reason to have double redirects. * There's no reason to have double redirects.
@@ -99,7 +124,7 @@
assert.ok( $.fn.uls, '$.fn.uls is defined' ); assert.ok( $.fn.uls, '$.fn.uls is defined' );
} ); } );
test( '-- $.uls.data testing', 30, function ( assert ) { test( '-- $.uls.data testing', 31, function ( assert ) {
var autonyms, var autonyms,
languagesToGroup, groupedLanguages; languagesToGroup, groupedLanguages;
@@ -126,6 +151,7 @@
assert.deepEqual( badRedirects(), [], 'All redirects have valid targets.' ); assert.deepEqual( badRedirects(), [], 'All redirects have valid targets.' );
assert.deepEqual( doubleRedirects(), [], 'There are no double redirects.' ); assert.deepEqual( doubleRedirects(), [], 'There are no double redirects.' );
assert.deepEqual( languagesWithoutAutonym(), [], 'All languages have autonyms.' ); assert.deepEqual( languagesWithoutAutonym(), [], 'All languages have autonyms.' );
assert.deepEqual( doubleAutonyms(), [], 'All languages have distinct autonyms.' );
assert.strictEqual( assert.strictEqual(
$.uls.data.getGroupOfScript( 'Beng' ), $.uls.data.getGroupOfScript( 'Beng' ),