public async Task Should_delete_staging_table_when_empty()
        {
            var sut = new SqlTTimeoutsTarget(new TestLoggingAdapter(), connectionString, schema);

            await using var connection = new SqlConnection(connectionString);
            await connection.OpenAsync();

            await SqlTQueueCreator.CreateStagingQueue(connection, SqlConstants.TimeoutMigrationStagingTable, schema, connection.Database, preview : false);

            await sut.Complete(ExistingEndpointName);

            var sqlStatement = $"SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = '{SqlConstants.TimeoutMigrationStagingTable}' AND TABLE_CATALOG = '{databaseName}'";

            await using var command = new SqlCommand(sqlStatement, connection)
                        {
                            CommandType = CommandType.Text
                        };
            var result = await command.ExecuteScalarAsync().ConfigureAwait(false) as int?;

            Assert.That(result, Is.EqualTo(0));
        }
        public async Task Should_throw_when_staging_table_not_empty()
        {
            var sut = new SqlTTimeoutsTarget(new TestLoggingAdapter(), connectionString, schema);

            await using var connection = new SqlConnection(connectionString);
            await connection.OpenAsync();

            await SqlTQueueCreator.CreateStagingQueue(connection, SqlConstants.TimeoutMigrationStagingTable, schema, connection.Database, preview : false);

            var sql =
                $"INSERT INTO {schema}.{SqlConstants.TimeoutMigrationStagingTable} VALUES('headers', NULL, DATEADD(DAY, 1, GETDATE()))";

            await using var command = new SqlCommand(sql, connection)
                        {
                            CommandType = CommandType.Text
                        };
            await command.ExecuteNonQueryAsync();

            Assert.ThrowsAsync <Exception>(async() =>
            {
                await sut.Complete(ExistingEndpointName);
            });
        }