public void Validate_Success()
        {
            var request = new DeleteLogbookEntry(new Guid("F9AD80DE-50A2-4229-9A1D-69CFDE231A4E"));

            var validationResult = validator.Validate(request);

            validationResult.IsValid.Should().BeTrue();
        }
        public async Task Handle_NonExistingId()
        {
            var request = new DeleteLogbookEntry(new Guid("5988D38B-AB1E-4EA4-BFC3-593605553A62"));

            var result = await interactor.Handle(request, CancellationToken.None);

            result.IsSuccessful.Should().BeFalse();
            result.Errors.Should().ContainSingle(e => e.PropertyName == nameof(DeleteLogbookEntry.LogbookEntryId));
        }
        public void Validate_EmptyIdIsInvalid()
        {
            var request = new DeleteLogbookEntry(Guid.Empty);

            var validationResult = validator.Validate(request);

            validationResult.IsValid.Should().BeFalse();
            validationResult.Errors.Should()
            .ContainSingle(e => e.PropertyName == nameof(DeleteLogbookEntry.LogbookEntryId));
        }
        public async Task Handle_Success()
        {
            var request = new DeleteLogbookEntry(validLogbookEntryId);

            var result = await interactor.Handle(request, CancellationToken.None);

            result.IsSuccessful.Should().BeTrue();
            validLogbookEntry.UncommittedDomainEvents.Should()
            .ContainSingle(e =>
                           e.GetType() == typeof(LogbookEntryDeletedEvent) &&
                           ((LogbookEntryDeletedEvent)e).LogbookEntryId == validLogbookEntryId);
        }