public async Task PostMethodSetsLocationHeader() { // Arrange UserDto userDto = new UserDto { Name = "Prueba", BirthDate = new DateTime(1945, 2, 5) }; _addUserService.Stub(s => s.AddUser(userDto)).Return(Task.CompletedTask); _getUserService.Stub(g => g.GetUserAll()).Return(Task.FromResult <IEnumerable <UserDto> >(GetUserDtoAll().AsEnumerable())); var controller = new AddUserController( _addUserService, _getUserService); // Act IHttpActionResult actionResult = await controller.Post(userDto); var createdResult = actionResult as CreatedAtRouteNegotiatedContentResult <UserDto>; // Assert Assert.IsNotNull(createdResult); Assert.AreEqual("GetById", createdResult.RouteName); Assert.AreEqual(2, createdResult.RouteValues["id"]); }
public async Task PostReturnsThrowExceptionUserHasNotLegalAge() { // Arrange UserDto userDto = new UserDto { Id = 1, Name = "Prueba", BirthDate = new DateTime(1945, 2, 5) }; _addUserService.Stub(s => s.AddUser(userDto)) .Throw(new BusinessException(Resource.ExceptionUserMustBeLegalAge)); var controller = new AddUserController( _addUserService, _getUserService); // Act IHttpActionResult actionResult = await controller.Post(userDto); }