diff --git a/src/Umbraco.Tests/Models/ContentExtensionsTests.cs b/src/Umbraco.Tests/Models/ContentExtensionsTests.cs index 21687d20c6..ea635e9816 100644 --- a/src/Umbraco.Tests/Models/ContentExtensionsTests.cs +++ b/src/Umbraco.Tests/Models/ContentExtensionsTests.cs @@ -9,7 +9,37 @@ namespace Umbraco.Tests.Models [TestFixture] public class ContentExtensionsTests : BaseUmbracoConfigurationTest { - + + [Test] + public void Should_Persist_Values_When_Saving_After_Publishing_But_No_Data_Changed() + { + var contentType = MockedContentTypes.CreateTextpageContentType(); + var content = MockedContent.CreateTextpageContent(contentType, "Textpage", -1); + + content.ResetDirtyProperties(false); + content.ChangePublishedState(PublishedState.Published); + content.ResetDirtyProperties(false); + + //no version will be created if no data is changed + content.Properties.First().Value = "hello world"; + + content.ChangePublishedState(PublishedState.Saved); + Assert.IsTrue(content.RequiresSaving()); + } + + [Test] + public void Should_Not_Persist_Values_When_Saving_After_Publishing_But_No_Data_Changed() + { + var contentType = MockedContentTypes.CreateTextpageContentType(); + var content = MockedContent.CreateTextpageContent(contentType, "Textpage", -1); + + content.ResetDirtyProperties(false); + content.ChangePublishedState(PublishedState.Published); + content.ResetDirtyProperties(false); + + content.ChangePublishedState(PublishedState.Saved); + Assert.IsFalse(content.RequiresSaving()); + } [Test] public void Should_Create_New_Version_When_Publishing() @@ -33,6 +63,9 @@ namespace Umbraco.Tests.Models content.ChangePublishedState(PublishedState.Published); content.ResetDirtyProperties(false); + //no version will be created if no data is changed + content.Properties.First().Value = "hello world"; + content.ChangePublishedState(PublishedState.Saved); Assert.IsTrue(content.ShouldCreateNewVersion()); } @@ -84,7 +117,6 @@ namespace Umbraco.Tests.Models Assert.IsFalse(content.ShouldCreateNewVersion(PublishedState.Unpublished)); } - [Test] public void Should_Clear_Published_Flag_When_Newly_Published_Version() {