From b9e0a7e3f19e3d0ac0cd10ab36c9c9129cfc29c3 Mon Sep 17 00:00:00 2001 From: Tarek Mahmoud Sayed <10833894+tarekgh@users.noreply.github.com> Date: Wed, 8 Oct 2025 16:38:45 -0700 Subject: [PATCH 1/2] Fix NumberFormatInfoGroupSize test (#120546) * Fix NumberFormatInfoGroupSize test * Fix coding style --- .../NumberFormatInfoNumberGroupSizes.cs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs b/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs index 62ae02d3aa4a4c..f88f59aa82a241 100644 --- a/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs +++ b/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs @@ -10,21 +10,24 @@ public class NumberFormatInfoNumberGroupSizes { public static IEnumerable NumberGroupSizes_TestData() { - yield return new object[] { NumberFormatInfo.InvariantInfo, new int[] { 3 } }; - yield return new object[] { CultureInfo.GetCultureInfo("en-US").NumberFormat, new int[] { 3 } }; + yield return new object[] { "Invariant", NumberFormatInfo.InvariantInfo, new int[] { 3 }, null }; + yield return new object[] { "en-US", CultureInfo.GetCultureInfo("en-US").NumberFormat, new int[] { 3 }, null }; // Culture does not exist on Windows 7 and in Browser's ICU if (!PlatformDetection.IsWindows7 && PlatformDetection.IsNotBrowser) { - yield return new object[] { CultureInfo.GetCultureInfo("ur-IN").NumberFormat, NumberFormatInfoData.UrINNumberGroupSizes() }; + yield return new object[] { "ur-IN", CultureInfo.GetCultureInfo("ur-IN").NumberFormat, NumberFormatInfoData.UrINNumberGroupSizes(), new int[] { 3, 2 } }; } } [Theory] [MemberData(nameof(NumberGroupSizes_TestData))] - public void NumberGroupSizes_Get_ReturnsExpected(NumberFormatInfo format, int[] expected) + public void NumberGroupSizes_Get_ReturnsExpected(string cultureName, NumberFormatInfo format, int[] expected1, int[] expected2) { - Assert.Equal(expected, format.NumberGroupSizes); + int[] actual = format.NumberGroupSizes; + Assert.True(expected1.SequenceEqual(actual) || (expected2 is not null && expected2.SequenceEqual(actual)), + $"Expected: [{string.Join(", ", expected1)}] or [{(expected2 is null ? "" : string.Join(", ", expected2))}], Actual: [{string.Join(", ", actual)}]" + + $"{Environment.NewLine}Culture: {cultureName}"); } [Theory] From 1d130717ab0b60e4a5dcafed4b90cf10c6a46baa Mon Sep 17 00:00:00 2001 From: Petr Onderka Date: Tue, 26 May 2026 15:16:47 +0200 Subject: [PATCH 2/2] Use Span to avoid requiring System.Linq Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- .../tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs b/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs index f88f59aa82a241..595b19155d6b68 100644 --- a/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs +++ b/src/libraries/System.Globalization/tests/NumberFormatInfo/NumberFormatInfoNumberGroupSizes.cs @@ -25,7 +25,7 @@ public static IEnumerable NumberGroupSizes_TestData() public void NumberGroupSizes_Get_ReturnsExpected(string cultureName, NumberFormatInfo format, int[] expected1, int[] expected2) { int[] actual = format.NumberGroupSizes; - Assert.True(expected1.SequenceEqual(actual) || (expected2 is not null && expected2.SequenceEqual(actual)), + Assert.True(expected1.AsSpan().SequenceEqual(actual) || (expected2 is not null && expected2.AsSpan().SequenceEqual(actual)), $"Expected: [{string.Join(", ", expected1)}] or [{(expected2 is null ? "" : string.Join(", ", expected2))}], Actual: [{string.Join(", ", actual)}]" + $"{Environment.NewLine}Culture: {cultureName}"); }