public void CloseContextWithCloseTrueAndResourceSavedExpectsRemoveWorkspaceItemRemoveCalledAndTabClosedMessageAndContextRemoved()
{
lock (syncroot)
{
CreateFullExportsAndVm();
Assert.IsTrue(_mainViewModel.Items.Count == 2);
_firstResource.Setup(r => r.IsWorkflowSaved).Returns(true);
var activetx =
_mainViewModel.Items.ToList()
.First(i => i.WorkSurfaceViewModel.WorkSurfaceContext == WorkSurfaceContext.Workflow);
_eventAggregator.Setup(e => e.Publish(It.IsAny<TabClosedMessage>()))
.Callback<object>((o =>
{
var msg = (TabClosedMessage)o;
Assert.IsTrue(msg.Context.Equals(activetx));
}));
_mainViewModel.DeactivateItem(activetx, true);
_mockWorkspaceRepo.Verify(c => c.Remove(_firstResource.Object), Times.Once());
Assert.IsTrue(_mainViewModel.Items.Count == 1);
_eventAggregator.Verify(e => e.Publish(It.IsAny<TabClosedMessage>()), Times.Once());
}
}