@@ -47,8 +47,8 @@ class LocalesHierarchyUtilsTest {
4747 void languageCodesWithMultipleScriptsInCldr () {
4848 final Set <String > expectedLanguageCodesWithMultipleScriptsInCldr =
4949 Set .of (
50- "az" , "bs" , "ff" , "hi" , "kk" , "kok" , "ks" , "kxv" , "mni" , "pa" , "sat" , "sd" , "shi" , "sr " ,
51- "su" , "uz" , "vai" , "yue" , "zh" );
50+ "az" , "bs" , "ff" , "hi" , "kk" , "kok" , "ks" , "ku" , " kxv" , "mni" , "pa" , "sat" , "sd" , "shi" ,
51+ "sr" , " su" , "uz" , "vai" , "yue" , "zh" );
5252
5353 assertEquals (
5454 expectedLanguageCodesWithMultipleScriptsInCldr .size (),
@@ -78,7 +78,7 @@ static Stream<Arguments> getDescendantLocales() {
7878 "fr" ,
7979 "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" ,
8080 "en" ,
81- "en-001,en-150,en-AE,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-CZ,en-DE,en-DG,en-DK,en-DM,en-ER,en-ES,en-FI,en-FJ,en-FK,en-FM,en-FR,en-GB,en-GD,en-GG,en-GH,en-GI,en-GM,en-GS,en-GU,en-GY,en-HK,en-HU,en-ID,en-IE,en-IL,en-IM,en-IN,en-IO,en-IT,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-MV,en-MW,en-MY,en-NA,en-NF,en-NG,en-NL,en-NO,en-NR,en-NU,en-NZ,en-PG,en-PH,en-PK,en-PL,en-PN,en-PR,en-PT,en-PW,en-RO,en-RW,en-SB,en-SC,en-SD,en-SE,en-SG,en-SH,en-SI,en-SK,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-VC,en-VG,en-VI,en-VU,en-WS,en-ZA,en-ZM,en-ZW,hi-Latn,hi-Latn-IN" ,
81+ "en-001,en-150,en-AE,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-CZ,en-DE,en-DG,en-DK,en-DM,en-EE,en- ER,en-ES,en-FI,en-FJ,en-FK,en-FM,en-FR,en-GB,en-GD,en-GE,en- GG,en-GH,en-GI,en-GM,en-GS,en-GU,en-GY,en-HK,en-HU,en-ID,en-IE,en-IL,en-IM,en-IN,en-IO,en-IT,en-JE,en-JM,en-JP,en- KE,en-KI,en-KN,en-KY,en-LC,en-LR,en-LS,en-LT,en-LV,en- MG,en-MH,en-MO,en-MP,en-MS,en-MT,en-MU,en-MV,en-MW,en-MY,en-NA,en-NF,en-NG,en-NL,en-NO,en-NR,en-NU,en-NZ,en-PG,en-PH,en-PK,en-PL,en-PN,en-PR,en-PT,en-PW,en-RO,en-RW,en-SB,en-SC,en-SD,en-SE,en-SG,en-SH,en-SI,en-SK,en-SL,en-SS,en-SX,en-SZ,en-TC,en-TK,en-TO,en-TT,en-TV,en-TZ,en-UA ,en-UG,en-UM,en-US,en-VC,en-VG,en-VI,en-VU,en-WS,en-ZA,en-ZM,en-ZW,hi-Latn,hi-Latn-IN" ,
8282 "zh-Hant" ,
8383 "zh-Hant-HK,zh-Hant-MO,zh-Hant-MY,zh-Hant-TW" )
8484 .entrySet ()
@@ -176,42 +176,45 @@ public void allRootChildLocalesAreHighestAncestorLocales() {
176176 }
177177 }
178178
179- @ Test
180- public void whenCallingIsLanguageWrittenInSeveralScripts_returnsExpected () {
181- final Set <String > uniqueLanguageCodes =
182- AvailableLocalesUtils .getCldrLocales ().stream ()
183- .map (ULocale ::getLanguage )
184- .collect (Collectors .toSet ());
185- for (String languageCode : uniqueLanguageCodes ) {
186- switch (languageCode ) {
187- case "az" :
188- case "bs" :
189- case "ff" :
190- case "hi" :
191- case "kk" :
192- case "kok" :
193- case "ks" :
194- case "kxv" :
195- case "mni" :
196- case "pa" :
197- case "sat" :
198- case "sd" :
199- case "shi" :
200- case "sr" :
201- case "su" :
202- case "uz" :
203- case "vai" :
204- case "yue" :
205- case "zh" :
206- assertTrue (LocalesHierarchyUtils .isLanguageWrittenInSeveralScripts (languageCode ));
207- break ;
208- default :
209- assertFalse (LocalesHierarchyUtils .isLanguageWrittenInSeveralScripts (languageCode ));
210- break ;
211- }
179+ @ ParameterizedTest
180+ @ MethodSource
181+ void whenCallingIsLanguageWrittenInSeveralScripts_returnsExpected (final String languageCode ) {
182+ switch (languageCode ) {
183+ case "az" :
184+ case "bs" :
185+ case "ff" :
186+ case "hi" :
187+ case "kk" :
188+ case "kok" :
189+ case "ks" :
190+ case "ku" :
191+ case "kxv" :
192+ case "mni" :
193+ case "pa" :
194+ case "sat" :
195+ case "sd" :
196+ case "shi" :
197+ case "sr" :
198+ case "su" :
199+ case "uz" :
200+ case "vai" :
201+ case "yue" :
202+ case "zh" :
203+ assertTrue (LocalesHierarchyUtils .isLanguageWrittenInSeveralScripts (languageCode ));
204+ break ;
205+ default :
206+ assertFalse (LocalesHierarchyUtils .isLanguageWrittenInSeveralScripts (languageCode ));
207+ break ;
212208 }
213209 }
214210
211+ static Stream <Arguments > whenCallingIsLanguageWrittenInSeveralScripts_returnsExpected () {
212+ return AvailableLocalesUtils .getCldrLocales ().stream ()
213+ .map (ULocale ::getLanguage )
214+ .distinct ()
215+ .map (Arguments ::of );
216+ }
217+
215218 @ ParameterizedTest
216219 @ MethodSource
217220 void emptyParentLocaleForUnsupportedCombinationsOfLanguageScriptCodes (String languageTag ) {
0 commit comments