public void TestExecute() { var collection = new LocalizableStringCollection { "neutralValue1", { "en-US", "americaValue1" } }; var neutralCommand = new SetLocalizableString(collection, new LocalizableString { Value = "neutralValue2" }); var americanCommand = new SetLocalizableString(collection, new LocalizableString { Language = new CultureInfo("en-US"), Value = "americaValue2" }); neutralCommand.Execute(); collection.GetExactLanguage(LocalizableString.DefaultLanguage) .Should().Be("neutralValue2", because: "Unspecified language should default to English generic"); neutralCommand.Undo(); collection.GetExactLanguage(LocalizableString.DefaultLanguage) .Should().Be("neutralValue1", because: "Unspecified language should default to English generic"); americanCommand.Execute(); collection.GetExactLanguage(new CultureInfo("en-US")) .Should().Be("americaValue2"); americanCommand.Undo(); collection.GetExactLanguage(new CultureInfo("en-US")) .Should().Be("americaValue1"); }
public void TestExecute() { var collection = new LocalizableStringCollection { "neutralValue1", {"en-US", "americaValue1"} }; var neutralCommand = new SetLocalizableString(collection, new LocalizableString {Value = "neutralValue2"}); var americanCommand = new SetLocalizableString(collection, new LocalizableString {Language = new CultureInfo("en-US"), Value = "americaValue2"}); neutralCommand.Execute(); collection.GetExactLanguage(LocalizableString.DefaultLanguage) .Should().Be("neutralValue2", because: "Unspecified language should default to English generic"); neutralCommand.Undo(); collection.GetExactLanguage(LocalizableString.DefaultLanguage) .Should().Be("neutralValue1", because: "Unspecified language should default to English generic"); americanCommand.Execute(); collection.GetExactLanguage(new CultureInfo("en-US")) .Should().Be("americaValue2"); americanCommand.Undo(); collection.GetExactLanguage(new CultureInfo("en-US")) .Should().Be("americaValue1"); }