Npgsql.Tests.ConnectionTests.CloseDuringRead C# (CSharp) Method

CloseDuringRead() private method

private CloseDuringRead ( bool pooled ) : void
pooled bool
return void
        public void CloseDuringRead(bool pooled)
        {
            var csb = new NpgsqlConnectionStringBuilder(ConnectionString);
            if (pooled)
                csb.MaxPoolSize = 1;
            else
                csb.Pooling = false;

            var conn = OpenConnection(csb);
            var connectorId = conn.ProcessID;
            using (var cmd = new NpgsqlCommand("SELECT 1", conn))
            using (var reader = cmd.ExecuteReader())
            {
                reader.Read();
                conn.Close();
                Assert.That(conn.State, Is.EqualTo(ConnectionState.Closed));
                Assert.That(reader.IsClosed);
            }

            conn.Open();
            if (pooled)   // Make sure we can reuse the pooled connector
                Assert.That(conn.ProcessID, Is.EqualTo(connectorId));
            Assert.That(conn.FullState, Is.EqualTo(ConnectionState.Open));
            Assert.That(conn.ExecuteScalar("SELECT 1"), Is.EqualTo(1));
        }