public void SaveEvents_When_NullCommand_Throws_ArgumentNullException()
        {
            SaveDomainEventsCommand command = null;
            var useCase = new SaveEventUseCase(Mock.Of <ISaveDomainEventsHandler>());

            Func <Task> saveEvents = async() => await useCase.SaveEvents(command);

            saveEvents.Should().ThrowArgumentNullException(nameof(SaveDomainEventsCommand));
        }
        public async Task SaveEvents_Calls_SaveEventHandler()
        {
            var handlerMock = new Mock <ISaveDomainEventsHandler>();
            var useCase     = new SaveEventUseCase(handlerMock.Object);
            var command     = Any <SaveDomainEventsCommand>();

            await useCase.SaveEvents(command);

            handlerMock.Verify(h => h.Handle(command));
        }