public void Can_Publish_Start_Page_Then_Save_As_Draft()
{
// Given
Trie structureInfo;
IPage page, draft;
// When
using (var store = this.SetupContext())
{
using (var session = store.OpenSession())
{
session.Store(new FakePage(), StoreAction.Publish);
session.SaveChanges();
}
using (var session = store.OpenSession())
{
page = session.Load<IPage>("FakePages/1");
page.Metadata.Name = "Renamed";
session.Store(page, StoreAction.Save);
session.SaveChanges();
}
using (var session = store.OpenSession())
{
draft = session.Load<IPage>("FakePages/1/Draft");
page = session.Load<IPage>("FakePages/1");
structureInfo = session.Load<Trie>(DefaultBrickPileBootstrapper.TrieId);
}
// Then
Assert.NotNull(draft);
Assert.NotNull(page);
Assert.NotNull(structureInfo.RootNode.PageId);
}
}