public void WorkflowDesignerViewModel_DoWorkspaceSave_NotNewResourceModel_ShouldCallSave() { //------------Setup for test-------------------------- var workflow = new ActivityBuilder { Implementation = new Flowchart { StartNode = CreateFlowNode(Guid.NewGuid(), "CanSaveTest", true, typeof(TestActivity)) } }; #region Setup viewModel var resourceRep = new Mock<IResourceRepository>(); resourceRep.Setup(r => r.All()).Returns(new List<IResourceModel>()); resourceRep.Setup(r => r.FetchResourceDefinition(It.IsAny<IEnvironmentModel>(), It.IsAny<Guid>(), It.IsAny<Guid>(), It.IsAny<bool>())).Returns(new ExecuteMessage()); resourceRep.Setup(repository => repository.Save(It.IsAny<IResourceModel>())).Verifiable(); var resourceModel = new Mock<IContextualResourceModel>(); resourceModel.Setup(m => m.Environment.ResourceRepository).Returns(resourceRep.Object); resourceModel.Setup(model => model.IsNewWorkflow).Returns(false); resourceModel.Setup(m => m.ResourceName).Returns("Some resource name 9"); var workflowHelper = new Mock<IWorkflowHelper>(); workflowHelper.Setup(h => h.CreateWorkflow(It.IsAny<string>())).Returns(workflow); var viewModel = new WorkflowDesignerViewModelMock(resourceModel.Object, workflowHelper.Object); viewModel.InitializeDesigner(new Dictionary<Type, Type>()); resourceModel.SetupProperty(model => model.WorkflowXaml); #endregion //------------Assert Preconditions------------------- Assert.IsNull(resourceModel.Object.WorkflowXaml); //------------Execute Test--------------------------- viewModel.DoWorkspaceSave(); //------------Assert Results------------------------- resourceRep.Verify(repository => repository.Save(It.IsAny<IResourceModel>()), Times.Never()); Assert.IsNull(resourceModel.Object.WorkflowXaml); }