public static SystemMetrics GetMetrics()
        {
            var cpu    = CpuMetricsController.GetMetrics();
            var memory = MemoryMetricsController.GetMetrics();

            return(new SystemMetrics(cpu, memory));
        }
Exemple #2
0
        public void GetMetricsByInterval_ReturnsCorrectMetrics()
        {
            //Arrange
            var request = new CpuMetricGetByIntervalRequest()
            {
                FromTime = DateTimeOffset.MinValue,
                ToTime   = DateTimeOffset.Now
            };

            //фейковые метрики возвращаемые репозиторием
            var mockMetrics = new List <CpuMetric>()
            {
                { new CpuMetric()
                  {
                      Time = DateTimeOffset.MinValue, Value = 100
                  } },
                { new CpuMetric()
                  {
                      Time = DateTimeOffset.UtcNow, Value = 121
                  } }
            };

            mockRepository.
            Setup(repository => repository.GetByTimeInterval(It.IsAny <DateTimeOffset>(), It.IsAny <DateTimeOffset>())).
            Returns(mockMetrics);

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

            var response = ((result as OkObjectResult).Value as AllCpuMetricsResponse).Metrics;

            //сравнение полученных значений с ожидаемыми значениями
            bool check = true;

            if (mockMetrics.Count == response.Count)
            {
                for (int i = 0; i < mockMetrics.Count; i++)
                {
                    if ((mockMetrics[i].Value != response[i].Value) ||
                        (mockMetrics[i].Time != response[i].Time))
                    {
                        check = false;
                    }
                }
            }
            else
            {
                check = false;
            }

            // Assert
            Assert.True(check);
        }
Exemple #3
0
        public void GetMetricsFromAgent_ReturnsOk()
        {
            //Arrange
            var fromTime = TimeSpan.FromSeconds(0);
            var toTime   = TimeSpan.FromSeconds(100);

            //Act
            var result = controller.GetMetrics(fromTime, toTime);

            // Assert
            _ = Assert.IsAssignableFrom <IActionResult>(result);
        }
        public void GetMetrics_ShouldCall_GetInTimePeriod_From_Repository()
        {
            var fromTime = DateTimeOffset.MinValue;
            var toTime   = DateTimeOffset.Now;

            // Arrange
            mockRepository
            .Setup(repository => repository.GetInTimePeriod(It.IsAny <DateTimeOffset>(), It.IsAny <DateTimeOffset>()))
            .Returns(GetTestCpuMetric());

            // Act
            var result = controller.GetMetrics(fromTime, toTime);

            // Assert
            var response = ((result as OkObjectResult).Value as AllCpuMetricsResponse).Metrics;

            Assert.Equal(GetTestCpuMetric().Count, response.Count);
        }
Exemple #5
0
        public void GetMetrics_ReturnOk()
        {
            //Arrange
            var fromTime = DateTimeOffset.Now.AddDays(-4);
            var toTime   = DateTimeOffset.Now;

            mockRepository.Setup(repository => repository.GetByPeriod(It.IsAny <PeriodArgs>())).Returns(new List <CpuMetric>()
            {
                new CpuMetric()
                {
                    Time = fromTime.ToUnixTimeSeconds(), Value = 1
                }
            });

            //Act
            var result = controller.GetMetrics(fromTime, toTime);

            //Assert
            _ = Assert.IsAssignableFrom <IActionResult>(result);
        }
        public void GetCpuMetrics_returnsOk()
        {
            var actual = cpuController.GetMetrics(fromTime, toTime);

            _ = Assert.IsAssignableFrom <IActionResult>(actual);
        }