Пример #1
0
        public static string SerializedGettext(IEnumerable <CultureInfo> cultureInfos, string msgId, params object[] args)
        {
            if (Localizer is null)
            {
                var message = args.Any() ? Localizer.Gettext(msgId, args) : Localizer.Gettext(msgId);

                return("{" + string.Join(", ", cultureInfos.Select(c => $"\"{c.Name}\": \"{HttpUtility.JavaScriptStringEncode(message)}\"")) + "}");
            }

            if (_translationSerializer == null)
            {
                _translationSerializer = new TranslationSerializer(Localizer.GetCatalog);
            }

            return(_translationSerializer.SerializedGettext(cultureInfos, msgId, args));
        }
        public void Serializes_Translated_Messages(string locale, string msgId, string message)
        {
            var serializedGettext = _target.SerializedGettext(new[] { new CultureInfo("en-US"), new CultureInfo("da-DK") }, msgId);

            Assert.Equal(message, JsonConvert.DeserializeObject <Dictionary <string, string> >(serializedGettext)[locale]);
        }