aboutsummaryrefslogblamecommitdiffstats
path: root/activerecord/test/cases/adapters/sqlite3/statement_pool_test.rb
blob: 37ff973397b02f51529389c263b1f86e0e8eb358 (plain) (tree)
1
2
3
4
5
6
7
8
9
                      
 


                                                              
                                                                                     

                                      
 
                  
                              

                      
 
                         
                                                            


       
require "cases/helper"

class SQLite3StatementPoolTest < ActiveRecord::SQLite3TestCase
  if Process.respond_to?(:fork)
    def test_cache_is_per_pid
      cache = ActiveRecord::ConnectionAdapters::SQLite3Adapter::StatementPool.new(10)
      cache["foo"] = "bar"
      assert_equal "bar", cache["foo"]

      pid = fork {
        lookup = cache["foo"];
        exit!(!lookup)
      }

      Process.waitpid pid
      assert $?.success?, "process should exit successfully"
    end
  end
end