public void MainViewModel_CloseWorkSurfaceContext_ExistingUnsavedWorkflowNotSaved_ResourceModelRolledback()
{
CreateFullExportsAndVm();
Assert.IsTrue(MainViewModel.Items.Count == 2);
FirstResource.Setup(r => r.IsWorkflowSaved).Returns(false);
FirstResource.Setup(r => r.Commit()).Verifiable();
FirstResource.Setup(r => r.Rollback()).Verifiable();
FirstResource.Setup(r => r.IsAuthorized(AuthorizationContext.Contribute)).Returns(true);
PopupController.Setup(s => s.Show(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<MessageBoxButton>(), It.IsAny<MessageBoxImage>(), It.IsAny<string>())).Returns(MessageBoxResult.No);
var activetx = MainViewModel.Items.ToList().First(i => i.WorkSurfaceViewModel.WorkSurfaceContext == WorkSurfaceContext.Workflow);
MainViewModel.CloseWorkSurfaceContext(activetx, null);
FirstResource.Verify(r => r.Commit(), Times.Never(), "ResourceModel was committed when not saved.");
FirstResource.Verify(r => r.Rollback(), Times.Once(), "ResourceModel was not rolled back when not saved.");
}