public void ClientScheduledResourceModel_SaveScheduledResource_HasError_CallsCommunicationsController()
{
//------------Setup for test--------------------------
var scheduledResourceForTest = new ScheduledResourceForTest();
Dev2JsonSerializer serializer = new Dev2JsonSerializer();
var serializeObject = serializer.SerializeToBuilder(scheduledResourceForTest);
var esbPayLoad = new EsbExecuteRequest { ServiceName = "AddScheduledResourceService" };
esbPayLoad.AddArgument("Resource", serializeObject);
var returnMessage = new ExecuteMessage { HasError = true, Message = new StringBuilder("Error occurred") };
var serializedReturnMessage = serializer.SerializeToBuilder(returnMessage);
var mockEnvironmentModel = new Mock<IEnvironmentModel>();
var mockConnection = new Mock<IEnvironmentConnection>();
mockConnection.Setup(connection => connection.IsConnected).Returns(true);
mockConnection.Setup(connection => connection.ExecuteCommand(It.IsAny<StringBuilder>(), It.IsAny<Guid>())).Verifiable();
mockConnection.Setup(connection => connection.ExecuteCommand(It.IsAny<StringBuilder>(), It.IsAny<Guid>())).Returns(serializedReturnMessage);
mockConnection.Setup(connection => connection.WorkspaceID).Returns(Guid.NewGuid());
mockEnvironmentModel.Setup(model => model.Connection).Returns(mockConnection.Object);
var clientScheduledResourceModel = new ClientScheduledResourceModel(mockEnvironmentModel.Object);
//------------Execute Test---------------------------
string errorMessage;
var saved = clientScheduledResourceModel.Save(scheduledResourceForTest, out errorMessage);
//------------Assert Results-------------------------
mockConnection.Verify(connection => connection.ExecuteCommand(It.IsAny<StringBuilder>(), It.IsAny<Guid>()), Times.Once());
Assert.IsFalse(saved);
Assert.AreEqual("Error occurred", errorMessage);
}