コード例 #1
0
        public void Should_Read_CaseInsensitive_UseDefault()
        {
            var localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture        = new CultureInfo("en-US"),
                SupportedCultureInfos = new System.Collections.Generic.HashSet <CultureInfo>()
                {
                    new CultureInfo("de-DE")
                }
            });

            var result = localizer.GetString("CaseInsensitiveCultureName");

            Assert.AreEqual("US English", result);
        }
コード例 #2
0
        public void I18n_GetNameTranslation_ShouldBeFrenchThenUSTranslation()
        {
            CultureInfo.CurrentUICulture = new CultureInfo("fr-FR");

            // Arrange
            JsonLocalizer.Localizer.JsonStringLocalizer localizer = JsonStringLocalizerHelperFactory.Create(_jsonLocalizationOptions);

            var frResult = localizer.GetString("Name");

            Assert.AreEqual("Nom", frResult.Value);

            CultureInfo.CurrentUICulture = new CultureInfo("en-US");
            var usResult = localizer.GetString("Name");

            Assert.AreEqual("Nom", frResult.Value);
        }
        public void Should_Read_CaseInsensitive_CultureName()
        {
            CultureInfo.CurrentUICulture = new CultureInfo("fr-FR");

            JsonLocalizer.Localizer.JsonStringLocalizer localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture        = new CultureInfo("en-US"),
                SupportedCultureInfos = new System.Collections.Generic.HashSet <CultureInfo>()
                {
                    new CultureInfo("fr-FR")
                }
            });

            LocalizedString result = localizer.GetString("CaseInsensitiveCultureName");

            Assert.AreEqual("French", result);
        }
        public void InitLocalizer(char seperator = '|', string currentCulture = "en-US")
        {
            CultureInfo.CurrentUICulture = new CultureInfo(currentCulture);

            localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture        = new CultureInfo("en-US"),
                SupportedCultureInfos = new System.Collections.Generic.HashSet <CultureInfo>()
                {
                    new CultureInfo("fr-FR"),
                    new CultureInfo("es-UY"),
                },
                ResourcesPath    = "i18nPluralization",
                PluralSeparator  = seperator,
                LocalizationMode = LocalizationMode.I18n
            });
        }
        public void InitLocalizer(string cultureString)
        {
            SetCurrentCulture(cultureString);

            localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture        = null,
                SupportedCultureInfos = new System.Collections.Generic.HashSet <CultureInfo>()
                {
                    new CultureInfo("fr"),
                    new CultureInfo("en"),
                    new CultureInfo("zh-CN"),
                    new CultureInfo("en-AU")
                },
                ResourcesPath = "fallback",
            });
        }
コード例 #6
0
        public void Should_GetAllStrings_ByCaseInsensitiveCultureName()
        {
            CultureInfo.CurrentUICulture = new CultureInfo("fr-FR");

            JsonLocalizer.Localizer.JsonStringLocalizer localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture = new CultureInfo("fr-FR")
            });

            string[] expected = new[] {
                "Mon Nom de Base 1",
                "Mon Nom de Base 2",
                "French"
            };
            string[] results = localizer.GetAllStrings().Select(x => x.Value).ToArray();
            CollectionAssert.AreEquivalent(expected, results);
        }
コード例 #7
0
        public void TestReadName1_ISOEncoding()
        {
            CultureInfo.CurrentUICulture = new CultureInfo("fr-FR");
            JsonLocalizer.Localizer.JsonStringLocalizer localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture        = new CultureInfo("en-US"),
                SupportedCultureInfos = new System.Collections.Generic.HashSet <CultureInfo>()
                {
                    new CultureInfo("fr-FR")
                },
                ResourcesPath = "encoding",
                FileEncoding  = Encoding.GetEncoding("ISO-8859-1")
            });

            LocalizedString result = localizer.GetString("Name1");

            Assert.AreEqual("Mon Nom 1", result);
        }
        public void Should_Be_Plural_Users_Custom()
        {
            // Arrange
            CultureInfo.CurrentUICulture = new CultureInfo("fr-FR");
            var localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture        = new CultureInfo("en-US"),
                SupportedCultureInfos = new System.Collections.Generic.HashSet <CultureInfo>()
                {
                    new CultureInfo("fr-FR")
                },
                PluralSeparator = '#'
            });

            var result = localizer.GetString("CustomPluralUser", true);

            Assert.AreEqual("Utilisateurs", result);
        }
        public void Should_SwitchCulture_WithoutReloadingLocalizer()
        {
            CultureInfo.CurrentUICulture = new CultureInfo("fr-FR");

            JsonLocalizer.Localizer.JsonStringLocalizer localizer = JsonStringLocalizerHelperFactory.Create(new JsonLocalizationOptions()
            {
                DefaultCulture = new CultureInfo("fr-FR")
            });

            LocalizedString result = localizer.GetString("BaseName1");

            Assert.AreEqual("Mon Nom de Base 1", result);

            CultureInfo.CurrentUICulture = new CultureInfo("en-US");

            result = localizer.GetString("BaseName1");

            Assert.AreEqual("My Base Name 1", result);
        }