public void TestDeleteNutrition_ShouldCallAuthenticationProviderCurrentUserId(int id, string userId)
        {
            // Arrange
            var mockedFactory                = new Mock <IViewModelFactory>();
            var mockedDateTimeProvider       = new Mock <IDateTimeProvider>();
            var mockedNutritionService       = new Mock <INutritionService>();
            var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>();

            var controller = new NutritionController(mockedFactory.Object, mockedDateTimeProvider.Object,
                                                     mockedNutritionService.Object, mockedAuthenticationProvider.Object);

            // Act
            controller.DeleteNutrition(id);

            // Assert
            mockedAuthenticationProvider.Verify(p => p.CurrentUserId, Times.Once);
        }
        public void TestDeleteNutrition_ShouldReturnNull(int id, string userId)
        {
            // Arrange
            var mockedFactory          = new Mock <IViewModelFactory>();
            var mockedDateTimeProvider = new Mock <IDateTimeProvider>();
            var mockedNutritionService = new Mock <INutritionService>();

            var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>();

            mockedAuthenticationProvider.Setup(p => p.CurrentUserId).Returns(userId);

            var controller = new NutritionController(mockedFactory.Object, mockedDateTimeProvider.Object,
                                                     mockedNutritionService.Object, mockedAuthenticationProvider.Object);

            // Act
            var result = controller.DeleteNutrition(id);

            // Assert
            Assert.IsNull(result);
        }