Ejemplo n.º 1
0
        public IActionResult GetMetricsByTimePeriod([FromRoute] RamMetricGetByTimePeriodRequest request)
        {
            logger.LogInformation($"From={request.From}|To={request.To}");
            var requestDAL = mapper.Map <DAL.Requests.RamMetricGetByTimePeriodRequest>(request);
            var metrics    = repository.GetByTimePeriod(requestDAL);
            var response   = new RamMetricsResponse();

            response.Metrics = metrics.Select(metric => mapper.Map <RamMetricDto>(metric)).ToList();
            return(Ok(response));
        }
Ejemplo n.º 2
0
        public IList <RamMetric> GetByTimePeriod(RamMetricGetByTimePeriodRequest request)
        {
            using var connection = Connection.New();
            var result = connection.Query <RamMetric>($"SELECT * FROM RamMetrics WHERE Time >= @from AND Time <= @to",
                                                      new
            {
                from = request.From,
                to   = request.To
            });

            return(result.AsList());
        }
Ejemplo n.º 3
0
        public void GetMetricsByTimePeriod_ReturnsOk()
        {
            //Moq Setup
            repository.Setup(r => r.GetByTimePeriod(It.IsAny <MetricsAgent.DAL.Requests.RamMetricGetByTimePeriodRequest>())).Returns(new List <RamMetric>());

            //Arrange
            RamMetricGetByTimePeriodRequest request = new RamMetricGetByTimePeriodRequest
            {
                From = DateTimeOffset.FromUnixTimeSeconds(0),
                To   = DateTimeOffset.FromUnixTimeSeconds(100)
            };

            //Act
            var result = controller.GetMetricsByTimePeriod(request);

            // Assert
            repository.Verify(r => r.GetByTimePeriod(It.IsAny <MetricsAgent.DAL.Requests.RamMetricGetByTimePeriodRequest>()), Times.AtMostOnce());
            _ = Assert.IsAssignableFrom <IActionResult>(result);
        }