Dev2.Settings.Scheduler.ClientScheduledResourceModel.CreateHistory C# (CSharp) Method

CreateHistory() public method

public CreateHistory ( IScheduledResource resource ) : IList
resource IScheduledResource
return IList
        public IList<IResourceHistory> CreateHistory(IScheduledResource resource)
        {
            Dev2JsonSerializer jsonSerializer = new Dev2JsonSerializer();
            var builder = jsonSerializer.SerializeToBuilder(resource);
            var controller = new CommunicationController { ServiceName = "GetScheduledResourceHistoryService" };
            controller.AddPayloadArgument("Resource", builder);
            return controller.ExecuteCommand<IList<IResourceHistory>>(_model.Connection, _model.Connection.WorkspaceID);
        }

Usage Example

 public void ClientScheduledResourceModel_CreateHistory_ReturnsListOfIResourceHistory()
 {
     //------------Setup for test--------------------------
     var scheduledResourceForTest = new ScheduledResourceForTest();
     var resourceHistory = new ResourceHistoryForTest();
     var listOfHistoryResources = new List<IResourceHistory> { resourceHistory };
     Dev2JsonSerializer serializer = new Dev2JsonSerializer();
     var serializeObject = serializer.SerializeToBuilder(listOfHistoryResources);
     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>())).Returns(serializeObject);
     mockConnection.Setup(connection => connection.WorkspaceID).Returns(Guid.NewGuid());
     mockEnvironmentModel.Setup(model => model.Connection).Returns(mockConnection.Object);
     var clientScheduledResourceModel = new ClientScheduledResourceModel(mockEnvironmentModel.Object);
     //------------Execute Test---------------------------
     var resourceHistories = clientScheduledResourceModel.CreateHistory(scheduledResourceForTest);
     //------------Assert Results-------------------------
     mockConnection.Verify(connection => connection.ExecuteCommand(It.IsAny<StringBuilder>(), It.IsAny<Guid>()), Times.Once());
     Assert.AreEqual(1, resourceHistories.Count);
 }