From 1320fa6efd986832bf798792e83917684394dd99 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Tue, 31 Jan 2017 14:36:15 +0000 Subject: Use temporary connection pool for sqlite3_mem adapter Fixes #27826 Refer https://github.com/rails/rails/commit/f7b317175430a2d9300d9c4acfc1f34f4fdb2fbc --- activerecord/test/cases/query_cache_test.rb | 33 +++++++++++++++++++---------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/activerecord/test/cases/query_cache_test.rb b/activerecord/test/cases/query_cache_test.rb index 04e48e201e..d8cf235000 100644 --- a/activerecord/test/cases/query_cache_test.rb +++ b/activerecord/test/cases/query_cache_test.rb @@ -286,19 +286,30 @@ class QueryCacheTest < ActiveRecord::TestCase end def test_cache_is_not_available_when_using_a_not_connected_connection - spec_name = Task.connection_specification_name - conf = ActiveRecord::Base.configurations["arunit"].merge("name" => "test2") - ActiveRecord::Base.connection_handler.establish_connection(conf) - Task.connection_specification_name = "test2" - refute Task.connected? + with_temporary_connection_pool do + spec_name = Task.connection_specification_name + conf = ActiveRecord::Base.configurations["arunit"].merge("name" => "test2") + ActiveRecord::Base.connection_handler.establish_connection(conf) + Task.connection_specification_name = "test2" + refute Task.connected? - Task.cache do - Task.connection # warmup postgresql connection setup queries - assert_queries(2) { Task.find(1); Task.find(1) } + Task.cache do + begin + if in_memory_db? + Task.connection.create_table :tasks do |t| + t.datetime :starting + t.datetime :ending + end + ActiveRecord::FixtureSet.create_fixtures(self.class.fixture_path, ["tasks"], {}, ActiveRecord::Base) + end + Task.connection # warmup postgresql connection setup queries + assert_queries(2) { Task.find(1); Task.find(1) } + ensure + ActiveRecord::Base.connection_handler.remove_connection(Task.connection_specification_name) + Task.connection_specification_name = spec_name + end + end end - ensure - ActiveRecord::Base.connection_handler.remove_connection(Task.connection_specification_name) - Task.connection_specification_name = spec_name end def test_query_cache_executes_new_queries_within_block -- cgit v1.2.3 From 5213643ed9e17d0e90789bb6492e0ba87fe61788 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Tue, 31 Jan 2017 16:23:13 +0000 Subject: Add sqlite3_mem adapter to Travis CI --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index ff72542025..eafa06e44f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -81,6 +81,9 @@ matrix: - "GEM=ar:mysql2 MYSQL=mariadb" addons: mariadb: 10.0 + - rvm: 2.4.0 + env: + - "GEM=ar:sqlite3_mem" - rvm: jruby-9.1.7.0 jdk: oraclejdk8 env: -- cgit v1.2.3