예제 #1
0
        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));
            }
        }
예제 #2
0
        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);
        }