...

Text file src/golang.org/x/text/language/testdata/CLDRLocaleMatcherTest.txt

Documentation: golang.org/x/text/language/testdata

     1# TODO: this file has not yet been included in the main CLDR release.
     2# The intent is to verify this file against the Go implementation and then
     3# correct the cases and add merge in other interesting test cases.
     4# See TestCLDRCompliance in match_test.go, as well as the list of exceptions
     5# defined in the map skip below it, for the work in progress.
     6
     7# Data-driven test for the XLocaleMatcher.
     8# Format
     9# • Everything after "#" is a comment
    10# • Arguments are separated by ";". They are:
    11
    12# supported ; desired ; expected
    13
    14# • The supported may have the threshold distance reset as a first item, eg 50, en, fr
    15# A line starting with @debug will reach a statement in the test code where you can put a breakpoint for debugging
    16# The test code also supports reformatting this file, by setting the REFORMAT flag.
    17
    18##################################################
    19# testParentLocales
    20
    21# es-419, es-AR, and es-MX are in a cluster; es is in a different one
    22
    23es-419, es-ES ; 	es-AR ; 	es-419
    24es-ES, es-419 ; 	es-AR ; 	es-419
    25
    26es-419, es ; 	es-AR ; 	es-419
    27es, es-419 ; 	es-AR ; 	es-419
    28
    29es-MX, es ; 	es-AR ; 	es-MX
    30es, es-MX ; 	es-AR ; 	es-MX
    31
    32# en-GB, en-AU, and en-NZ are in a cluster; en in a different one
    33
    34en-GB, en-US ; 	en-AU ; 	en-GB
    35en-US, en-GB ; 	en-AU ; 	en-GB
    36
    37en-GB, en ; 	en-AU ; 	en-GB
    38en, en-GB ; 	en-AU ; 	en-GB
    39
    40en-NZ, en-US ; 	en-AU ; 	en-NZ
    41en-US, en-NZ ; 	en-AU ; 	en-NZ
    42
    43en-NZ, en ; 	en-AU ; 	en-NZ
    44en, en-NZ ; 	en-AU ; 	en-NZ
    45
    46# pt-AU and pt-PT in one cluster; pt-BR in another
    47
    48pt-PT, pt-BR ; 	pt-AO ; 	pt-PT
    49pt-BR, pt-PT ; 	pt-AO ; 	pt-PT
    50
    51pt-PT, pt ; 	pt-AO ; 	pt-PT
    52pt, pt-PT ; 	pt-AO ; 	pt-PT
    53
    54zh-MO, zh-TW ; 	zh-HK ; 	zh-MO
    55zh-TW, zh-MO ; 	zh-HK ; 	zh-MO
    56
    57zh-MO, zh-TW ; 	zh-HK ; 	zh-MO
    58zh-TW, zh-MO ; 	zh-HK ; 	zh-MO
    59
    60zh-MO, zh-CN ; 	zh-HK ; 	zh-MO
    61zh-CN, zh-MO ; 	zh-HK ; 	zh-MO
    62
    63zh-MO, zh ; 	zh-HK ; 	zh-MO
    64zh, zh-MO ; 	zh-HK ; 	zh-MO
    65
    66##################################################
    67# testChinese
    68
    69zh-CN, zh-TW, iw ; 	zh-Hant-TW ; 	zh-TW
    70zh-CN, zh-TW, iw ; 	zh-Hant ; 	zh-TW
    71zh-CN, zh-TW, iw ; 	zh-TW ; 	zh-TW
    72zh-CN, zh-TW, iw ; 	zh-Hans-CN ; 	zh-CN
    73zh-CN, zh-TW, iw ; 	zh-CN ; 	zh-CN
    74zh-CN, zh-TW, iw ; 	zh ; 	zh-CN
    75
    76##################################################
    77# testenGB
    78
    79fr, en, en-GB, es-419, es-MX, es ; 	en-NZ ; 	en-GB
    80fr, en, en-GB, es-419, es-MX, es ; 	es-ES ; 	es
    81fr, en, en-GB, es-419, es-MX, es ; 	es-AR ; 	es-419
    82fr, en, en-GB, es-419, es-MX, es ; 	es-MX ; 	es-MX
    83
    84##################################################
    85# testFallbacks
    86
    8791, en, hi ; 	sa ; 	hi
    88
    89##################################################
    90# testBasics
    91
    92fr, en-GB, en ; 	en-GB ; 	en-GB
    93fr, en-GB, en ; 	en ; 	en
    94fr, en-GB, en ; 	fr ; 	fr
    95fr, en-GB, en ; 	ja ; 	fr	# return first if no match
    96
    97##################################################
    98# testFallback
    99
   100# check that script fallbacks are handled right
   101
   102zh-CN, zh-TW, iw ; 	zh-Hant ; 	zh-TW
   103zh-CN, zh-TW, iw ; 	zh ; 	zh-CN
   104zh-CN, zh-TW, iw ; 	zh-Hans-CN ; 	zh-CN
   105zh-CN, zh-TW, iw ; 	zh-Hant-HK ; 	zh-TW
   106zh-CN, zh-TW, iw ; 	he-IT ; 	iw
   107
   108##################################################
   109# testSpecials
   110
   111# check that nearby languages are handled
   112
   113en, fil, ro, nn ; 	tl ; 	fil
   114en, fil, ro, nn ; 	mo ; 	ro
   115en, fil, ro, nn ; 	nb ; 	nn
   116
   117# make sure default works
   118
   119en, fil, ro, nn ; 	ja ; 	en
   120
   121##################################################
   122# testRegionalSpecials
   123
   124# verify that en-AU is closer to en-GB than to en (which is en-US)
   125
   126en, en-GB, es, es-419 ; 	es-MX ; 	es-419
   127en, en-GB, es, es-419 ; 	en-AU ; 	en-GB
   128en, en-GB, es, es-419 ; 	es-ES ; 	es
   129
   130##################################################
   131# testHK
   132
   133# HK and MO are closer to each other for Hant than to TW
   134
   135zh, zh-TW, zh-MO ; 	zh-HK ; 	zh-MO
   136zh, zh-TW, zh-HK ; 	zh-MO ; 	zh-HK
   137
   138##################################################
   139# testMatch-exact
   140
   141# see localeDistance.txt
   142
   143##################################################
   144# testMatch-none
   145
   146# see localeDistance.txt
   147
   148##################################################
   149# testMatch-matchOnMazimized
   150
   151zh, zh-Hant ; 	und-TW ; 	zh-Hant	# und-TW should be closer to zh-Hant than to zh
   152en-Hant-TW, und-TW ; 	zh-Hant ; 	und-TW	# zh-Hant should be closer to und-TW than to en-Hant-TW
   153en-Hant-TW, und-TW ; 	zh ; 	und-TW	# zh should be closer to und-TW than to en-Hant-TW
   154
   155##################################################
   156# testMatchGrandfatheredCode
   157
   158fr, i-klingon, en-Latn-US ; 	en-GB-oed ; 	en-Latn-US
   159
   160##################################################
   161# testGetBestMatchForList-exactMatch
   162fr, en-GB, ja, es-ES, es-MX ; 	ja, de ; 	ja
   163
   164##################################################
   165# testGetBestMatchForList-simpleVariantMatch
   166fr, en-GB, ja, es-ES, es-MX ; 	de, en-US ; 	en-GB	# Intentionally avoiding a perfect-match or two candidates for variant matches.
   167
   168# Fallback.
   169
   170fr, en-GB, ja, es-ES, es-MX ; 	de, zh ; 	fr
   171
   172##################################################
   173# testGetBestMatchForList-matchOnMaximized
   174# Check that if the preference is maximized already, it works as well.
   175
   176en, ja ; 	ja-Jpan-JP, en-AU ; 	ja	# Match for ja-Jpan-JP (maximized already)
   177
   178# ja-JP matches ja on likely subtags, and it's listed first, thus it wins over the second preference en-GB.
   179
   180en, ja ; 	ja-JP, en-US ; 	ja	# Match for ja-Jpan-JP (maximized already)
   181
   182# Check that if the preference is maximized already, it works as well.
   183
   184en, ja ; 	ja-Jpan-JP, en-US ; 	ja	# Match for ja-Jpan-JP (maximized already)
   185
   186##################################################
   187# testGetBestMatchForList-noMatchOnMaximized
   188# Regression test for http://b/5714572 .
   189# de maximizes to de-DE. Pick the exact match for the secondary language instead.
   190en, de, fr, ja ; 	de-CH, fr ; 	de
   191
   192##################################################
   193# testBestMatchForTraditionalChinese
   194
   195# Scenario: An application that only supports Simplified Chinese (and some other languages),
   196# but does not support Traditional Chinese. zh-Hans-CN could be replaced with zh-CN, zh, or
   197# zh-Hans, it wouldn't make much of a difference.
   198
   199# The script distance (simplified vs. traditional Han) is considered small enough
   200# to be an acceptable match. The regional difference is considered almost insignificant.
   201
   202fr, zh-Hans-CN, en-US ; 	zh-TW ; 	zh-Hans-CN
   203fr, zh-Hans-CN, en-US ; 	zh-Hant ; 	zh-Hans-CN
   204
   205# For geo-political reasons, you might want to avoid a zh-Hant -> zh-Hans match.
   206# In this case, if zh-TW, zh-HK or a tag starting with zh-Hant is requested, you can
   207# change your call to getBestMatch to include a 2nd language preference.
   208# "en" is a better match since its distance to "en-US" is closer than the distance
   209# from "zh-TW" to "zh-CN" (script distance).
   210
   211fr, zh-Hans-CN, en-US ; 	zh-TW, en ; 	en-US
   212fr, zh-Hans-CN, en-US ; 	zh-Hant-CN, en, en ; 	en-US
   213fr, zh-Hans-CN, en-US ; 	zh-Hans, en ; 	zh-Hans-CN
   214
   215##################################################
   216# testUndefined
   217# When the undefined language doesn't match anything in the list,
   218# getBestMatch returns the default, as usual.
   219
   220it, fr ; 	und ; 	it
   221
   222# When it *does* occur in the list, bestMatch returns it, as expected.
   223it, und ; 	und ; 	und
   224
   225# The unusual part: max("und") = "en-Latn-US", and since matching is based on maximized
   226# tags, the undefined language would normally match English. But that would produce the
   227# counterintuitive results that getBestMatch("und", XLocaleMatcher("it,en")) would be "en", and
   228# getBestMatch("en", XLocaleMatcher("it,und")) would be "und".
   229
   230# To avoid that, we change the matcher's definitions of max
   231# so that max("und")="und". That produces the following, more desirable
   232# results:
   233
   234it, en ; 	und ; 	it
   235it, und ; 	en ; 	it
   236
   237##################################################
   238# testGetBestMatch-regionDistance
   239
   240es-AR, es ; 	es-MX ; 	es-AR
   241fr, en, en-GB ; 	en-CA ; 	en-GB
   242de-AT, de-DE, de-CH ; 	de ; 	de-DE
   243
   244##################################################
   245# testAsymmetry
   246
   247mul, nl ; 	af ; 	nl	# af => nl
   248mul, af ; 	nl ; 	mul	# but nl !=> af
   249
   250##################################################
   251# testGetBestMatchForList-matchOnMaximized2
   252
   253# ja-JP matches ja on likely subtags, and it's listed first, thus it wins over the second preference en-GB.
   254
   255fr, en-GB, ja, es-ES, es-MX ; 	ja-JP, en-GB ; 	ja	# Match for ja-JP, with likely region subtag
   256
   257# Check that if the preference is maximized already, it works as well.
   258
   259fr, en-GB, ja, es-ES, es-MX ; 	ja-Jpan-JP, en-GB ; 	ja	# Match for ja-Jpan-JP (maximized already)
   260
   261##################################################
   262# testGetBestMatchForList-closeEnoughMatchOnMaximized
   263
   264en-GB, en, de, fr, ja ; 	de-CH, fr ; 	de
   265en-GB, en, de, fr, ja ; 	en-US, ar, nl, de, ja ; 	en
   266
   267##################################################
   268# testGetBestMatchForPortuguese
   269
   270# pt might be supported and not pt-PT
   271
   272# European user who prefers Spanish over Brazillian Portuguese as a fallback.
   273
   274pt-PT, pt-BR, es, es-419 ; 	pt-PT, es, pt ; 	pt-PT
   275pt-PT, pt, es, es-419 ; 	pt-PT, es, pt ; 	pt-PT	# pt implicit
   276
   277# Brazillian user who prefers South American Spanish over European Portuguese as a fallback.
   278# The asymmetry between this case and above is because it's "pt-PT" that's missing between the
   279# matchers as "pt-BR" is a much more common language.
   280
   281pt-PT, pt-BR, es, es-419 ; 	pt, es-419, pt-PT ; 	pt-BR
   282pt-PT, pt-BR, es, es-419 ; 	pt-PT, es, pt ; 	pt-PT
   283pt-PT, pt, es, es-419 ; 	pt-PT, es, pt ; 	pt-PT
   284pt-PT, pt, es, es-419 ; 	pt, es-419, pt-PT ; 	pt
   285
   286pt-BR, es, es-419 ; 	pt, es-419, pt-PT ; 	pt-BR
   287
   288# Code that adds the user's country can get "pt-US" for a user's language.
   289# That should fall back to "pt-BR".
   290
   291pt-PT, pt-BR, es, es-419 ; 	pt-US, pt-PT ; 	pt-BR
   292pt-PT, pt, es, es-419 ; 	pt-US, pt-PT, pt ; 	pt	# pt-BR implicit
   293
   294##################################################
   295# testVariantWithScriptMatch 1 and 2
   296
   297fr, en, sv ; 	en-GB ; 	en
   298fr, en, sv ; 	en-GB ; 	en
   299en, sv ; 	en-GB, sv ; 	en
   300
   301##################################################
   302# testLongLists
   303
   304en, sv ; 	sv ; 	sv
   305af, am, ar, az, be, bg, bn, bs, ca, cs, cy, cy, da, de, el, en, en-GB, es, es-419, et, eu, fa, fi, fil, fr, ga, gl, gu, hi, hr, hu, hy, id, is, it, iw, ja, ka, kk, km, kn, ko, ky, lo, lt, lv, mk, ml, mn, mr, ms, my, ne, nl, no, pa, pl, pt, pt-PT, ro, ru, si, sk, sl, sq, sr, sr-Latn, sv, sw, ta, te, th, tr, uk, ur, uz, vi, zh-CN, zh-TW, zu ; 	sv ; 	sv
   306af, af-NA, af-ZA, agq, agq-CM, ak, ak-GH, am, am-ET, ar, ar-001, ar-AE, ar-BH, ar-DJ, ar-DZ, ar-EG, ar-EH, ar-ER, ar-IL, ar-IQ, ar-JO, ar-KM, ar-KW, ar-LB, ar-LY, ar-MA, ar-MR, ar-OM, ar-PS, ar-QA, ar-SA, ar-SD, ar-SO, ar-SS, ar-SY, ar-TD, ar-TN, ar-YE, as, as-IN, asa, asa-TZ, ast, ast-ES, az, az-Cyrl, az-Cyrl-AZ, az-Latn, az-Latn-AZ, bas, bas-CM, be, be-BY, bem, bem-ZM, bez, bez-TZ, bg, bg-BG, bm, bm-ML, bn, bn-BD, bn-IN, bo, bo-CN, bo-IN, br, br-FR, brx, brx-IN, bs, bs-Cyrl, bs-Cyrl-BA, bs-Latn, bs-Latn-BA, ca, ca-AD, ca-ES, ca-ES-VALENCIA, ca-FR, ca-IT, ce, ce-RU, cgg, cgg-UG, chr, chr-US, ckb, ckb-IQ, ckb-IR, cs, cs-CZ, cu, cu-RU, cy, cy-GB, da, da-DK, da-GL, dav, dav-KE, de, de-AT, de-BE, de-CH, de-DE, de-LI, de-LU, dje, dje-NE, dsb, dsb-DE, dua, dua-CM, dyo, dyo-SN, dz, dz-BT, ebu, ebu-KE, ee, ee-GH, ee-TG, el, el-CY, el-GR, en, en-001, en-150, en-AG, en-AI, en-AS, en-AT, en-AU, en-BB, en-BE, en-BI, en-BM, en-BS, en-BW, en-BZ, en-CA, en-CC, en-CH, en-CK, en-CM, en-CX, en-CY, en-DE, en-DG, en-DK, en-DM, en-ER, en-FI, en-FJ, en-FK, en-FM, en-GB, en-GD, en-GG, en-GH, en-GI, en-GM, en-GU, en-GY, en-HK, en-IE, en-IL, en-IM, en-IN, en-IO, en-JE, en-JM, en-KE, en-KI, en-KN, en-KY, en-LC, en-LR, en-LS, en-MG, en-MH, en-MO, en-MP, en-MS, en-MT, en-MU, en-MW, en-MY, en-NA, en-NF, en-NG, en-NL, en-NR, en-NU, en-NZ, en-PG, en-PH, en-PK, en-PN, en-PR, en-PW, en-RW, en-SB, en-SC, en-SD, en-SE, en-SG, en-SH, en-SI, en-SL, en-SS, en-SX, en-SZ, en-TC, en-TK, en-TO, en-TT, en-TV, en-TZ, en-UG, en-UM, en-US, en-US-POSIX, en-VC, en-VG, en-VI, en-VU, en-WS, en-ZA, en-ZM, en-ZW, eo, eo-001, es, es-419, es-AR, es-BO, es-CL, es-CO, es-CR, es-CU, es-DO, es-EA, es-EC, es-ES, es-GQ, es-GT, es-HN, es-IC, es-MX, es-NI, es-PA, es-PE, es-PH, es-PR, es-PY, es-SV, es-US, es-UY, es-VE, et, et-EE, eu, eu-ES, ewo, ewo-CM, fa, fa-AF, fa-IR, ff, ff-CM, ff-GN, ff-MR, ff-SN, fi, fi-FI, fil, fil-PH, fo, fo-DK, fo-FO, fr, fr-BE, fr-BF, fr-BI, fr-BJ, fr-BL, fr-CA, fr-CD, fr-CF, fr-CG, fr-CH, fr-CI, fr-CM, fr-DJ, fr-DZ, fr-FR, fr-GA, fr-GF, fr-GN, fr-GP, fr-GQ, fr-HT, fr-KM, fr-LU, fr-MA, fr-MC, fr-MF, fr-MG, fr-ML, fr-MQ, fr-MR, fr-MU, fr-NC, fr-NE, fr-PF, fr-PM, fr-RE, fr-RW, fr-SC, fr-SN, fr-SY, fr-TD, fr-TG, fr-TN, fr-VU, fr-WF, fr-YT, fur, fur-IT, fy, fy-NL, ga, ga-IE, gd, gd-GB, gl, gl-ES, gsw, gsw-CH, gsw-FR, gsw-LI, gu, gu-IN, guz, guz-KE, gv, gv-IM, ha, ha-GH, ha-NE, ha-NG, haw, haw-US, he, he-IL, hi, hi-IN, hr, hr-BA, hr-HR, hsb, hsb-DE, hu, hu-HU, hy, hy-AM, id, id-ID, ig, ig-NG, ii, ii-CN, is, is-IS, it, it-CH, it-IT, it-SM, ja, ja-JP, jgo, jgo-CM, jmc, jmc-TZ, ka, ka-GE, kab, kab-DZ, kam, kam-KE, kde, kde-TZ, kea, kea-CV, khq, khq-ML, ki, ki-KE, kk, kk-KZ, kkj, kkj-CM, kl, kl-GL, kln, kln-KE, km, km-KH, kn, kn-IN, ko, ko-KP, ko-KR, kok, kok-IN, ks, ks-IN, ksb, ksb-TZ, ksf, ksf-CM, ksh, ksh-DE, kw, kw-GB, ky, ky-KG, lag, lag-TZ, lb, lb-LU, lg, lg-UG, lkt, lkt-US, ln, ln-AO, ln-CD, ln-CF, ln-CG, lo, lo-LA, lrc, lrc-IQ, lrc-IR, lt, lt-LT, lu, lu-CD, luo, luo-KE, luy, luy-KE, lv, lv-LV, mas, mas-KE, mas-TZ, mer, mer-KE, mfe, mfe-MU, mg, mg-MG, mgh, mgh-MZ, mgo, mgo-CM, mk, mk-MK, ml, ml-IN, mn, mn-MN, mr, mr-IN, ms, ms-BN, ms-MY, ms-SG, mt, mt-MT, mua, mua-CM, my, my-MM, mzn, mzn-IR, naq, naq-NA, nb, nb-NO, nb-SJ, nd, nd-ZW, ne, ne-IN, ne-NP, nl, nl-AW, nl-BE, nl-BQ, nl-CW, nl-NL, nl-SR, nl-SX, nmg, nmg-CM, nn, nn-NO, nnh, nnh-CM, nus, nus-SS, nyn, nyn-UG, om, om-ET, om-KE, or, or-IN, os, os-GE, os-RU, pa, pa-Arab, pa-Arab-PK, pa-Guru, pa-Guru-IN, pl, pl-PL, prg, prg-001, ps, ps-AF, pt, pt-AO, pt-BR, pt-CV, pt-GW, pt-MO, pt-MZ, pt-PT, pt-ST, pt-TL, qu, qu-BO, qu-EC, qu-PE, rm, rm-CH, rn, rn-BI, ro, ro-MD, ro-RO, rof, rof-TZ, root, ru, ru-BY, ru-KG, ru-KZ, ru-MD, ru-RU, ru-UA, rw, rw-RW, rwk, rwk-TZ, sah, sah-RU, saq, saq-KE, sbp, sbp-TZ, se, se-FI, se-NO, se-SE, seh, seh-MZ, ses, ses-ML, sg, sg-CF, shi, shi-Latn, shi-Latn-MA, shi-Tfng, shi-Tfng-MA, si, si-LK, sk, sk-SK, sl, sl-SI, smn, smn-FI, sn, sn-ZW, so, so-DJ, so-ET, so-KE, so-SO, sq, sq-AL, sq-MK, sq-XK, sr, sr-Cyrl, sr-Cyrl-BA, sr-Cyrl-ME, sr-Cyrl-RS, sr-Cyrl-XK, sr-Latn, sr-Latn-BA, sr-Latn-ME, sr-Latn-RS, sr-Latn-XK, sv, sv-AX, sv-FI, sv-SE, sw, sw-CD, sw-KE, sw-TZ, sw-UG, ta, ta-IN, ta-LK, ta-MY, ta-SG, te, te-IN, teo, teo-KE, teo-UG, th, th-TH, ti, ti-ER, ti-ET, tk, tk-TM, to, to-TO, tr, tr-CY, tr-TR, twq, twq-NE, tzm, tzm-MA, ug, ug-CN, uk, uk-UA, ur, ur-IN, ur-PK, uz, uz-Arab, uz-Arab-AF, uz-Cyrl, uz-Cyrl-UZ, uz-Latn, uz-Latn-UZ, vai, vai-Latn, vai-Latn-LR, vai-Vaii, vai-Vaii-LR, vi, vi-VN, vo, vo-001, vun, vun-TZ, wae, wae-CH, xog, xog-UG, yav, yav-CM, yi, yi-001, yo, yo-BJ, yo-NG, zgh, zgh-MA, zh, zh-Hans, zh-Hans-CN, zh-Hans-HK, zh-Hans-MO, zh-Hans-SG, zh-Hant, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW, zu, zu-ZA ; 	sv ; 	sv
   307
   308##################################################
   309# test8288
   310
   311it, en ; 	und ; 	it
   312it, en ; 	und, en ; 	en
   313
   314# examples from
   315# https://unicode.org/repos/cldr/tags/latest/common/bcp47/
   316# https://unicode.org/repos/cldr/tags/latest/common/validity/variant.xml
   317
   318##################################################
   319# testUnHack
   320
   321en-NZ, en-IT ; 	en-US ; 	en-NZ
   322
   323##################################################
   324# testEmptySupported => null
   325 ; 	en ; 	null
   326
   327##################################################
   328# testVariantsAndExtensions
   329##################################################
   330# tests the .combine() method
   331
   332und, fr ; 	fr-BE-fonipa ; 	fr ; 	fr-BE-fonipa
   333und, fr-CA ; 	fr-BE-fonipa ; 	fr-CA ; 	fr-BE-fonipa
   334und, fr-fonupa ; 	fr-BE-fonipa ; 	fr-fonupa ; 	fr-BE-fonipa
   335und, no ; 	nn-BE-fonipa ; 	no ; 	no-BE-fonipa
   336und, en-GB-u-sd-gbsct ; 	en-fonipa-u-nu-Arab-ca-buddhist-t-m0-iso-i0-pinyin ; 	en-GB-u-sd-gbsct ; 	en-GB-fonipa-u-nu-Arab-ca-buddhist-t-m0-iso-i0-pinyin
   337
   338en-PSCRACK, de-PSCRACK, fr-PSCRACK, pt-PT-PSCRACK ; 	fr-PSCRACK ; 	fr-PSCRACK
   339en-PSCRACK, de-PSCRACK, fr-PSCRACK, pt-PT-PSCRACK ; 	fr ; 	fr-PSCRACK
   340en-PSCRACK, de-PSCRACK, fr-PSCRACK, pt-PT-PSCRACK ; 	de-CH ; 	de-PSCRACK
   341
   342##################################################
   343# testClusters
   344# we favor es-419 over others in cluster. Clusters: es- {ES, MA, EA} {419, AR, MX}
   345
   346und, es, es-MA, es-MX, es-419 ; 	es-AR ; 	es-419
   347und, es-MA, es, es-419, es-MX ; 	es-AR ; 	es-419
   348und, es, es-MA, es-MX, es-419 ; 	es-EA ; 	es
   349und, es-MA, es, es-419, es-MX ; 	es-EA ; 	es
   350
   351# of course, fall back to within cluster
   352
   353und, es, es-MA, es-MX ; 	es-AR ; 	es-MX
   354und, es-MA, es, es-MX ; 	es-AR ; 	es-MX
   355und, es-MA, es-MX, es-419 ; 	es-EA ; 	es-MA
   356und, es-MA, es-419, es-MX ; 	es-EA ; 	es-MA
   357
   358# we favor es-GB over others in cluster. Clusters: en- {US, GU, VI} {GB, IN, ZA}
   359
   360und, en, en-GU, en-IN, en-GB ; 	en-ZA ; 	en-GB
   361und, en-GU, en, en-GB, en-IN ; 	en-ZA ; 	en-GB
   362und, en, en-GU, en-IN, en-GB ; 	en-VI ; 	en
   363und, en-GU, en, en-GB, en-IN ; 	en-VI ; 	en
   364
   365# of course, fall back to within cluster
   366
   367und, en, en-GU, en-IN ; 	en-ZA ; 	en-IN
   368und, en-GU, en, en-IN ; 	en-ZA ; 	en-IN
   369und, en-GU, en-IN, en-GB ; 	en-VI ; 	en-GU
   370und, en-GU, en-GB, en-IN ; 	en-VI ; 	en-GU
   371
   372##################################################
   373# testThreshold
   374@Threshold=60
   375
   37650, und, fr-CA-fonupa ; 	fr-BE-fonipa ; 	fr-CA-fonupa ; 	fr-BE-fonipa
   37750, und, fr-Cyrl-CA-fonupa ; 	fr-BE-fonipa ; 	fr-Cyrl-CA-fonupa ; 	fr-Cyrl-BE-fonipa
   378
   379@Threshold=-1 # restore
   380
   381##################################################
   382# testScriptFirst
   383@DistanceOption=SCRIPT_FIRST
   384@debug
   385
   386ru, fr ; zh, pl ; fr
   387ru, fr ; zh-Cyrl, pl ; ru
   388hr, en-Cyrl; sr ; en-Cyrl
   389da, ru, hr; sr ; ru

View as plain text