public void Edit_Page_That_Has_Never_Been_Published_Should_Not_Create_A_Draft()
{
// Given
IPage page, draft;
// When
using (var store = this.SetupContext())
{
using (var session = store.OpenSession())
{
session.Store(new FakePage {Id = "fakepages/1", Metadata = {Name = "Start"}}, StoreAction.Save);
session.SaveChanges();
}
using (var session = store.OpenSession())
{
session.Store(new FakePage {Id = "fakepages/2", Parent = new PageReference("fakepages/1")},
StoreAction.Save);
session.SaveChanges();
}
using (var session = store.OpenSession())
{
page = session.Load<IPage>("fakepages/2");
page.Metadata.Name = "Changed name";
session.Store(page, StoreAction.Save);
}
using (var session = store.OpenSession())
{
page = session.Load<IPage>("fakepages/2");
draft = session.Load<IPage>("fakepages/2/draft");
}
// Then
Assert.NotNull(page);
Assert.Null(draft);
}
}