public void Drafts_AreNotPublished_WhenRestored() { TrashHandler th = CreateTrashHandler(); item.State = ContentState.Draft; th.Throw(item); th.Restore(item); item.State.ShouldBe(ContentState.Draft); }
public void ChildrenOf_ThrownItem_AreNoLongerPublished() { TrashHandler th = CreateTrashHandler(); var child1 = CreateItem <ThrowableItem>(5, "child1", item); var child2 = CreateItem <ThrowableItem>(6, "child2", child1); th.Throw(item); child1.State.ShouldBe(ContentState.Deleted); child2.State.ShouldBe(ContentState.Deleted); }
public void ChildrenOf_RestoredItems_AreUnExpired() { TrashHandler th = CreateTrashHandler(); var child1 = CreateItem <ThrowableItem>(5, "child1", item); var child2 = CreateItem <ThrowableItem>(6, "child2", child1); th.Throw(item); th.Restore(item); Assert.That(child1.Expires, Is.Null); Assert.That(child2.Expires, Is.Null); }
public void ChildrenOf_ThrownItem_AreExpired() { TrashHandler th = CreateTrashHandler(); var child1 = CreateItem <ThrowableItem>(5, "child1", item); var child2 = CreateItem <ThrowableItem>(6, "child2", child1); th.Throw(item); Assert.That(child1.Expires, Is.Not.Null); Assert.That(child2.Expires, Is.Not.Null); Assert.That(child1.Expires, Is.GreaterThan(DateTime.Now.AddSeconds(-10))); Assert.That(child2.Expires, Is.GreaterThan(DateTime.Now.AddSeconds(-10))); }
public void DraftChildren_AreNotPublished_WhenRestored() { TrashHandler th = CreateTrashHandler(); var child1 = CreateItem <ThrowableItem>(5, "child1", item); child1.State = ContentState.Draft; th.Throw(item); th.Restore(item); child1.State.ShouldBe(ContentState.Draft); }
public void ChildrenOf_RestoredItems_AreUnExpired() { TrashHandler th = CreateTrashHandler(); var child1 = CreateItem <ThrowableItem>(5, "child1", item); var child2 = CreateItem <ThrowableItem>(6, "child2", child1); th.Throw(item); th.Restore(item); child1.State.ShouldBe(ContentState.Published); child2.State.ShouldBe(ContentState.Published); }
public void ThrashHandler_Throw_CanBeCancelled() { var definitions = mocks.Stub<IDefinitionManager>(); IPersister persister = mocks.StrictMock<IPersister>(); Expect.Call(persister.Get(1)).Return(root).Repeat.Any(); Expect.Call(delegate { persister.Save(item); }).Repeat.Never(); mocks.ReplayAll(); var host = new Host(webContext, 1, 1); TrashHandler th = new TrashHandler(persister, null, null, new ContainerRepository<TrashContainerItem>(persister, null, host, null), new StateChanger()) { UseNavigationMode = true }; th.ItemThrowing += delegate(object sender, CancellableItemEventArgs args) { args.Cancel = true; }; th.Throw(item); mocks.VerifyAll(); }
public void ThrownItem_IsMoved_ToTrashcan() { var activator = new ContentActivator(null, null, null); IPersister persister = mocks.StrictMock <IPersister>(); Expect.Call(persister.Get(1)).Return(root).Repeat.Any(); Expect.Call(delegate { persister.Save(item); }).Repeat.Any(); mocks.ReplayAll(); TrashHandler th = new TrashHandler(persister, null, null, new ContainerRepository <TrashContainerItem>(persister, null, host, activator), new StateChanger()) { UseNavigationMode = true }; th.Throw(item); Assert.AreEqual(trash, item.Parent); mocks.VerifyAll(); }
public void ThrashHandler_Throw_CanBeCancelled() { var definitions = mocks.Stub <IDefinitionManager>(); IPersister persister = mocks.StrictMock <IPersister>(); Expect.Call(persister.Get(1)).Return(root).Repeat.Any(); Expect.Call(delegate { persister.Save(item); }).Repeat.Never(); mocks.ReplayAll(); var host = new Host(webContext, 1, 1); TrashHandler th = new TrashHandler(persister, null, null, new ContainerRepository <TrashContainerItem>(persister, null, host, null), new StateChanger()) { UseNavigationMode = true }; th.ItemThrowing += delegate(object sender, CancellableItemEventArgs args) { args.Cancel = true; }; th.Throw(item); mocks.VerifyAll(); }
public void ThrashHandler_Throw_WillInvokeEvents() { var activator = new ContentActivator(null, null, null); IPersister persister = mocks.StrictMock<IPersister>(); Expect.Call(persister.Get(1)).Return(root).Repeat.Any(); Expect.Call(delegate { persister.Save(item); }).Repeat.Any(); mocks.ReplayAll(); var host = new Host(webContext, 1, 1); TrashHandler th = new TrashHandler(persister, null, null, new ContainerRepository<TrashContainerItem>(persister, null, host, activator), new StateChanger()) { UseNavigationMode = true }; bool throwingWasInvoked = false; bool throwedWasInvoked = false; th.ItemThrowing += delegate { throwingWasInvoked = true; }; th.ItemThrowed += delegate { throwedWasInvoked = true; }; th.Throw(item); Assert.That(throwingWasInvoked); Assert.That(throwedWasInvoked); mocks.VerifyAll(); }
public void ThrownItem_IsMoved_ToTrashcan() { var activator = new ContentActivator(null, null, null); IPersister persister = mocks.StrictMock<IPersister>(); Expect.Call(persister.Get(1)).Return(root).Repeat.Any(); Expect.Call(delegate { persister.Save(item); }).Repeat.Any(); mocks.ReplayAll(); TrashHandler th = new TrashHandler(persister, null, null, new ContainerRepository<TrashContainerItem>(persister, null, host, activator), new StateChanger()) { UseNavigationMode = true }; th.Throw(item); Assert.AreEqual(trash, item.Parent); mocks.VerifyAll(); }