Пример #1
0
        public async Task Setup()
        {
            _post = PostFactories.Post();
            _post.Delete();

            _command = new RestorePost
            {
                BlogId          = Guid.NewGuid(),
                AggregateRootId = Guid.NewGuid()
            };

            _postRepositoryMock = new Mock <IPostRepository>();
            _postRepositoryMock
            .Setup(x => x.GetByIdAsync(_command.BlogId, _command.AggregateRootId))
            .ReturnsAsync(_post);
            _postRepositoryMock
            .Setup(x => x.UpdateAsync(It.IsAny <Post>()))
            .Callback <Post>(p => _updatedPost = p)
            .Returns(Task.CompletedTask);

            _commandHandler = new RestorePostHandler(_postRepositoryMock.Object);
            _result         = await _commandHandler.HandleAsync(_command);

            _event = _updatedPost.Events.OfType <PostRestored>().Single();
        }
Пример #2
0
        public async Task <IActionResult> Restore(Guid id)
        {
            var command = new RestorePost {
                BlogId = BlogId, AggregateRootId = id
            };
            await _mediator.SendAndPublishAsync <RestorePost, Post>(command);

            return(new NoContentResult());
        }