Пример #1
0
        public static void TestCtor_CultureInfo_Compare(object a, object b, int expected)
        {
            var cultureNames = new string[]
            {
                "cs-CZ", "da-DK", "de-DE", "el-GR", "en-US",
                "es-ES", "fi-FI", "fr-FR", "hu-HU", "it-IT",
                "ja-JP", "ko-KR", "nb-NO", "nl-NL", "pl-PL",
                "pt-BR", "pt-PT", "ru-RU", "sv-SE", "tr-TR",
                "zh-CN", "zh-HK", "zh-TW"
            };

            foreach (string cultureName in cultureNames)
            {
                CultureInfo culture;
                try
                {
                    culture = new CultureInfo(cultureName);
                }
                catch (CultureNotFoundException)
                {
                    continue;
                }

                var comparer = new CaseInsensitiveComparer(culture);
                Assert.Equal(expected, Helpers.NormalizeCompare(comparer.Compare(a, b)));
            }
        }
Пример #2
0
        public static void TestCtor_CultureInfo(object a, object b, int expected)
        {
            var culture  = new CultureInfo("en-US");
            var comparer = new Comparer(culture);

            Assert.Equal(expected, Helpers.NormalizeCompare(comparer.Compare(a, b)));
        }
Пример #3
0
        public static void TestDefaultInvariant_Compare(object a, object b, int expected)
        {
            var cultureNames = new string[]
            {
                "cs-CZ", "da-DK", "de-DE", "el-GR", "en-US",
                "es-ES", "fi-FI", "fr-FR", "hu-HU", "it-IT",
                "ja-JP", "ko-KR", "nb-NO", "nl-NL", "pl-PL",
                "pt-BR", "pt-PT", "ru-RU", "sv-SE", "tr-TR",
                "zh-CN", "zh-HK", "zh-TW"
            };

            CultureInfo culture1 = CultureInfo.DefaultThreadCurrentCulture;
            CultureInfo culture2 = CultureInfo.DefaultThreadCurrentCulture;

            foreach (string cultureName in cultureNames)
            {
                CultureInfo culture;
                try
                {
                    culture = new CultureInfo(cultureName);
                }
                catch (CultureNotFoundException)
                {
                    continue;
                }

                // Set current culture
                CultureInfo.DefaultThreadCurrentCulture   = culture;
                CultureInfo.DefaultThreadCurrentUICulture = culture;

                // All cultures should sort the same way, irrespective of the thread's culture
                CaseInsensitiveComparer defaultInvComparer = CaseInsensitiveComparer.DefaultInvariant;
                Assert.Equal(expected, Helpers.NormalizeCompare(defaultInvComparer.Compare(a, b)));
            }

            CultureInfo.DefaultThreadCurrentCulture   = culture1;
            CultureInfo.DefaultThreadCurrentUICulture = culture2;
        }
Пример #4
0
        public static void TestCtor_Empty_Compare(object a, object b, int expected)
        {
            CaseInsensitiveComparer comparer = new CaseInsensitiveComparer();

            Assert.Equal(expected, Helpers.NormalizeCompare(comparer.Compare(a, b)));
        }
Пример #5
0
 public static void TestDefault_Compare(object a, object b, int expected)
 {
     Assert.Equal(expected, Helpers.NormalizeCompare(CaseInsensitiveComparer.Default.Compare(a, b)));
 }