public async Task WriteBatchCallsSqlConnectionWrappeCreateSqlBulkCopyWithDisableTriggersTrue()
        {
            // Arrange
            var logEvents = CreateLogEvents();
            var expectedDestinationTableName = string.Format(CultureInfo.InvariantCulture, "[{0}].[{1}]", _schemaName, _tableName);
            var sut = new SqlBulkBatchWriter(_tableName, _schemaName, true, _sqlConnectionFactoryMock.Object, _logEventDataGeneratorMock.Object);

            // Act
            await sut.WriteBatch(logEvents, _dataTable).ConfigureAwait(false);

            // Assert
            _sqlConnectionWrapperMock.Verify(c => c.CreateSqlBulkCopy(true, expectedDestinationTableName), Times.Once);
        }
        public async Task WriteBatchCallsLogEventDataGeneratorGetColumnsAndValuesForEachLogEvent()
        {
            // Arrange
            var logEvents = CreateLogEvents();

            // Act
            await _sut.WriteBatch(logEvents, _dataTable).ConfigureAwait(false);

            // Assert
            _logEventDataGeneratorMock.Verify(c => c.GetColumnsAndValues(logEvents[0]), Times.Once);
            _logEventDataGeneratorMock.Verify(c => c.GetColumnsAndValues(logEvents[1]), Times.Once);
        }