Beispiel #1
0
        public async Task GetCandidatesAverageAsync_ShouldReturnTheAverageOfTheCandidatesScores()
        {
            // Arrange
            mock.Setup(m => m.GetCandidatesAverageAsync())
            .Returns(Task.Run(() => PopulateCandidatesWithResults().Average(c => c.Score)));

            var candidatesController = new CandidatesController(mock.Object);

            double expected = PopulateCandidatesWithResults().Average(c => c.Score);

            // Act
            var result = await candidatesController.GetCandidatesAverageAsync();

            // Assert
            var okObjectResult = result as OkObjectResult;

            Assert.IsNotNull(okObjectResult);

            var actual = okObjectResult.Value;

            Assert.AreEqual(expected, actual);
        }