Esempio n. 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);
        }