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);
        }
Esempio n. 2
0
        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));
        }