docs consolidation

This commit is contained in:
master
2026-01-07 10:23:21 +02:00
parent 4789027317
commit 044cf0923c
515 changed files with 5460 additions and 5292 deletions

View File

@@ -59,7 +59,7 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
// Verify connection works
using var connection = new Npgsql.NpgsqlConnection(_connectionString);
await connection.OpenAsync();
await connection.OpenAsync(TestContext.Current.CancellationToken);
connection.State.Should().Be(System.Data.ConnectionState.Open);
}
@@ -78,13 +78,14 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
public async Task Database_CanCreateAndVerifySchema()
{
// Arrange
var ct = TestContext.Current.CancellationToken;
using var connection = new Npgsql.NpgsqlConnection(_connectionString);
await connection.OpenAsync();
await connection.OpenAsync(ct);
// Act - Create a test schema
using var createCmd = connection.CreateCommand();
createCmd.CommandText = "CREATE SCHEMA IF NOT EXISTS test_platform";
await createCmd.ExecuteNonQueryAsync();
await createCmd.ExecuteNonQueryAsync(ct);
// Assert - Verify schema exists
using var verifyCmd = connection.CreateCommand();
@@ -92,7 +93,7 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
SELECT schema_name
FROM information_schema.schemata
WHERE schema_name = 'test_platform'";
var result = await verifyCmd.ExecuteScalarAsync();
var result = await verifyCmd.ExecuteScalarAsync(ct);
result.Should().Be("test_platform");
}
@@ -100,8 +101,9 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
public async Task Database_CanPerformCrudOperations()
{
// Arrange
var ct = TestContext.Current.CancellationToken;
using var connection = new Npgsql.NpgsqlConnection(_connectionString);
await connection.OpenAsync();
await connection.OpenAsync(ct);
// Create test table
using var createCmd = connection.CreateCommand();
@@ -111,33 +113,33 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
name VARCHAR(100) NOT NULL,
created_at TIMESTAMPTZ DEFAULT NOW()
)";
await createCmd.ExecuteNonQueryAsync();
await createCmd.ExecuteNonQueryAsync(ct);
// Act - Insert
using var insertCmd = connection.CreateCommand();
insertCmd.CommandText = "INSERT INTO test_crud (name) VALUES ('test-record') RETURNING id";
var insertedId = await insertCmd.ExecuteScalarAsync();
var insertedId = await insertCmd.ExecuteScalarAsync(ct);
insertedId.Should().NotBeNull();
// Act - Select
using var selectCmd = connection.CreateCommand();
selectCmd.CommandText = "SELECT name FROM test_crud WHERE id = @id";
selectCmd.Parameters.AddWithValue("id", insertedId!);
var name = await selectCmd.ExecuteScalarAsync();
var name = await selectCmd.ExecuteScalarAsync(ct);
name.Should().Be("test-record");
// Act - Update
using var updateCmd = connection.CreateCommand();
updateCmd.CommandText = "UPDATE test_crud SET name = 'updated-record' WHERE id = @id";
updateCmd.Parameters.AddWithValue("id", insertedId!);
var rowsAffected = await updateCmd.ExecuteNonQueryAsync();
var rowsAffected = await updateCmd.ExecuteNonQueryAsync(ct);
rowsAffected.Should().Be(1);
// Act - Delete
using var deleteCmd = connection.CreateCommand();
deleteCmd.CommandText = "DELETE FROM test_crud WHERE id = @id";
deleteCmd.Parameters.AddWithValue("id", insertedId!);
rowsAffected = await deleteCmd.ExecuteNonQueryAsync();
rowsAffected = await deleteCmd.ExecuteNonQueryAsync(ct);
rowsAffected.Should().Be(1);
}
@@ -149,8 +151,9 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
public async Task Database_CanRunDdlMigrations()
{
// Arrange
var ct = TestContext.Current.CancellationToken;
using var connection = new Npgsql.NpgsqlConnection(_connectionString);
await connection.OpenAsync();
await connection.OpenAsync(ct);
// Act - Run a migration-like DDL script
var migrationScript = @"
@@ -177,12 +180,12 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
using var migrateCmd = connection.CreateCommand();
migrateCmd.CommandText = migrationScript;
await migrateCmd.ExecuteNonQueryAsync();
await migrateCmd.ExecuteNonQueryAsync(ct);
// Assert - Verify migration recorded
using var verifyCmd = connection.CreateCommand();
verifyCmd.CommandText = "SELECT COUNT(*) FROM schema_migrations WHERE version = 'V2_create_scan_results'";
var count = await verifyCmd.ExecuteScalarAsync();
var count = await verifyCmd.ExecuteScalarAsync(ct);
Convert.ToInt32(count).Should().Be(1);
}
@@ -190,18 +193,19 @@ public class PostgresOnlyStartupTests : IAsyncLifetime
public async Task Database_CanCreateExtensions()
{
// Arrange
var ct = TestContext.Current.CancellationToken;
using var connection = new Npgsql.NpgsqlConnection(_connectionString);
await connection.OpenAsync();
await connection.OpenAsync(ct);
// Act - Create common extensions used by StellaOps
using var extCmd = connection.CreateCommand();
extCmd.CommandText = "CREATE EXTENSION IF NOT EXISTS \"uuid-ossp\"";
await extCmd.ExecuteNonQueryAsync();
await extCmd.ExecuteNonQueryAsync(ct);
// Assert - Verify extension exists
using var verifyCmd = connection.CreateCommand();
verifyCmd.CommandText = "SELECT COUNT(*) FROM pg_extension WHERE extname = 'uuid-ossp'";
var count = await verifyCmd.ExecuteScalarAsync();
var count = await verifyCmd.ExecuteScalarAsync(ct);
Convert.ToInt32(count).Should().Be(1);
}