Exemplo n.º 1
0
        public async Task ShouldUpdateTodoItem()
        {
            var userId = await RunAsDefaultUserAsync();

            var listId = await SendAsync(new CreateTodoList.Command
            {
                Title = "New List"
            });

            var itemId = await SendAsync(new CreateTodoItemCommand
            {
                ListId = listId,
                Title  = "New Item"
            });

            var command = new UpdateTodoItem.Command
            {
                Id    = itemId,
                Title = "Updated Item Title"
            };

            await SendAsync(command);

            var item = await FindAsync <TodoItem>(itemId);

            item.Title.Should().Be(command.Title);
            item.LastModifiedBy.Should().NotBeNull();
            item.LastModifiedBy.Should().Be(userId);
            item.LastModified.Should().NotBeNull();
            item.LastModified.Should().BeCloseTo(DateTime.Now, 1000);
        }
        public async Task <ActionResult> Update(int id, UpdateTodoItem.Command command)
        {
            if (id != command.Id)
            {
                return(BadRequest());
            }

            await Mediator.Send(command);

            return(NoContent());
        }
        public void ShouldRequireValidTodoItemId()
        {
            var command = new UpdateTodoItem.Command
            {
                Id    = 99,
                Title = "New Title"
            };

            FluentActions.Invoking(() =>
                                   SendAsync(command)).Should().Throw <NotFoundException>();
        }