public void TranslateFallbackTest() { const string scope = "home"; const string key = "name"; var defaultCulture = m_localizationConfiguration.DefaultCulture; const string defaultValue = "Jméno"; var now = DateTime.UtcNow; var nonDefaultCulturesValuePairs = new Dictionary <string, string> { { "en", "Name" }, { "es", "Nombre" }, { "jp", "名前" }, { "ru", "Имя" }, }; var defaultCulturesValuePair = new KeyValuePair <string, string>(defaultCulture.Name, defaultValue); foreach (var culturesValuePair in nonDefaultCulturesValuePairs) { m_staticTextUoW.AddStaticText("name", 0, culturesValuePair.Value, culturesValuePair.Key, "home", "user", now); } m_staticTextUoW.AddStaticText("name", 0, defaultCulturesValuePair.Value, defaultCulturesValuePair.Key, "home", "user", now); foreach (var culturesValuePair in nonDefaultCulturesValuePairs) { var translateResult = m_databaseLocalizationManager.Translate(new CultureInfo(culturesValuePair.Key), scope, key); Assert.AreEqual(culturesValuePair.Value, translateResult.Value); } var defaultCultureTranslateResult = m_databaseLocalizationManager.Translate(new CultureInfo(defaultCulturesValuePair.Key), scope, key); Assert.AreEqual(defaultCulturesValuePair.Value, defaultCultureTranslateResult.Value); foreach (var culturesValuePair in nonDefaultCulturesValuePairs) { m_staticTextUoW.Delete(key, culturesValuePair.Key, scope); } foreach (var culturesValuePair in nonDefaultCulturesValuePairs) { var translateResult = m_databaseLocalizationManager.Translate(new CultureInfo(culturesValuePair.Key), scope, key); Assert.AreEqual(defaultCultureTranslateResult.Value, translateResult.Value); } }
public void StaticTextCreateDeleteTest() { var cultureUoW = new CultureUoW(m_sessionFactory); var dictionaryScopeUoW = new DictionaryScopeUoW(m_sessionFactory); var staticTextUoW = new StaticTextUoW(m_sessionFactory); cultureUoW.AddCulture("cs"); dictionaryScopeUoW.AddScope("dictionaryScope"); var time = DateTime.UtcNow; staticTextUoW.AddStaticText( "name", 0, "text", "cs", "dictionaryScope", "modificationUser", time ); var staticText = staticTextUoW.GetByNameAndCultureAndScope( "name", "cs", "dictionaryScope" ); Assert.AreEqual("name", staticText.Name); Assert.AreEqual("text", staticText.Text); staticTextUoW.Delete( "name", "cs", "dictionaryScope" ); var staticTextReFetched = staticTextUoW.GetByNameAndCultureAndScope( "name", "cs", "dictionaryScope" ); Assert.IsNull(staticTextReFetched); }
public void DeleteDynamicText(string name, string scope, CultureInfo cultureInfo) { if (string.IsNullOrEmpty(scope)) { scope = m_configuration.DefaultScope; } var dictionaryScope = GetDictionaryScope(scope); if (dictionaryScope.Name != scope) { throw new ArgumentException($"Unknown scope {scope}"); } var culture = GetCultureByNameOrGetDefault(cultureInfo.Name); if (culture.Name != cultureInfo.Name) { throw new ArgumentException($"Unknown culture {cultureInfo.Name}"); } m_staticTextUoW.Delete(name, culture.Name, dictionaryScope.Name); }