Пример #1
0
        public async Task Post_ReturnsCreatedAtRouteResult()
        {
            // Given
            var request = new NameCreateRequestModel {
                Name = "Joe Bloggs"
            };
            var id           = 1;
            var repoResponse = new NameModel {
                Id = id, Name = request.Name, DateCreated = DateTime.Now
            };

            _mockNameRepository.Setup(repo => repo.AddNameAsync(It.IsAny <string>()))
            .ReturnsAsync(repoResponse);

            // When
            var actionResult = await _nameController.PostAsync(request);

            // Then
            var createdAtRouteResult = actionResult.Result as CreatedAtRouteResult;

            Assert.NotNull(createdAtRouteResult);

            Assert.Equal(nameof(_nameController.GetByIdAsync), createdAtRouteResult.RouteName);
            createdAtRouteResult.RouteValues.TryGetValue("Id", out var IdRouteValue);
            Assert.Equal(id, (int)IdRouteValue);
        }
Пример #2
0
        public async Task <ActionResult <NameResponseModel> > PostAsync([FromBody] NameCreateRequestModel model)
        {
            var nameModel = await _nameRepository.AddNameAsync(model.Name);

            var responseModel = _mapper.Map <NameResponseModel>(nameModel);

            return(CreatedAtRoute(nameof(GetByIdAsync), new { id = responseModel.Id }, responseModel));
        }