Ejemplo n.º 1
0
        public async Task <IActionResult> Create([FromBody] InputMealDto meal)
        {
            // TODO: Fix validation attribute, it's not working as expected.
            if (meal == null)
            {
                return(BadRequest());
            }

            var result = await _mealService.CreateAsync(
                _mapper.Map <Meal>(meal));

            return(CreatedAtAction(
                       nameof(Get),
                       new { id = result.Id },
                       _mapper.Map <MealDto>(result)));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Create([FromBody] MealDto mealDto)
        {
            _logger.LogInformation("Entered in [POST] /meals endpoint with mealDto {}", mealDto);
            IActionResult result;
            var           newMeal = await _mealService.CreateAsync(mealDto);

            _logger.LogDebug("New meal: {}", newMeal);

            if (newMeal != null)
            {
                result = Created("", newMeal);
            }
            else
            {
                result = BadRequest();
            }

            return(result);
        }
Ejemplo n.º 3
0
        public async Task Create_WhenCalled_ReturnsMeal()
        {
            // Arrange
            var mealDto = new MealDto
            {
                Name = "MealDto 1"
            };
            var expectedMealDto = new MealDto
            {
                Id   = 1,
                Name = "MealDto 1"
            };

            _mockRepository.Setup(r => r.CreateAsync(mealDto)).ReturnsAsync(expectedMealDto);

            // Act
            var mealResult = await _sut.CreateAsync(mealDto);

            // Assert
            _mockRepository.Verify(r => r.CreateAsync(It.IsAny <MealDto>()), Times.Once);
            mealResult.Should().NotBeNull();
            mealResult.Should().BeEquivalentTo(expectedMealDto);
        }