public async void TestVoteFunctionality() { UserManager <ApplicationUser> userManager = MockUserManager(); var mockVoteService = new Mock <IVotesService>(); mockVoteService.Setup(x => x.VoteAsync(VotesControllerTest.FirstTestImageId, It.IsAny <string>(), true)) .ReturnsAsync(false); mockVoteService.Setup(x => x.VoteAsync(VotesControllerTest.FirstTestImageId, It.IsAny <string>(), false)) .ReturnsAsync(true); var mockImageService = new Mock <IImagesService>(); mockImageService.Setup(x => x.GetImageById <Image>(It.IsAny <string>())) .Returns(new Image() { Id = VotesControllerTest.FirstTestImageId, }); VotesController controller = new VotesController( userManager, mockVoteService.Object, mockImageService.Object).WithIdentity(FirstTestUserId, "TestUser"); VoteInputModel model = new VoteInputModel() { ImageId = VotesControllerTest.FirstTestImageId, IsLike = false, }; ActionResult <VoteResponseModel> result = await controller.Index(model); Assert.True(result.Value.Result); model.IsLike = true; result = await controller.Index(model); Assert.False(result.Value.Result); }
public async void ValidateInputModel() { UserManager <ApplicationUser> userManager = MockUserManager(); var mockVoteService = new Mock <IVotesService>(); var mockImageService = new Mock <IImagesService>(); VotesController controller = new VotesController( userManager, mockVoteService.Object, mockImageService.Object).WithIdentity(FirstTestUserId, "TestUser"); ActionResult <VoteResponseModel> result = await controller.Index(null); Assert.IsType <BadRequestResult>(result.Result); result = await controller.Index(new VoteInputModel() { ImageId = null, }); Assert.IsType <BadRequestResult>(result.Result); }