예제 #1
0
        public void Get_Always_CallsRepositoryWithId()
        {
            // arrange
            const int TAG_ID = 123;

            // act
            _tagsController.Get(TAG_ID);

            // assert
            _mockTagRepository.Verify(r => r.Fetch(It.Is <long>(p => p == TAG_ID)));
        }
예제 #2
0
        public void Can_Get_All_Tags_From_Controller()
        {
            var controller = new TagsController();
            var allTags    = controller.Get().ToList();

            Assert.That(allTags, Has.Count.GreaterThan(0));
        }
예제 #3
0
        public void Can_Get_Tag_By_Id_From_Controller()
        {
            const int id = 1;

            var controller = new TagsController();
            var tag        = controller.Get(id);

            Assert.That(tag.Id, Is.EqualTo(id));
        }
예제 #4
0
        public void Get_Returns_All_Tags_For_Review()
        {
            int reviewId     = 42;
            var expectedTags = new List <Tag>();

            tagsRepo.GetTagsForReviewId(reviewId).Returns(expectedTags);

            var result = underTest.Get(reviewId);

            Assert.Same(expectedTags, result);
        }
        public void GetAll_Returns_All_Tags_For_Given_Review()
        {
            var reviewId      = 42;
            var expectedModel = new List <Tag>();
            var tagRepo       = Substitute.For <ITagRepository>();

            tagRepo.GetTagsForReviewId(reviewId).Returns(expectedModel);
            var underTest = new TagsController(tagRepo);

            var model = underTest.Get(reviewId);

            Assert.Same(expectedModel, model);
        }
예제 #6
0
        public void Get_GetTopTags_ReturnTags()
        {
            // Arrange
            var controller = new TagsController(tagServiceMock.Object);

            tagServiceMock.Setup(service => service.GetTop()).Returns(Mapper.Map <IEnumerable <TagDTO> >(unitOfWork.TagManager.Get()));

            // Act
            var result = controller.Get() as OkNegotiatedContentResult <IEnumerable <TagViewModel> >;

            // Assert
            Assert.AreEqual(4, result.Content.Count());
        }
예제 #7
0
        public async Task GetWithParamsShouldReturnOkResult()
        {
            // Arrange
            var fakeSql = Substitute.For<IDatabase>();

            var controller = new TagsController(fakeSql);

            // Act
            var result = await controller.Get(1);

            // Assert
            var viewResult = Assert.IsType<OkNegotiatedContentResult<Tag>>(result);
            Assert.NotNull(viewResult);
        }
예제 #8
0
        public async Task GetWithParamsShouldReturnOkResult()
        {
            // Arrange
            var fakeSql = Substitute.For <IDatabase>();

            var controller = new TagsController(fakeSql);

            // Act
            var result = await controller.Get(1);

            // Assert
            var viewResult = Assert.IsType <OkNegotiatedContentResult <Tag> >(result);

            Assert.NotNull(viewResult);
        }
예제 #9
0
        public async void Get_Not_Exists()
        {
            TagsControllerMockFacade mock = new TagsControllerMockFacade();

            mock.ServiceMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult <ApiTagsResponseModel>(null));
            TagsController controller = new TagsController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object);

            controller.ControllerContext             = new ControllerContext();
            controller.ControllerContext.HttpContext = new DefaultHttpContext();

            IActionResult response = await controller.Get(default(int));

            response.Should().BeOfType <StatusCodeResult>();
            (response as StatusCodeResult).StatusCode.Should().Be((int)HttpStatusCode.NotFound);
            mock.ServiceMock.Verify(x => x.Get(It.IsAny <int>()));
        }
예제 #10
0
        public void ShouldRetrieveAllTags()
        {
            var mockRepository = new Mock <ITagRepository>();

            mockRepository.Setup(r => r.GetAll()).Returns(() =>
            {
                var result = new List <Tag>();
                result.Add(new Tag());
                result.Add(new Tag());
                return(result.AsQueryable());
            });

            var tagsController = new TagsController(mockRepository.Object);
            var tags           = tagsController.Get();

            Assert.AreEqual(tags.Count(), 2);
        }
예제 #11
0
        public void ShouldRetrieveATag()
        {
            var tagName = "myTag";

            var mockRepository = new Mock <ITagRepository>();

            mockRepository.Setup(r => r.Get(tagName)).Returns(() =>
            {
                return(new Tag()
                {
                    Name = tagName
                });
            });

            var tagsController = new TagsController(mockRepository.Object);
            var tag            = tagsController.Get(tagName);

            Assert.AreEqual(tag.Name, tagName);
        }
예제 #12
0
        public async Task Get()
        {
            var tags = _fixture.CreateMany <Tag>(10);

            _photosService.Setup(m => m.GetTags(true)).ReturnsAsync(tags);

            var response = await _tagsController.Get();

            _photosService.Verify(m => m.GetTags(true),
                                  Times.Once);

            Assert.IsType <OkObjectResult>(response);

            var value = ((OkObjectResult)response).Value;

            Assert.IsType <List <Dto.Tag> >(value);

            var dtos = value as List <Dto.Tag>;

            Assert.Equal(tags.Count(), dtos.Count);
        }
예제 #13
0
        public void TagsControllerGet()
        {
            var results = _ctrl.Get(0, 0);

            Assert.IsNotNull(results);
        }