From 1b11dba97b27142699f0ff38a55a80e0d06d8a62 Mon Sep 17 00:00:00 2001 From: "Dailey, Alaric" Date: Tue, 20 Oct 2026 07:41:03 -0500 Subject: [PATCH] Test closing a never-opened connection --- DuckDB.NET.Test/DuckDBConnectionTests.cs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/DuckDB.NET.Test/DuckDBConnectionTests.cs b/DuckDB.NET.Test/DuckDBConnectionTests.cs index a446d35a..1d62248d 100644 --- a/DuckDB.NET.Test/DuckDBConnectionTests.cs +++ b/DuckDB.NET.Test/DuckDBConnectionTests.cs @@ -73,6 +73,21 @@ public async Task CloseCanBeCalledMoreThanOnce() stateChanges.Should().Be(1, "only the first Close changes the state"); } + [Fact] + [Trait("Category", "Baseline")] + public async Task CloseNeverOpenedConnectionDoesNotThrow() + { + await using var duckDBConnection = new DuckDBConnection("DataSource=:memory:"); + var stateChanges = 0; + duckDBConnection.StateChange += (_, _) => stateChanges++; + + duckDBConnection.Close(); + await duckDBConnection.CloseAsync(); + + duckDBConnection.State.Should().Be(ConnectionState.Closed); + stateChanges.Should().Be(0, "a connection that was never opened does not change state"); + } + [Fact] [Trait("Category", "Baseline")] public async Task CloseAfterDisposeDoesNotThrow() @@ -552,4 +567,4 @@ public void ConnectionSetsDuckDBApiConfigOption() value.Should().StartWith("DuckDB.NET"); } } -} \ No newline at end of file +}