An undo command that sets a LocalizableString in a LocalizableStringCollection.
Inheritance: SimpleCommand
Esempio n. 1
0
        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");
        }