Added and updated tests for fall back languages

This commit is contained in:
AndyButland
2018-07-06 23:30:57 +02:00
parent 4e859cd88b
commit 3c13b7bd70
3 changed files with 39 additions and 9 deletions

View File

@@ -47,6 +47,7 @@ namespace Umbraco.Tests.Persistence.Repositories
Assert.That(language.HasIdentity, Is.True);
Assert.That(language.CultureName, Is.EqualTo("en-US"));
Assert.That(language.IsoCode, Is.EqualTo("en-US"));
Assert.That(language.FallbackLanguage, Is.Null);
}
}
@@ -61,7 +62,8 @@ namespace Umbraco.Tests.Persistence.Repositories
var au = CultureInfo.GetCultureInfo("en-AU");
var language = (ILanguage)new Language(au.Name)
{
CultureName = au.DisplayName
CultureName = au.DisplayName,
FallbackLanguage = repository.Get(1)
};
repository.Save(language);
@@ -73,6 +75,7 @@ namespace Umbraco.Tests.Persistence.Repositories
Assert.That(language.HasIdentity, Is.True);
Assert.That(language.CultureName, Is.EqualTo(au.DisplayName));
Assert.That(language.IsoCode, Is.EqualTo(au.Name));
Assert.That(language.FallbackLanguage.IsoCode, Is.EqualTo("en-US"));
}
}
@@ -182,7 +185,7 @@ namespace Umbraco.Tests.Persistence.Repositories
var repository = CreateRepository(provider);
// Act
var languageBR = new Language("pt-BR") {CultureName = "pt-BR"};
var languageBR = new Language("pt-BR") { CultureName = "pt-BR" };
repository.Save(languageBR);
// Assert
@@ -190,6 +193,7 @@ namespace Umbraco.Tests.Persistence.Repositories
Assert.That(languageBR.Id, Is.EqualTo(6)); //With 5 existing entries the Id should be 6
Assert.IsFalse(languageBR.IsDefaultVariantLanguage);
Assert.IsFalse(languageBR.Mandatory);
Assert.IsNull(languageBR.FallbackLanguage);
}
}
@@ -211,6 +215,31 @@ namespace Umbraco.Tests.Persistence.Repositories
Assert.That(languageBR.Id, Is.EqualTo(6)); //With 5 existing entries the Id should be 6
Assert.IsTrue(languageBR.IsDefaultVariantLanguage);
Assert.IsTrue(languageBR.Mandatory);
Assert.IsNull(languageBR.FallbackLanguage);
}
}
[Test]
public void Can_Perform_Add_On_LanguageRepository_With_Fallback_Language()
{
// Arrange
var provider = TestObjects.GetScopeProvider(Logger);
using (var scope = provider.CreateScope())
{
var repository = CreateRepository(provider);
// Act
var languageBR = new Language("pt-BR")
{
CultureName = "pt-BR",
FallbackLanguage = repository.Get(1)
};
repository.Save(languageBR);
// Assert
Assert.That(languageBR.HasIdentity, Is.True);
Assert.That(languageBR.Id, Is.EqualTo(6)); //With 5 existing entries the Id should be 6
Assert.That(languageBR.FallbackLanguage.IsoCode, Is.EqualTo("en-US"));
}
}
@@ -232,13 +261,11 @@ namespace Umbraco.Tests.Persistence.Repositories
Assert.IsTrue(languageBR.Mandatory);
// Act
var languageNZ = new Language("en-NZ") { CultureName = "en-NZ", IsDefaultVariantLanguage = true, Mandatory = true };
repository.Save(languageNZ);
languageBR = repository.Get(languageBR.Id);
// Assert
Assert.IsFalse(languageBR.IsDefaultVariantLanguage);
Assert.IsTrue(languageNZ.IsDefaultVariantLanguage);
}
@@ -257,6 +284,7 @@ namespace Umbraco.Tests.Persistence.Repositories
var language = repository.Get(5);
language.IsoCode = "pt-BR";
language.CultureName = "pt-BR";
language.FallbackLanguage = repository.Get(1);
repository.Save(language);
@@ -266,6 +294,7 @@ namespace Umbraco.Tests.Persistence.Repositories
Assert.That(languageUpdated, Is.Not.Null);
Assert.That(languageUpdated.IsoCode, Is.EqualTo("pt-BR"));
Assert.That(languageUpdated.CultureName, Is.EqualTo("pt-BR"));
Assert.That(languageUpdated.FallbackLanguage.IsoCode, Is.EqualTo("en-US"));
}
}
@@ -314,7 +343,7 @@ namespace Umbraco.Tests.Persistence.Repositories
base.TearDown();
}
public void CreateTestData()
private void CreateTestData()
{
var languageDK = new Language("da-DK") { CultureName = "da-DK" };
ServiceContext.LocalizationService.Save(languageDK);//Id 2