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]); }