public void Delete_WhenDeletesSuccessfuly_ThenReturnsOk()
        {
            // Arrange
            var sut = new ReactionsController(_reactionsServiceMock.Object, _mapperMock.Object);

            var request = new ReactionDeleteRequest
            {
                Id    = Guid.Parse("5304F61E-F365-4013-8F89-D2BEC135B7CA"),
                Token = "MHZ52UYA1ZL"
            };

            _reactionsServiceMock
            .Setup(s => s.Delete(request.Token, request.Id));

            // Act
            var actual = sut.Delete(request) as OkObjectResult;

            // Assert
            actual.Value.ShouldBe("Reaction deleted!");

            _mockRepository.VerifyAll();
        }
        public void Delete_WhenServiceThrowsUnauthorized_ThenReturnsUnauthorized()
        {
            // Arrange
            var sut = new ReactionsController(_reactionsServiceMock.Object, _mapperMock.Object);

            var request = new ReactionDeleteRequest
            {
                Id    = Guid.Parse("5304F61E-F365-4013-8F89-D2BEC135B7CA"),
                Token = "MHZ52UYA1ZL"
            };

            _reactionsServiceMock
            .Setup(s => s.Delete(request.Token, request.Id))
            .Throws <UnauthorizedException>();

            // Act
            var actual = sut.Delete(request);

            // Assert
            actual.ShouldBeOfType <UnauthorizedResult>();

            _mockRepository.VerifyAll();
        }