public void GetByTestId_WhenCorrectIdGiven_ShouldReturnJsonViewModel() { var testId = 1; var results = new List <Result> { new Result { Id = 1, Text = "Text1", TestId = testId }, new Result { Id = 2, Text = "Text2", TestId = testId } }; _mockRepo.Setup(x => x.GetResults(testId)).Returns(Task.FromResult(results)); var result = _sut.GetByTestId(testId).Result as JsonResult; Assert.IsNotNull(result); var viewModelsCollection = result.GetIEnumberableFromJsonResult <ResultViewModel>().ToList(); foreach (var resultModel in results) { Assert.IsTrue(viewModelsCollection.Any(x => x.Text == resultModel.Text)); Assert.IsTrue(viewModelsCollection.Any(x => x.Id == resultModel.Id)); Assert.IsTrue(viewModelsCollection.Any(x => x.TestId == testId)); } }
public async Task GetByTestId_CorrectIdGiven_ReturnsJsonViewModel() { var queryResult = _fixture.Create <GetResultsQueryResult>(); var testId = _fixture.Create <int>(); _queryDispatcherMock.Setup(x => x.DispatchAsync <GetResultsQuery, GetResultsQueryResult>(It.IsAny <GetResultsQuery>())) .Returns(Task.FromResult(queryResult)); var result = await _controller.GetByTestId(testId) as JsonResult; Assert.IsNotNull(result); Assert.AreEqual(result.GetIEnumberableFromJsonResult <ResultViewModel>().Count(), queryResult.Results.Count()); Assert.AreEqual(result.GetIEnumberableFromJsonResult <ResultViewModel>().First().Text, queryResult.Results.First().Text); Assert.AreEqual(result.GetIEnumberableFromJsonResult <ResultViewModel>().First().Id, queryResult.Results.First().Id); }