public async Task <ScatterPlotData[]> Get(string startDateString, string finishDateString, bool product, bool engineering, bool unanticipated, bool assessmentsTeam, bool enterpriseTeam) { var startDate = DateHelper.GetStartDate(startDateString); var finishDate = DateHelper.GetFinishDate(finishDateString); var scatterPlotHelper = new ScatterPlotHelper(); var result = await scatterPlotHelper .GetLeadTimeScatterPlotDataAsync(startDate, finishDate, product, engineering, unanticipated, assessmentsTeam, enterpriseTeam); var returning = new ScatterPlotData[result.Count]; for (var i = 0; i < result.Count; i++) { if (product) { returning[i] = result[TaskItemType.Product]; product = false; } else if (engineering) { returning[i] = result[TaskItemType.Engineering]; engineering = false; } else if (unanticipated) { returning[i] = result[TaskItemType.Unanticipated]; unanticipated = false; } } return(returning); }
public async Task When_getting_scatter_plot_data() { var mockTaskItemRepository = new Mock <TaskItemRepository>(); mockTaskItemRepository .Setup(x => x.GetTaskItemListAsync(It.IsAny <DateTimeOffset?>(), It.IsAny <DateTimeOffset?>())) .ReturnsAsync(taskItems); var scatterPlotHelper = new ScatterPlotHelper(mockTaskItemRepository.Object); var result = await scatterPlotHelper.GetLeadTimeScatterPlotDataAsync(new DateTimeOffset(new DateTime(2021, 1, 11)), new DateTimeOffset(new DateTime(2021, 1, 16)), true, true, true, true, true); Console.WriteLine(); Assert.That(result.Values.First().data[0].y, Is.EqualTo(8)); Assert.That(result.Values.First().data[1].y, Is.EqualTo(16)); Assert.That(result.Values.First().data[2].y, Is.EqualTo(24)); Assert.That(result.Values.First().data[3].y, Is.EqualTo(32)); Assert.That(result.Values.First().data[4].y, Is.EqualTo(40)); Assert.That(result.Values.Last().data[0].y, Is.EqualTo(40)); Assert.That(result.Values.Last().data[1].y, Is.EqualTo(40)); Assert.That(result.Values.Last().data[2].y, Is.EqualTo(24)); Assert.That(result.Values.Last().data[3].y, Is.EqualTo(8)); Assert.That(result.Values.Last().data[4].y, Is.EqualTo(8)); Assert.That(result.Values.Last().data[5].y, Is.EqualTo(96)); }