public void Setup() { _post = PostFactories.Post(); _command = PostFactories.UpdatePostCommand(); _validatorMock = new Mock <IValidator <UpdatePost> >(); _validatorMock.Setup(x => x.Validate(_command)).Returns(new ValidationResult()); _post.Update(_command, _validatorMock.Object); _event = _post.Events.OfType <PostUpdated>().Single(); }
private void Apply(PostUpdated @event) { Title = @event.Title; Slug = @event.Slug; Excerpt = @event.Excerpt; Content = @event.Content; Tags = @event.Tags; Type = @event.Type; Status = @event.Status; StatusTimeStamp = @event.TimeStamp; }
public async Task Setup() { _post = PostFactories.Post(); _command = PostFactories.UpdatePostCommand(); _validatorMock = new Mock <IValidator <UpdatePost> >(); _validatorMock.Setup(x => x.Validate(_command)).Returns(new ValidationResult()); _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 UpdatePostHandler(_postRepositoryMock.Object, _validatorMock.Object); _result = await _commandHandler.HandleAsync(_command); _event = _updatedPost.Events.OfType <PostUpdated>().Single(); }