diff --git a/tests/ruby/admin_spec.rb b/tests/ruby/admin_spec.rb index fceb95b..ea21630 100644 --- a/tests/ruby/admin_spec.rb +++ b/tests/ruby/admin_spec.rb @@ -71,15 +71,17 @@ describe "Admin" do context "client connects but issues no queries" do it "only affects cl_idle stats" do + admin_conn = PG::connect(processes.pgcat.admin_connection_string) + + before_test = admin_conn.async_exec("SHOW POOLS")[0]["sv_idle"] connections = Array.new(20) { PG::connect(pgcat_conn_str) } sleep(1) - admin_conn = PG::connect(processes.pgcat.admin_connection_string) results = admin_conn.async_exec("SHOW POOLS")[0] %w[cl_active cl_waiting cl_cancel_req sv_active sv_used sv_tested sv_login maxwait].each do |s| raise StandardError, "Field #{s} was expected to be 0 but found to be #{results[s]}" if results[s] != "0" end expect(results["cl_idle"]).to eq("20") - expect(results["sv_idle"]).to eq("1") + expect(results["sv_idle"]).to eq(before_test) connections.map(&:close) sleep(1.1) @@ -87,7 +89,7 @@ describe "Admin" do %w[cl_active cl_idle cl_waiting cl_cancel_req sv_active sv_used sv_tested sv_login maxwait].each do |s| raise StandardError, "Field #{s} was expected to be 0 but found to be #{results[s]}" if results[s] != "0" end - expect(results["sv_idle"]).to eq("1") + expect(results["sv_idle"]).to eq(before_test) end end