From 399b0fe1cb61ac84c31002498d9207d39f312ba5 Mon Sep 17 00:00:00 2001 From: "codebelt-aicia[bot]" Date: Fri, 20 Feb 2026 19:32:39 +0000 Subject: [PATCH 1/8] V10.0.3/service update --- .../PackageReleaseNotes.txt | 6 + CHANGELOG.md | 172 +++++++++--------- Directory.Packages.props | 30 +-- 3 files changed, 109 insertions(+), 99 deletions(-) diff --git a/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt b/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt index 0d9be4a..74fd759 100644 --- a/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt +++ b/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt @@ -1,3 +1,9 @@ +Version: 10.0.3 +Availability: .NET 10, .NET 9 and .NET Standard 2.0 + +# ALM +- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) + Version: 10.0.2 Availability: .NET 10, .NET 9 and .NET Standard 2.0   diff --git a/CHANGELOG.md b/CHANGELOG.md index 09cfd67..a5690ef 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,84 +1,88 @@ -# Changelog - -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - -For more details, please refer to `PackageReleaseNotes.txt` on a per assembly basis in the `.nuget` folder. - -> [!NOTE] -> Changelog entries prior to version 9.0.1 was migrated from previous versions of Cuemon.Extensions.Globalization. - -## [10.0.2] - 2026-02-15 - -This is a service update that focuses on package dependencies. - -## [10.0.1] - 2026-01-22 - -This is a service update that focuses on package dependencies. - -## [10.0.0] - 2025-11-13 - -This is a major release that focuses on adapting the latest `.NET 10` release (LTS) in exchange for current `.NET 8` (LTS). - -> To ensure access to current features, improvements, and security updates, and to keep the codebase clean and easy to maintain, we target only the latest long-term (LTS), short-term (STS) and (where applicable) cross-platform .NET versions. - -## [9.0.8] - 2025-10-20 - -This is a service update that focuses on package dependencies. - -## [9.0.7] - 2025-09-15 - -This is a service update that focuses on package dependencies. - -## [9.0.6] - 2025-08-19 - -This is a service update that focuses on package dependencies. - -## [9.0.5] - 2025-07-11 - -This is a service update that focuses on package dependencies. - -## [9.0.4] - 2025-06-15 - -This is a service update that focuses on package dependencies. - -## [9.0.3] - 2025-05-25 - -This is a service update that focuses on package dependencies. - -## [9.0.2] - 2025-04-16 - -This is a service update that focuses on package dependencies. - -## [9.0.1] - 2025-01-29 - -This is a service update that primarily focuses on package dependencies and minor improvements. - -## [8.4.0] - 2024-09-28 - -### Changed - -- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Codebelt.Extensions.YamlDotNet assembly instead of YAML support from Cuemon.Extensions.YamlDotNet assembly - -## [8.3.0] - 2024-04-09 - -### Changed - -- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly -- CultureInfoSurrogate class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly -- tooling/gse to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly  - -## [8.0.0] - 2023-11-14 - -### Added - -- Tool for extracting NLS surrogates `tooling/gse` (Globalization Surrogates Extractor); this was done to mitigate the original design decision that was most [unfortunate](https://github.com/gimlichael/Cuemon/commit/71ff4f9ecb95897170aab1e6ba894c320ae095bd) - -### Fixed - -- National Language Support (NLS) surrogates was updated in the Codebelt.Extensions.Globalization assembly - -## [7.0.0] 2022-11-09 - -### Added - -- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace that consist of extension methods for the CultureInfo class: UseNationalLanguageSupport +# Changelog + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +For more details, please refer to `PackageReleaseNotes.txt` on a per assembly basis in the `.nuget` folder. + +> [!NOTE] +> Changelog entries prior to version 9.0.1 was migrated from previous versions of Cuemon.Extensions.Globalization. + +## [10.0.3] - 2026-02-20 + +This is a service update that focuses on package dependencies. + +## [10.0.2] - 2026-02-15 + +This is a service update that focuses on package dependencies. + +## [10.0.1] - 2026-01-22 + +This is a service update that focuses on package dependencies. + +## [10.0.0] - 2025-11-13 + +This is a major release that focuses on adapting the latest `.NET 10` release (LTS) in exchange for current `.NET 8` (LTS). + +> To ensure access to current features, improvements, and security updates, and to keep the codebase clean and easy to maintain, we target only the latest long-term (LTS), short-term (STS) and (where applicable) cross-platform .NET versions. + +## [9.0.8] - 2025-10-20 + +This is a service update that focuses on package dependencies. + +## [9.0.7] - 2025-09-15 + +This is a service update that focuses on package dependencies. + +## [9.0.6] - 2025-08-19 + +This is a service update that focuses on package dependencies. + +## [9.0.5] - 2025-07-11 + +This is a service update that focuses on package dependencies. + +## [9.0.4] - 2025-06-15 + +This is a service update that focuses on package dependencies. + +## [9.0.3] - 2025-05-25 + +This is a service update that focuses on package dependencies. + +## [9.0.2] - 2025-04-16 + +This is a service update that focuses on package dependencies. + +## [9.0.1] - 2025-01-29 + +This is a service update that primarily focuses on package dependencies and minor improvements. + +## [8.4.0] - 2024-09-28 + +### Changed + +- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Codebelt.Extensions.YamlDotNet assembly instead of YAML support from Cuemon.Extensions.YamlDotNet assembly + +## [8.3.0] - 2024-04-09 + +### Changed + +- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly +- CultureInfoSurrogate class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly +- tooling/gse to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly  + +## [8.0.0] - 2023-11-14 + +### Added + +- Tool for extracting NLS surrogates `tooling/gse` (Globalization Surrogates Extractor); this was done to mitigate the original design decision that was most [unfortunate](https://github.com/gimlichael/Cuemon/commit/71ff4f9ecb95897170aab1e6ba894c320ae095bd) + +### Fixed + +- National Language Support (NLS) surrogates was updated in the Codebelt.Extensions.Globalization assembly + +## [7.0.0] 2022-11-09 + +### Added + +- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace that consist of extension methods for the CultureInfo class: UseNationalLanguageSupport diff --git a/Directory.Packages.props b/Directory.Packages.props index c75fd03..f36b9ad 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,16 +1,16 @@ - - - true - - - - - - - - - - - - + + + true + + + + + + + + + + + + \ No newline at end of file From 407aab6e5e385f97862330cb3199fe37273ae782 Mon Sep 17 00:00:00 2001 From: Michael Mortensen Date: Fri, 20 Feb 2026 22:52:57 +0100 Subject: [PATCH 2/8] =?UTF-8?q?=F0=9F=94=A7=20signing=20configuration=20fo?= =?UTF-8?q?r=20tooling=20project?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Directory.Build.props | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Directory.Build.props b/Directory.Build.props index 5519339..6d0107c 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -78,6 +78,8 @@ false Exe true + true + $(MSBuildThisFileDirectory)globalization.snk From ff7c144bacf5f4bdbd11b92b9f39ab6be772dd35 Mon Sep 17 00:00:00 2001 From: Michael Mortensen Date: Fri, 20 Feb 2026 22:53:10 +0100 Subject: [PATCH 3/8] =?UTF-8?q?=E2=AC=86=EF=B8=8F=20bump=20Codebelt.Extens?= =?UTF-8?q?ions.Xunit=20to=20version=2011.0.6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Directory.Packages.props | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index f36b9ad..8682b3f 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,16 +1,16 @@ - - - true - - - - - - - - - - - - + + + true + + + + + + + + + + + + \ No newline at end of file From 4d1f05c6514a04cf09614c288d5d39295c23d788 Mon Sep 17 00:00:00 2001 From: Michael Mortensen Date: Fri, 20 Feb 2026 22:56:20 +0100 Subject: [PATCH 4/8] =?UTF-8?q?=E2=9C=85=20test=20all=20known=20cultures?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CultureInfoExtensionsTest.cs | 1232 +++++++++++++++++ 1 file changed, 1232 insertions(+) diff --git a/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs b/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs index d45c7ec..55e15be 100644 --- a/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs +++ b/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs @@ -45,5 +45,1237 @@ public void UseNationalLanguageSupport_ShouldHaveDifferentFormattingAsWindowsVar Assert.Equal("dd-MM-yyyy", sut2.DateTimeFormat.ShortDatePattern); #endif } + + [Theory] + [InlineData("af-NA")] + [InlineData("af-ZA")] + [InlineData("agq-CM")] + [InlineData("ak-GH")] + [InlineData("am-ET")] + [InlineData("ar-001")] + [InlineData("ar-AE")] + [InlineData("ar-BH")] + [InlineData("ar-DJ")] + [InlineData("ar-DZ")] + [InlineData("ar-EG")] + [InlineData("ar-ER")] + [InlineData("ar-IL")] + [InlineData("ar-IQ")] + [InlineData("ar-JO")] + [InlineData("ar-KM")] + [InlineData("ar-KW")] + [InlineData("ar-LB")] + [InlineData("ar-LY")] + [InlineData("ar-MA")] + [InlineData("ar-MR")] + [InlineData("ar-OM")] + [InlineData("ar-PS")] + [InlineData("ar-QA")] + [InlineData("ar-SA")] + [InlineData("ar-SD")] + [InlineData("ar-SO")] + [InlineData("ar-SS")] + [InlineData("ar-SY")] + [InlineData("ar-TD")] + [InlineData("ar-TN")] + [InlineData("ar-YE")] + [InlineData("arn-CL")] + [InlineData("as-IN")] + [InlineData("asa-TZ")] + [InlineData("ast-ES")] + [InlineData("az-Cyrl-AZ")] + [InlineData("az-Latn-AZ")] + [InlineData("ba-RU")] + [InlineData("bas-CM")] + [InlineData("be-BY")] + [InlineData("bem-ZM")] + [InlineData("bez-TZ")] + [InlineData("bg-BG")] + [InlineData("bgc-Deva-IN")] + [InlineData("bho-Deva-IN")] + [InlineData("bin-NG")] + [InlineData("bm-Latn-ML")] + [InlineData("bn-BD")] + [InlineData("bn-IN")] + [InlineData("bo-CN")] + [InlineData("bo-IN")] + [InlineData("br-FR")] + [InlineData("brx-IN")] + [InlineData("bs-Cyrl-BA")] + [InlineData("bs-Latn-BA")] + [InlineData("byn-ER")] + [InlineData("ca-AD")] + [InlineData("ca-ES")] + [InlineData("ca-FR")] + [InlineData("ca-IT")] + [InlineData("ccp-Cakm-BD")] + [InlineData("ccp-Cakm-IN")] + [InlineData("ce-RU")] + [InlineData("ceb-Latn-PH")] + [InlineData("cgg-UG")] + [InlineData("chr-Cher-US")] + [InlineData("co-FR")] + [InlineData("cs-CZ")] + [InlineData("cu-RU")] + [InlineData("cv-Cyrl-RU")] + [InlineData("cy-GB")] + [InlineData("da-DK")] + [InlineData("da-GL")] + [InlineData("dav-KE")] + [InlineData("de-AT")] + [InlineData("de-BE")] + [InlineData("de-CH")] + [InlineData("de-DE")] + [InlineData("de-IT")] + [InlineData("de-LI")] + [InlineData("de-LU")] + [InlineData("dje-NE")] + [InlineData("doi-Deva-IN")] + [InlineData("dsb-DE")] + [InlineData("dua-CM")] + [InlineData("dv-MV")] + [InlineData("dyo-SN")] + [InlineData("dz-BT")] + [InlineData("ebu-KE")] + [InlineData("ee-GH")] + [InlineData("ee-TG")] + [InlineData("el-CY")] + [InlineData("el-GR")] + [InlineData("en-001")] + [InlineData("en-029")] + [InlineData("en-150")] + [InlineData("en-AE")] + [InlineData("en-AG")] + [InlineData("en-AI")] + [InlineData("en-AS")] + [InlineData("en-AT")] + [InlineData("en-AU")] + [InlineData("en-BB")] + [InlineData("en-BE")] + [InlineData("en-BI")] + [InlineData("en-BM")] + [InlineData("en-BS")] + [InlineData("en-BW")] + [InlineData("en-BZ")] + [InlineData("en-CA")] + [InlineData("en-CC")] + [InlineData("en-CH")] + [InlineData("en-CK")] + [InlineData("en-CM")] + [InlineData("en-CX")] + [InlineData("en-CY")] + [InlineData("en-DE")] + [InlineData("en-DK")] + [InlineData("en-DM")] + [InlineData("en-ER")] + [InlineData("en-FI")] + [InlineData("en-FJ")] + [InlineData("en-FK")] + [InlineData("en-FM")] + [InlineData("en-GB")] + [InlineData("en-GD")] + [InlineData("en-GG")] + [InlineData("en-GH")] + [InlineData("en-GI")] + [InlineData("en-GM")] + [InlineData("en-GU")] + [InlineData("en-GY")] + [InlineData("en-HK")] + [InlineData("en-ID")] + [InlineData("en-IE")] + [InlineData("en-IL")] + [InlineData("en-IM")] + [InlineData("en-IN")] + [InlineData("en-IO")] + [InlineData("en-JE")] + [InlineData("en-JM")] + [InlineData("en-KE")] + [InlineData("en-KI")] + [InlineData("en-KN")] + [InlineData("en-KY")] + [InlineData("en-LC")] + [InlineData("en-LR")] + [InlineData("en-LS")] + [InlineData("en-MG")] + [InlineData("en-MH")] + [InlineData("en-MO")] + [InlineData("en-MP")] + [InlineData("en-MS")] + [InlineData("en-MT")] + [InlineData("en-MU")] + [InlineData("en-MV")] + [InlineData("en-MW")] + [InlineData("en-MY")] + [InlineData("en-NA")] + [InlineData("en-NF")] + [InlineData("en-NG")] + [InlineData("en-NL")] + [InlineData("en-NR")] + [InlineData("en-NU")] + [InlineData("en-NZ")] + [InlineData("en-PG")] + [InlineData("en-PH")] + [InlineData("en-PK")] + [InlineData("en-PN")] + [InlineData("en-PR")] + [InlineData("en-PW")] + [InlineData("en-RW")] + [InlineData("en-SB")] + [InlineData("en-SC")] + [InlineData("en-SD")] + [InlineData("en-SE")] + [InlineData("en-SG")] + [InlineData("en-SH")] + [InlineData("en-SI")] + [InlineData("en-SL")] + [InlineData("en-SS")] + [InlineData("en-SX")] + [InlineData("en-SZ")] + [InlineData("en-TC")] + [InlineData("en-TK")] + [InlineData("en-TO")] + [InlineData("en-TT")] + [InlineData("en-TV")] + [InlineData("en-TZ")] + [InlineData("en-UG")] + [InlineData("en-UM")] + [InlineData("en-US")] + [InlineData("en-VC")] + [InlineData("en-VG")] + [InlineData("en-VI")] + [InlineData("en-VU")] + [InlineData("en-WS")] + [InlineData("en-ZA")] + [InlineData("en-ZM")] + [InlineData("en-ZW")] + [InlineData("eo-001")] + [InlineData("es-419")] + [InlineData("es-AR")] + [InlineData("es-BO")] + [InlineData("es-BR")] + [InlineData("es-BZ")] + [InlineData("es-CL")] + [InlineData("es-CO")] + [InlineData("es-CR")] + [InlineData("es-CU")] + [InlineData("es-DO")] + [InlineData("es-EC")] + [InlineData("es-ES")] + [InlineData("es-GQ")] + [InlineData("es-GT")] + [InlineData("es-HN")] + [InlineData("es-MX")] + [InlineData("es-NI")] + [InlineData("es-PA")] + [InlineData("es-PE")] + [InlineData("es-PH")] + [InlineData("es-PR")] + [InlineData("es-PY")] + [InlineData("es-SV")] + [InlineData("es-US")] + [InlineData("es-UY")] + [InlineData("es-VE")] + [InlineData("et-EE")] + [InlineData("eu-ES")] + [InlineData("ewo-CM")] + [InlineData("fa-AF")] + [InlineData("fa-IR")] + [InlineData("ff-Adlm-BF")] + [InlineData("ff-Adlm-CM")] + [InlineData("ff-Adlm-GH")] + [InlineData("ff-Adlm-GM")] + [InlineData("ff-Adlm-GN")] + [InlineData("ff-Adlm-GW")] + [InlineData("ff-Adlm-LR")] + [InlineData("ff-Adlm-MR")] + [InlineData("ff-Adlm-NE")] + [InlineData("ff-Adlm-NG")] + [InlineData("ff-Adlm-SL")] + [InlineData("ff-Adlm-SN")] + [InlineData("ff-Latn-BF")] + [InlineData("ff-Latn-CM")] + [InlineData("ff-Latn-GH")] + [InlineData("ff-Latn-GM")] + [InlineData("ff-Latn-GN")] + [InlineData("ff-Latn-GW")] + [InlineData("ff-Latn-LR")] + [InlineData("ff-Latn-MR")] + [InlineData("ff-Latn-NE")] + [InlineData("ff-Latn-NG")] + [InlineData("ff-Latn-SL")] + [InlineData("ff-Latn-SN")] + [InlineData("fi-FI")] + [InlineData("fil-PH")] + [InlineData("fo-DK")] + [InlineData("fo-FO")] + [InlineData("fr-029")] + [InlineData("fr-BE")] + [InlineData("fr-BF")] + [InlineData("fr-BI")] + [InlineData("fr-BJ")] + [InlineData("fr-BL")] + [InlineData("fr-CA")] + [InlineData("fr-CD")] + [InlineData("fr-CF")] + [InlineData("fr-CG")] + [InlineData("fr-CH")] + [InlineData("fr-CI")] + [InlineData("fr-CM")] + [InlineData("fr-DJ")] + [InlineData("fr-DZ")] + [InlineData("fr-FR")] + [InlineData("fr-GA")] + [InlineData("fr-GF")] + [InlineData("fr-GN")] + [InlineData("fr-GP")] + [InlineData("fr-GQ")] + [InlineData("fr-HT")] + [InlineData("fr-KM")] + [InlineData("fr-LU")] + [InlineData("fr-MA")] + [InlineData("fr-MC")] + [InlineData("fr-MF")] + [InlineData("fr-MG")] + [InlineData("fr-ML")] + [InlineData("fr-MQ")] + [InlineData("fr-MR")] + [InlineData("fr-MU")] + [InlineData("fr-NC")] + [InlineData("fr-NE")] + [InlineData("fr-PF")] + [InlineData("fr-PM")] + [InlineData("fr-RE")] + [InlineData("fr-RW")] + [InlineData("fr-SC")] + [InlineData("fr-SN")] + [InlineData("fr-SY")] + [InlineData("fr-TD")] + [InlineData("fr-TG")] + [InlineData("fr-TN")] + [InlineData("fr-VU")] + [InlineData("fr-WF")] + [InlineData("fr-YT")] + [InlineData("fur-IT")] + [InlineData("fy-NL")] + [InlineData("ga-GB")] + [InlineData("ga-IE")] + [InlineData("gd-GB")] + [InlineData("gl-ES")] + [InlineData("gn-PY")] + [InlineData("gsw-CH")] + [InlineData("gsw-FR")] + [InlineData("gsw-LI")] + [InlineData("gu-IN")] + [InlineData("guz-KE")] + [InlineData("gv-IM")] + [InlineData("ha-Latn-GH")] + [InlineData("ha-Latn-NE")] + [InlineData("ha-Latn-NG")] + [InlineData("haw-US")] + [InlineData("he-IL")] + [InlineData("hi-IN")] + [InlineData("hi-Latn-IN")] + [InlineData("hr-BA")] + [InlineData("hr-HR")] + [InlineData("hsb-DE")] + [InlineData("hu-HU")] + [InlineData("hy-AM")] + [InlineData("ia-001")] + [InlineData("ibb-NG")] + [InlineData("id-ID")] + [InlineData("ig-NG")] + [InlineData("ii-CN")] + [InlineData("is-IS")] + [InlineData("it-CH")] + [InlineData("it-IT")] + [InlineData("it-SM")] + [InlineData("it-VA")] + [InlineData("iu-Cans-CA")] + [InlineData("iu-Latn-CA")] + [InlineData("ja-JP")] + [InlineData("jgo-CM")] + [InlineData("jmc-TZ")] + [InlineData("jv-Java-ID")] + [InlineData("jv-Latn-ID")] + [InlineData("ka-GE")] + [InlineData("kab-DZ")] + [InlineData("kam-KE")] + [InlineData("kde-TZ")] + [InlineData("kea-CV")] + [InlineData("kgp-Latn-BR")] + [InlineData("khq-ML")] + [InlineData("ki-KE")] + [InlineData("kk-KZ")] + [InlineData("kkj-CM")] + [InlineData("kl-GL")] + [InlineData("kln-KE")] + [InlineData("km-KH")] + [InlineData("kn-IN")] + [InlineData("ko-KP")] + [InlineData("ko-KR")] + [InlineData("kok-IN")] + [InlineData("kr-Latn-NG")] + [InlineData("ks-Arab-IN")] + [InlineData("ks-Deva-IN")] + [InlineData("ksb-TZ")] + [InlineData("ksf-CM")] + [InlineData("ksh-DE")] + [InlineData("ku-Arab-IQ")] + [InlineData("ku-Arab-IR")] + [InlineData("kw-GB")] + [InlineData("ky-KG")] + [InlineData("la-VA")] + [InlineData("lag-TZ")] + [InlineData("lb-LU")] + [InlineData("lg-UG")] + [InlineData("lkt-US")] + [InlineData("ln-AO")] + [InlineData("ln-CD")] + [InlineData("ln-CF")] + [InlineData("ln-CG")] + [InlineData("lo-LA")] + [InlineData("lrc-IQ")] + [InlineData("lrc-IR")] + [InlineData("lt-LT")] + [InlineData("lu-CD")] + [InlineData("luo-KE")] + [InlineData("luy-KE")] + [InlineData("lv-LV")] + [InlineData("mai-IN")] + [InlineData("mas-KE")] + [InlineData("mas-TZ")] + [InlineData("mer-KE")] + [InlineData("mfe-MU")] + [InlineData("mg-MG")] + [InlineData("mgh-MZ")] + [InlineData("mgo-CM")] + [InlineData("mi-NZ")] + [InlineData("mk-MK")] + [InlineData("ml-IN")] + [InlineData("mn-MN")] + [InlineData("mn-Mong-CN")] + [InlineData("mn-Mong-MN")] + [InlineData("mni-IN")] + [InlineData("moh-CA")] + [InlineData("mr-IN")] + [InlineData("ms-BN")] + [InlineData("ms-ID")] + [InlineData("ms-MY")] + [InlineData("ms-SG")] + [InlineData("mt-MT")] + [InlineData("mua-CM")] + [InlineData("my-MM")] + [InlineData("mzn-IR")] + [InlineData("naq-NA")] + [InlineData("nb-NO")] + [InlineData("nb-SJ")] + [InlineData("nd-ZW")] + [InlineData("nds-DE")] + [InlineData("nds-NL")] + [InlineData("ne-IN")] + [InlineData("ne-NP")] + [InlineData("nl-AW")] + [InlineData("nl-BE")] + [InlineData("nl-BQ")] + [InlineData("nl-CW")] + [InlineData("nl-NL")] + [InlineData("nl-SR")] + [InlineData("nl-SX")] + [InlineData("nmg-CM")] + [InlineData("nn-NO")] + [InlineData("nnh-CM")] + [InlineData("nqo-GN")] + [InlineData("nr-ZA")] + [InlineData("nso-ZA")] + [InlineData("nus-SS")] + [InlineData("nyn-UG")] + [InlineData("oc-ES")] + [InlineData("oc-FR")] + [InlineData("om-ET")] + [InlineData("om-KE")] + [InlineData("or-IN")] + [InlineData("os-GE")] + [InlineData("os-RU")] + [InlineData("pa-Arab-PK")] + [InlineData("pa-IN")] + [InlineData("pap-029")] + [InlineData("pcm-Latn-NG")] + [InlineData("pl-PL")] + [InlineData("prg-001")] + [InlineData("ps-AF")] + [InlineData("ps-PK")] + [InlineData("pt-AO")] + [InlineData("pt-BR")] + [InlineData("pt-CH")] + [InlineData("pt-CV")] + [InlineData("pt-GQ")] + [InlineData("pt-GW")] + [InlineData("pt-LU")] + [InlineData("pt-MO")] + [InlineData("pt-MZ")] + [InlineData("pt-PT")] + [InlineData("pt-ST")] + [InlineData("pt-TL")] + [InlineData("quc-Latn-GT")] + [InlineData("quz-BO")] + [InlineData("quz-EC")] + [InlineData("quz-PE")] + [InlineData("raj-Deva-IN")] + [InlineData("rm-CH")] + [InlineData("rn-BI")] + [InlineData("ro-MD")] + [InlineData("ro-RO")] + [InlineData("rof-TZ")] + [InlineData("ru-BY")] + [InlineData("ru-KG")] + [InlineData("ru-KZ")] + [InlineData("ru-MD")] + [InlineData("ru-RU")] + [InlineData("ru-UA")] + [InlineData("rw-RW")] + [InlineData("rwk-TZ")] + [InlineData("sa-IN")] + [InlineData("sah-RU")] + [InlineData("saq-KE")] + [InlineData("sat-Olck-IN")] + [InlineData("sbp-TZ")] + [InlineData("sc-Latn-IT")] + [InlineData("sd-Arab-PK")] + [InlineData("sd-Deva-IN")] + [InlineData("se-FI")] + [InlineData("se-NO")] + [InlineData("se-SE")] + [InlineData("seh-MZ")] + [InlineData("ses-ML")] + [InlineData("sg-CF")] + [InlineData("shi-Latn-MA")] + [InlineData("shi-Tfng-MA")] + [InlineData("si-LK")] + [InlineData("sk-SK")] + [InlineData("sl-SI")] + [InlineData("sma-NO")] + [InlineData("sma-SE")] + [InlineData("smj-NO")] + [InlineData("smj-SE")] + [InlineData("smn-FI")] + [InlineData("sms-FI")] + [InlineData("sn-Latn-ZW")] + [InlineData("so-DJ")] + [InlineData("so-ET")] + [InlineData("so-KE")] + [InlineData("so-SO")] + [InlineData("sq-AL")] + [InlineData("sq-MK")] + [InlineData("sq-XK")] + [InlineData("sr-Cyrl-BA")] + [InlineData("sr-Cyrl-ME")] + [InlineData("sr-Cyrl-RS")] + [InlineData("sr-Cyrl-XK")] + [InlineData("sr-Latn-BA")] + [InlineData("sr-Latn-ME")] + [InlineData("sr-Latn-RS")] + [InlineData("sr-Latn-XK")] + [InlineData("ss-SZ")] + [InlineData("ss-ZA")] + [InlineData("ssy-ER")] + [InlineData("st-LS")] + [InlineData("st-ZA")] + [InlineData("su-Latn-ID")] + [InlineData("sv-AX")] + [InlineData("sv-FI")] + [InlineData("sv-SE")] + [InlineData("sw-CD")] + [InlineData("sw-KE")] + [InlineData("sw-TZ")] + [InlineData("sw-UG")] + [InlineData("syr-SY")] + [InlineData("ta-IN")] + [InlineData("ta-LK")] + [InlineData("ta-MY")] + [InlineData("ta-SG")] + [InlineData("te-IN")] + [InlineData("teo-KE")] + [InlineData("teo-UG")] + [InlineData("tg-Cyrl-TJ")] + [InlineData("th-TH")] + [InlineData("ti-ER")] + [InlineData("ti-ET")] + [InlineData("tig-ER")] + [InlineData("tk-TM")] + [InlineData("tn-BW")] + [InlineData("tn-ZA")] + [InlineData("to-TO")] + [InlineData("tr-CY")] + [InlineData("tr-TR")] + [InlineData("ts-ZA")] + [InlineData("tt-RU")] + [InlineData("twq-NE")] + [InlineData("tzm-Arab-MA")] + [InlineData("tzm-Latn-DZ")] + [InlineData("tzm-Latn-MA")] + [InlineData("tzm-Tfng-MA")] + [InlineData("ug-CN")] + [InlineData("uk-UA")] + [InlineData("ur-IN")] + [InlineData("ur-PK")] + [InlineData("uz-Arab-AF")] + [InlineData("uz-Cyrl-UZ")] + [InlineData("uz-Latn-UZ")] + [InlineData("vai-Latn-LR")] + [InlineData("vai-Vaii-LR")] + [InlineData("ve-ZA")] + [InlineData("vi-VN")] + [InlineData("vo-001")] + [InlineData("vun-TZ")] + [InlineData("wae-CH")] + [InlineData("wal-ET")] + [InlineData("wo-SN")] + [InlineData("xh-ZA")] + [InlineData("xog-UG")] + [InlineData("yav-CM")] + [InlineData("yi-001")] + [InlineData("yo-BJ")] + [InlineData("yo-NG")] + [InlineData("yrl-Latn-BR")] + [InlineData("yrl-Latn-CO")] + [InlineData("yrl-Latn-VE")] + [InlineData("zgh-Tfng-MA")] + [InlineData("zh-CN")] + [InlineData("zh-Hans-HK")] + [InlineData("zh-Hans-MO")] + [InlineData("zh-HK")] + [InlineData("zh-MO")] + [InlineData("zh-SG")] + [InlineData("zh-TW")] + [InlineData("zu-ZA")] + [InlineData("aa-DJ")] + [InlineData("aa-ER")] + [InlineData("aa-ET")] + public void UseNationalLanguageSupport_ShouldSucceed_ForAllSupportedLocales(string localeName) + { + var sut = new CultureInfo(localeName, false).UseNationalLanguageSupport(); + + Assert.NotNull(sut); + Assert.NotNull(sut.DateTimeFormat); + Assert.NotNull(sut.NumberFormat); + + TestOutput.WriteLine(sut.NativeName); + } + + [Theory] + [InlineData("af-NA")] + [InlineData("af-ZA")] + [InlineData("agq-CM")] + [InlineData("ak-GH")] + [InlineData("am-ET")] + [InlineData("ar-001")] + [InlineData("ar-AE")] + [InlineData("ar-BH")] + [InlineData("ar-DJ")] + [InlineData("ar-DZ")] + [InlineData("ar-EG")] + [InlineData("ar-ER")] + [InlineData("ar-IL")] + [InlineData("ar-IQ")] + [InlineData("ar-JO")] + [InlineData("ar-KM")] + [InlineData("ar-KW")] + [InlineData("ar-LB")] + [InlineData("ar-LY")] + [InlineData("ar-MA")] + [InlineData("ar-MR")] + [InlineData("ar-OM")] + [InlineData("ar-PS")] + [InlineData("ar-QA")] + [InlineData("ar-SA")] + [InlineData("ar-SD")] + [InlineData("ar-SO")] + [InlineData("ar-SS")] + [InlineData("ar-SY")] + [InlineData("ar-TD")] + [InlineData("ar-TN")] + [InlineData("ar-YE")] + [InlineData("arn-CL")] + [InlineData("as-IN")] + [InlineData("asa-TZ")] + [InlineData("ast-ES")] + [InlineData("az-Cyrl-AZ")] + [InlineData("az-Latn-AZ")] + [InlineData("ba-RU")] + [InlineData("bas-CM")] + [InlineData("be-BY")] + [InlineData("bem-ZM")] + [InlineData("bez-TZ")] + [InlineData("bg-BG")] + [InlineData("bgc-Deva-IN")] + [InlineData("bho-Deva-IN")] + [InlineData("bin-NG")] + [InlineData("bm-Latn-ML")] + [InlineData("bn-BD")] + [InlineData("bn-IN")] + [InlineData("bo-CN")] + [InlineData("bo-IN")] + [InlineData("br-FR")] + [InlineData("brx-IN")] + [InlineData("bs-Cyrl-BA")] + [InlineData("bs-Latn-BA")] + [InlineData("byn-ER")] + [InlineData("ca-AD")] + [InlineData("ca-ES")] + [InlineData("ca-FR")] + [InlineData("ca-IT")] + [InlineData("ccp-Cakm-BD")] + [InlineData("ccp-Cakm-IN")] + [InlineData("ce-RU")] + [InlineData("ceb-Latn-PH")] + [InlineData("cgg-UG")] + [InlineData("chr-Cher-US")] + [InlineData("co-FR")] + [InlineData("cs-CZ")] + [InlineData("cu-RU")] + [InlineData("cv-Cyrl-RU")] + [InlineData("cy-GB")] + [InlineData("da-DK")] + [InlineData("da-GL")] + [InlineData("dav-KE")] + [InlineData("de-AT")] + [InlineData("de-BE")] + [InlineData("de-CH")] + [InlineData("de-DE")] + [InlineData("de-IT")] + [InlineData("de-LI")] + [InlineData("de-LU")] + [InlineData("dje-NE")] + [InlineData("doi-Deva-IN")] + [InlineData("dsb-DE")] + [InlineData("dua-CM")] + [InlineData("dv-MV")] + [InlineData("dyo-SN")] + [InlineData("dz-BT")] + [InlineData("ebu-KE")] + [InlineData("ee-GH")] + [InlineData("ee-TG")] + [InlineData("el-CY")] + [InlineData("el-GR")] + [InlineData("en-001")] + [InlineData("en-029")] + [InlineData("en-150")] + [InlineData("en-AE")] + [InlineData("en-AG")] + [InlineData("en-AI")] + [InlineData("en-AS")] + [InlineData("en-AT")] + [InlineData("en-AU")] + [InlineData("en-BB")] + [InlineData("en-BE")] + [InlineData("en-BI")] + [InlineData("en-BM")] + [InlineData("en-BS")] + [InlineData("en-BW")] + [InlineData("en-BZ")] + [InlineData("en-CA")] + [InlineData("en-CC")] + [InlineData("en-CH")] + [InlineData("en-CK")] + [InlineData("en-CM")] + [InlineData("en-CX")] + [InlineData("en-CY")] + [InlineData("en-DE")] + [InlineData("en-DK")] + [InlineData("en-DM")] + [InlineData("en-ER")] + [InlineData("en-FI")] + [InlineData("en-FJ")] + [InlineData("en-FK")] + [InlineData("en-FM")] + [InlineData("en-GB")] + [InlineData("en-GD")] + [InlineData("en-GG")] + [InlineData("en-GH")] + [InlineData("en-GI")] + [InlineData("en-GM")] + [InlineData("en-GU")] + [InlineData("en-GY")] + [InlineData("en-HK")] + [InlineData("en-ID")] + [InlineData("en-IE")] + [InlineData("en-IL")] + [InlineData("en-IM")] + [InlineData("en-IN")] + [InlineData("en-IO")] + [InlineData("en-JE")] + [InlineData("en-JM")] + [InlineData("en-KE")] + [InlineData("en-KI")] + [InlineData("en-KN")] + [InlineData("en-KY")] + [InlineData("en-LC")] + [InlineData("en-LR")] + [InlineData("en-LS")] + [InlineData("en-MG")] + [InlineData("en-MH")] + [InlineData("en-MO")] + [InlineData("en-MP")] + [InlineData("en-MS")] + [InlineData("en-MT")] + [InlineData("en-MU")] + [InlineData("en-MV")] + [InlineData("en-MW")] + [InlineData("en-MY")] + [InlineData("en-NA")] + [InlineData("en-NF")] + [InlineData("en-NG")] + [InlineData("en-NL")] + [InlineData("en-NR")] + [InlineData("en-NU")] + [InlineData("en-NZ")] + [InlineData("en-PG")] + [InlineData("en-PH")] + [InlineData("en-PK")] + [InlineData("en-PN")] + [InlineData("en-PR")] + [InlineData("en-PW")] + [InlineData("en-RW")] + [InlineData("en-SB")] + [InlineData("en-SC")] + [InlineData("en-SD")] + [InlineData("en-SE")] + [InlineData("en-SG")] + [InlineData("en-SH")] + [InlineData("en-SI")] + [InlineData("en-SL")] + [InlineData("en-SS")] + [InlineData("en-SX")] + [InlineData("en-SZ")] + [InlineData("en-TC")] + [InlineData("en-TK")] + [InlineData("en-TO")] + [InlineData("en-TT")] + [InlineData("en-TV")] + [InlineData("en-TZ")] + [InlineData("en-UG")] + [InlineData("en-UM")] + [InlineData("en-US")] + [InlineData("en-VC")] + [InlineData("en-VG")] + [InlineData("en-VI")] + [InlineData("en-VU")] + [InlineData("en-WS")] + [InlineData("en-ZA")] + [InlineData("en-ZM")] + [InlineData("en-ZW")] + [InlineData("eo-001")] + [InlineData("es-419")] + [InlineData("es-AR")] + [InlineData("es-BO")] + [InlineData("es-BR")] + [InlineData("es-BZ")] + [InlineData("es-CL")] + [InlineData("es-CO")] + [InlineData("es-CR")] + [InlineData("es-CU")] + [InlineData("es-DO")] + [InlineData("es-EC")] + [InlineData("es-ES")] + [InlineData("es-GQ")] + [InlineData("es-GT")] + [InlineData("es-HN")] + [InlineData("es-MX")] + [InlineData("es-NI")] + [InlineData("es-PA")] + [InlineData("es-PE")] + [InlineData("es-PH")] + [InlineData("es-PR")] + [InlineData("es-PY")] + [InlineData("es-SV")] + [InlineData("es-US")] + [InlineData("es-UY")] + [InlineData("es-VE")] + [InlineData("et-EE")] + [InlineData("eu-ES")] + [InlineData("ewo-CM")] + [InlineData("fa-AF")] + [InlineData("fa-IR")] + [InlineData("ff-Adlm-BF")] + [InlineData("ff-Adlm-CM")] + [InlineData("ff-Adlm-GH")] + [InlineData("ff-Adlm-GM")] + [InlineData("ff-Adlm-GN")] + [InlineData("ff-Adlm-GW")] + [InlineData("ff-Adlm-LR")] + [InlineData("ff-Adlm-MR")] + [InlineData("ff-Adlm-NE")] + [InlineData("ff-Adlm-NG")] + [InlineData("ff-Adlm-SL")] + [InlineData("ff-Adlm-SN")] + [InlineData("ff-Latn-BF")] + [InlineData("ff-Latn-CM")] + [InlineData("ff-Latn-GH")] + [InlineData("ff-Latn-GM")] + [InlineData("ff-Latn-GN")] + [InlineData("ff-Latn-GW")] + [InlineData("ff-Latn-LR")] + [InlineData("ff-Latn-MR")] + [InlineData("ff-Latn-NE")] + [InlineData("ff-Latn-NG")] + [InlineData("ff-Latn-SL")] + [InlineData("ff-Latn-SN")] + [InlineData("fi-FI")] + [InlineData("fil-PH")] + [InlineData("fo-DK")] + [InlineData("fo-FO")] + [InlineData("fr-029")] + [InlineData("fr-BE")] + [InlineData("fr-BF")] + [InlineData("fr-BI")] + [InlineData("fr-BJ")] + [InlineData("fr-BL")] + [InlineData("fr-CA")] + [InlineData("fr-CD")] + [InlineData("fr-CF")] + [InlineData("fr-CG")] + [InlineData("fr-CH")] + [InlineData("fr-CI")] + [InlineData("fr-CM")] + [InlineData("fr-DJ")] + [InlineData("fr-DZ")] + [InlineData("fr-FR")] + [InlineData("fr-GA")] + [InlineData("fr-GF")] + [InlineData("fr-GN")] + [InlineData("fr-GP")] + [InlineData("fr-GQ")] + [InlineData("fr-HT")] + [InlineData("fr-KM")] + [InlineData("fr-LU")] + [InlineData("fr-MA")] + [InlineData("fr-MC")] + [InlineData("fr-MF")] + [InlineData("fr-MG")] + [InlineData("fr-ML")] + [InlineData("fr-MQ")] + [InlineData("fr-MR")] + [InlineData("fr-MU")] + [InlineData("fr-NC")] + [InlineData("fr-NE")] + [InlineData("fr-PF")] + [InlineData("fr-PM")] + [InlineData("fr-RE")] + [InlineData("fr-RW")] + [InlineData("fr-SC")] + [InlineData("fr-SN")] + [InlineData("fr-SY")] + [InlineData("fr-TD")] + [InlineData("fr-TG")] + [InlineData("fr-TN")] + [InlineData("fr-VU")] + [InlineData("fr-WF")] + [InlineData("fr-YT")] + [InlineData("fur-IT")] + [InlineData("fy-NL")] + [InlineData("ga-GB")] + [InlineData("ga-IE")] + [InlineData("gd-GB")] + [InlineData("gl-ES")] + [InlineData("gn-PY")] + [InlineData("gsw-CH")] + [InlineData("gsw-FR")] + [InlineData("gsw-LI")] + [InlineData("gu-IN")] + [InlineData("guz-KE")] + [InlineData("gv-IM")] + [InlineData("ha-Latn-GH")] + [InlineData("ha-Latn-NE")] + [InlineData("ha-Latn-NG")] + [InlineData("haw-US")] + [InlineData("he-IL")] + [InlineData("hi-IN")] + [InlineData("hi-Latn-IN")] + [InlineData("hr-BA")] + [InlineData("hr-HR")] + [InlineData("hsb-DE")] + [InlineData("hu-HU")] + [InlineData("hy-AM")] + [InlineData("ia-001")] + [InlineData("ibb-NG")] + [InlineData("id-ID")] + [InlineData("ig-NG")] + [InlineData("ii-CN")] + [InlineData("is-IS")] + [InlineData("it-CH")] + [InlineData("it-IT")] + [InlineData("it-SM")] + [InlineData("it-VA")] + [InlineData("iu-Cans-CA")] + [InlineData("iu-Latn-CA")] + [InlineData("ja-JP")] + [InlineData("jgo-CM")] + [InlineData("jmc-TZ")] + [InlineData("jv-Java-ID")] + [InlineData("jv-Latn-ID")] + [InlineData("ka-GE")] + [InlineData("kab-DZ")] + [InlineData("kam-KE")] + [InlineData("kde-TZ")] + [InlineData("kea-CV")] + [InlineData("kgp-Latn-BR")] + [InlineData("khq-ML")] + [InlineData("ki-KE")] + [InlineData("kk-KZ")] + [InlineData("kkj-CM")] + [InlineData("kl-GL")] + [InlineData("kln-KE")] + [InlineData("km-KH")] + [InlineData("kn-IN")] + [InlineData("ko-KP")] + [InlineData("ko-KR")] + [InlineData("kok-IN")] + [InlineData("kr-Latn-NG")] + [InlineData("ks-Arab-IN")] + [InlineData("ks-Deva-IN")] + [InlineData("ksb-TZ")] + [InlineData("ksf-CM")] + [InlineData("ksh-DE")] + [InlineData("ku-Arab-IQ")] + [InlineData("ku-Arab-IR")] + [InlineData("kw-GB")] + [InlineData("ky-KG")] + [InlineData("la-VA")] + [InlineData("lag-TZ")] + [InlineData("lb-LU")] + [InlineData("lg-UG")] + [InlineData("lkt-US")] + [InlineData("ln-AO")] + [InlineData("ln-CD")] + [InlineData("ln-CF")] + [InlineData("ln-CG")] + [InlineData("lo-LA")] + [InlineData("lrc-IQ")] + [InlineData("lrc-IR")] + [InlineData("lt-LT")] + [InlineData("lu-CD")] + [InlineData("luo-KE")] + [InlineData("luy-KE")] + [InlineData("lv-LV")] + [InlineData("mai-IN")] + [InlineData("mas-KE")] + [InlineData("mas-TZ")] + [InlineData("mer-KE")] + [InlineData("mfe-MU")] + [InlineData("mg-MG")] + [InlineData("mgh-MZ")] + [InlineData("mgo-CM")] + [InlineData("mi-NZ")] + [InlineData("mk-MK")] + [InlineData("ml-IN")] + [InlineData("mn-MN")] + [InlineData("mn-Mong-CN")] + [InlineData("mn-Mong-MN")] + [InlineData("mni-IN")] + [InlineData("moh-CA")] + [InlineData("mr-IN")] + [InlineData("ms-BN")] + [InlineData("ms-ID")] + [InlineData("ms-MY")] + [InlineData("ms-SG")] + [InlineData("mt-MT")] + [InlineData("mua-CM")] + [InlineData("my-MM")] + [InlineData("mzn-IR")] + [InlineData("naq-NA")] + [InlineData("nb-NO")] + [InlineData("nb-SJ")] + [InlineData("nd-ZW")] + [InlineData("nds-DE")] + [InlineData("nds-NL")] + [InlineData("ne-IN")] + [InlineData("ne-NP")] + [InlineData("nl-AW")] + [InlineData("nl-BE")] + [InlineData("nl-BQ")] + [InlineData("nl-CW")] + [InlineData("nl-NL")] + [InlineData("nl-SR")] + [InlineData("nl-SX")] + [InlineData("nmg-CM")] + [InlineData("nn-NO")] + [InlineData("nnh-CM")] + [InlineData("nqo-GN")] + [InlineData("nr-ZA")] + [InlineData("nso-ZA")] + [InlineData("nus-SS")] + [InlineData("nyn-UG")] + [InlineData("oc-ES")] + [InlineData("oc-FR")] + [InlineData("om-ET")] + [InlineData("om-KE")] + [InlineData("or-IN")] + [InlineData("os-GE")] + [InlineData("os-RU")] + [InlineData("pa-Arab-PK")] + [InlineData("pa-IN")] + [InlineData("pap-029")] + [InlineData("pcm-Latn-NG")] + [InlineData("pl-PL")] + [InlineData("prg-001")] + [InlineData("ps-AF")] + [InlineData("ps-PK")] + [InlineData("pt-AO")] + [InlineData("pt-BR")] + [InlineData("pt-CH")] + [InlineData("pt-CV")] + [InlineData("pt-GQ")] + [InlineData("pt-GW")] + [InlineData("pt-LU")] + [InlineData("pt-MO")] + [InlineData("pt-MZ")] + [InlineData("pt-PT")] + [InlineData("pt-ST")] + [InlineData("pt-TL")] + [InlineData("quc-Latn-GT")] + [InlineData("quz-BO")] + [InlineData("quz-EC")] + [InlineData("quz-PE")] + [InlineData("raj-Deva-IN")] + [InlineData("rm-CH")] + [InlineData("rn-BI")] + [InlineData("ro-MD")] + [InlineData("ro-RO")] + [InlineData("rof-TZ")] + [InlineData("ru-BY")] + [InlineData("ru-KG")] + [InlineData("ru-KZ")] + [InlineData("ru-MD")] + [InlineData("ru-RU")] + [InlineData("ru-UA")] + [InlineData("rw-RW")] + [InlineData("rwk-TZ")] + [InlineData("sa-IN")] + [InlineData("sah-RU")] + [InlineData("saq-KE")] + [InlineData("sat-Olck-IN")] + [InlineData("sbp-TZ")] + [InlineData("sc-Latn-IT")] + [InlineData("sd-Arab-PK")] + [InlineData("sd-Deva-IN")] + [InlineData("se-FI")] + [InlineData("se-NO")] + [InlineData("se-SE")] + [InlineData("seh-MZ")] + [InlineData("ses-ML")] + [InlineData("sg-CF")] + [InlineData("shi-Latn-MA")] + [InlineData("shi-Tfng-MA")] + [InlineData("si-LK")] + [InlineData("sk-SK")] + [InlineData("sl-SI")] + [InlineData("sma-NO")] + [InlineData("sma-SE")] + [InlineData("smj-NO")] + [InlineData("smj-SE")] + [InlineData("smn-FI")] + [InlineData("sms-FI")] + [InlineData("sn-Latn-ZW")] + [InlineData("so-DJ")] + [InlineData("so-ET")] + [InlineData("so-KE")] + [InlineData("so-SO")] + [InlineData("sq-AL")] + [InlineData("sq-MK")] + [InlineData("sq-XK")] + [InlineData("sr-Cyrl-BA")] + [InlineData("sr-Cyrl-ME")] + [InlineData("sr-Cyrl-RS")] + [InlineData("sr-Cyrl-XK")] + [InlineData("sr-Latn-BA")] + [InlineData("sr-Latn-ME")] + [InlineData("sr-Latn-RS")] + [InlineData("sr-Latn-XK")] + [InlineData("ss-SZ")] + [InlineData("ss-ZA")] + [InlineData("ssy-ER")] + [InlineData("st-LS")] + [InlineData("st-ZA")] + [InlineData("su-Latn-ID")] + [InlineData("sv-AX")] + [InlineData("sv-FI")] + [InlineData("sv-SE")] + [InlineData("sw-CD")] + [InlineData("sw-KE")] + [InlineData("sw-TZ")] + [InlineData("sw-UG")] + [InlineData("syr-SY")] + [InlineData("ta-IN")] + [InlineData("ta-LK")] + [InlineData("ta-MY")] + [InlineData("ta-SG")] + [InlineData("te-IN")] + [InlineData("teo-KE")] + [InlineData("teo-UG")] + [InlineData("tg-Cyrl-TJ")] + [InlineData("th-TH")] + [InlineData("ti-ER")] + [InlineData("ti-ET")] + [InlineData("tig-ER")] + [InlineData("tk-TM")] + [InlineData("tn-BW")] + [InlineData("tn-ZA")] + [InlineData("to-TO")] + [InlineData("tr-CY")] + [InlineData("tr-TR")] + [InlineData("ts-ZA")] + [InlineData("tt-RU")] + [InlineData("twq-NE")] + [InlineData("tzm-Arab-MA")] + [InlineData("tzm-Latn-DZ")] + [InlineData("tzm-Latn-MA")] + [InlineData("tzm-Tfng-MA")] + [InlineData("ug-CN")] + [InlineData("uk-UA")] + [InlineData("ur-IN")] + [InlineData("ur-PK")] + [InlineData("uz-Arab-AF")] + [InlineData("uz-Cyrl-UZ")] + [InlineData("uz-Latn-UZ")] + [InlineData("vai-Latn-LR")] + [InlineData("vai-Vaii-LR")] + [InlineData("ve-ZA")] + [InlineData("vi-VN")] + [InlineData("vo-001")] + [InlineData("vun-TZ")] + [InlineData("wae-CH")] + [InlineData("wal-ET")] + [InlineData("wo-SN")] + [InlineData("xh-ZA")] + [InlineData("xog-UG")] + [InlineData("yav-CM")] + [InlineData("yi-001")] + [InlineData("yo-BJ")] + [InlineData("yo-NG")] + [InlineData("yrl-Latn-BR")] + [InlineData("yrl-Latn-CO")] + [InlineData("yrl-Latn-VE")] + [InlineData("zgh-Tfng-MA")] + [InlineData("zh-CN")] + [InlineData("zh-Hans-HK")] + [InlineData("zh-Hans-MO")] + [InlineData("zh-HK")] + [InlineData("zh-MO")] + [InlineData("zh-SG")] + [InlineData("zh-TW")] + [InlineData("zu-ZA")] + [InlineData("aa-DJ")] + [InlineData("aa-ER")] + [InlineData("aa-ET")] + public void UseNationalLanguageSupport_ShouldSucceed_ForAllSupportedLocales_FromReadOnlyCultureInfos(string localeName) + { + var sut = CultureInfo.GetCultureInfo(localeName).UseNationalLanguageSupport(); + + Assert.NotNull(sut); + Assert.NotNull(sut.DateTimeFormat); + Assert.NotNull(sut.NumberFormat); + + TestOutput.WriteLine(sut.NativeName); + } } } From 44f862db483437e2f06dd151d5d3beab92d753f2 Mon Sep 17 00:00:00 2001 From: Michael Mortensen Date: Fri, 20 Feb 2026 22:57:42 +0100 Subject: [PATCH 5/8] =?UTF-8?q?=F0=9F=8D=B1=20add=20missing=20cultures=20f?= =?UTF-8?q?or=20embedding?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Codebelt.Extensions.Globalization.csproj | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/Codebelt.Extensions.Globalization/Codebelt.Extensions.Globalization.csproj b/src/Codebelt.Extensions.Globalization/Codebelt.Extensions.Globalization.csproj index fe2cd92..34ff398 100644 --- a/src/Codebelt.Extensions.Globalization/Codebelt.Extensions.Globalization.csproj +++ b/src/Codebelt.Extensions.Globalization/Codebelt.Extensions.Globalization.csproj @@ -57,6 +57,8 @@ + + @@ -81,6 +83,7 @@ + @@ -166,6 +169,7 @@ + @@ -336,6 +340,7 @@ + @@ -363,6 +368,7 @@ + @@ -449,6 +455,7 @@ + @@ -479,6 +486,7 @@ + @@ -497,6 +505,7 @@ + @@ -593,6 +602,9 @@ + + + @@ -652,6 +664,8 @@ + + @@ -676,6 +690,7 @@ + @@ -761,6 +776,7 @@ + @@ -931,6 +947,7 @@ + @@ -958,6 +975,7 @@ + @@ -1044,6 +1062,7 @@ + @@ -1074,6 +1093,7 @@ + @@ -1092,6 +1112,7 @@ + @@ -1188,6 +1209,9 @@ + + + From bce7a1b1ccee696836760957079e8b0e69d71950 Mon Sep 17 00:00:00 2001 From: Michael Mortensen Date: Fri, 20 Feb 2026 23:01:50 +0100 Subject: [PATCH 6/8] --- --- .../CultureInfoExtensionsTest.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs b/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs index 55e15be..a4dbb42 100644 --- a/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs +++ b/test/Codebelt.Extensions.Globalization.Tests/CultureInfoExtensionsTest.cs @@ -659,7 +659,7 @@ public void UseNationalLanguageSupport_ShouldSucceed_ForAllSupportedLocales(stri Assert.NotNull(sut.DateTimeFormat); Assert.NotNull(sut.NumberFormat); - TestOutput.WriteLine(sut.NativeName); + TestOutput.WriteLine($"{sut.EnglishName}/{sut.NativeName}"); } [Theory] @@ -1275,7 +1275,7 @@ public void UseNationalLanguageSupport_ShouldSucceed_ForAllSupportedLocales_From Assert.NotNull(sut.DateTimeFormat); Assert.NotNull(sut.NumberFormat); - TestOutput.WriteLine(sut.NativeName); + TestOutput.WriteLine($"{sut.EnglishName}/{sut.NativeName}"); } } } From 043a3f9c2f05a7ef4eaf4250820ba650a16c2bec Mon Sep 17 00:00:00 2001 From: Michael Mortensen Date: Fri, 20 Feb 2026 23:03:27 +0100 Subject: [PATCH 7/8] =?UTF-8?q?=F0=9F=92=AC=20updated=20community=20health?= =?UTF-8?q?=20pages?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a5690ef..10b557d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,10 @@ For more details, please refer to `PackageReleaseNotes.txt` on a per assembly ba This is a service update that focuses on package dependencies. +### Fixed + +- Added embedded resources for these missed cultures: `bgc-deva-in`, `bho-deva-in`, `cv-cyrl-ru`, `en-mv`, `hi-latn-in`, `kgp-latn-br`, `oc-es`, `raj-deva-in`, `sc-latn-it`, `yrl-latn-br`, `yrl-latn-co` and `yrl-latn-ve` + ## [10.0.2] - 2026-02-15 This is a service update that focuses on package dependencies. From 37ba31cbc8ffed80831de675059f3c4e948a2c48 Mon Sep 17 00:00:00 2001 From: Michael Mortensen Date: Fri, 20 Feb 2026 23:03:39 +0100 Subject: [PATCH 8/8] =?UTF-8?q?=F0=9F=93=A6=EF=B8=8F=20updated=20NuGet=20p?= =?UTF-8?q?ackage=20definition?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PackageReleaseNotes.txt | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt b/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt index 74fd759..9931def 100644 --- a/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt +++ b/.nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt @@ -1,10 +1,13 @@ -Version: 10.0.3 +Version: 10.0.3 Availability: .NET 10, .NET 9 and .NET Standard 2.0 - -# ALM -- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) - -Version: 10.0.2 + +# ALM +- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs) +  +# Bug Fixes +- FIXED missing embedded resources for these cultures: "bgc-deva-in, bho-deva-in, cv-cyrl-ru, en-mv, hi-latn-in, kgp-latn-br, oc-es, raj-deva-in, sc-latn-it, yrl-latn-br, yrl-latn-co and yrl-latn-ve" + +Version: 10.0.2 Availability: .NET 10, .NET 9 and .NET Standard 2.0   # ALM