public void GetMetricsByInterval_ReturnsCorrectMetrics() { //Arrange //Arrange var request = new DotNetMetricGetByIntervalRequest() { FromTime = DateTimeOffset.MinValue, ToTime = DateTimeOffset.Now }; //фейковые метрики возвращаемые репозиторием var mockMetrics = new List <DotNetMetric>() { { new DotNetMetric() { Time = DateTimeOffset.MinValue, Value = 100 } }, { new DotNetMetric() { 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 AllDotNetMetricsResponse).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); }
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(GetTestDotNetMetric()); // Act var result = controller.GetMetrics(fromTime, toTime); // Assert var response = ((result as OkObjectResult).Value as AllDotNetMetricsResponse).Metrics; Assert.Equal(GetTestDotNetMetric().Count, response.Count); }