System.Tests.StringTests.IndexOf_EquivalentDiacritics C# (CSharp) Method

IndexOf_EquivalentDiacritics() private method

private IndexOf_EquivalentDiacritics ( ) : void
return void
        public static void IndexOf_EquivalentDiacritics()
        {
            string s = "Exhibit a\u0300\u00C0";
            string value = "\u00C0";
            Helpers.PerformActionWithCulture(new CultureInfo("en-US"), () =>
            {
                Assert.Equal(10, s.IndexOf(value));
                Assert.Equal(10, s.IndexOf(value, StringComparison.CurrentCulture));
                Assert.Equal(8, s.IndexOf(value, StringComparison.CurrentCultureIgnoreCase));
                Assert.Equal(10, s.IndexOf(value, StringComparison.Ordinal));
                Assert.Equal(10, s.IndexOf(value, StringComparison.OrdinalIgnoreCase));
            });
            Helpers.PerformActionWithCulture(CultureInfo.InvariantCulture, () =>
            {
                Assert.Equal(10, s.IndexOf(value));
                Assert.Equal(10, s.IndexOf(value, StringComparison.CurrentCulture));
                Assert.Equal(8, s.IndexOf(value, StringComparison.CurrentCultureIgnoreCase));
            });

            value = "a\u0300"; // this diacritic combines with preceding character
            Helpers.PerformActionWithCulture(new CultureInfo("en-US"), () =>
            {
                Assert.Equal(8, s.IndexOf(value));
                Assert.Equal(8, s.IndexOf(value, StringComparison.CurrentCulture));
                Assert.Equal(8, s.IndexOf(value, StringComparison.CurrentCultureIgnoreCase));
                Assert.Equal(8, s.IndexOf(value, StringComparison.Ordinal));
                Assert.Equal(8, s.IndexOf(value, StringComparison.OrdinalIgnoreCase));
            });
            Helpers.PerformActionWithCulture(CultureInfo.InvariantCulture, () =>
            {
                Assert.Equal(8, s.IndexOf(value));
                Assert.Equal(8, s.IndexOf(value, StringComparison.CurrentCulture));
                Assert.Equal(8, s.IndexOf(value, StringComparison.CurrentCultureIgnoreCase));
            });
        }
StringTests