diff --git a/Appraisals b/Appraisals index d8a85757..44bc7e59 100644 --- a/Appraisals +++ b/Appraisals @@ -1,11 +1,14 @@ -appraise "rails2" do +appraise "rails2, mysql" do gem "activerecord", "2.3.14" + gem "mysql" end -appraise "rails3.1" do - gem "activerecord", "3.1.3" +appraise "rails2, mysql2" do + gem "activerecord", "2.3.14" + gem "mysql2", :git => "git://github.com/osheroff/mysql2.git", :ref => "a1ab7ba" end -appraise "rails3.2" do - gem "activerecord", "~>3.2.0" +appraise "rails3.2, mysql2" do + gem "activerecord", "~> 3.2.0.rc2" + gem "mysql2", :git => "git://github.com/brianmario/mysql2.git", :ref => "d81ba9" end diff --git a/Rakefile b/Rakefile index dba6fa24..2be82d3a 100644 --- a/Rakefile +++ b/Rakefile @@ -1,7 +1,7 @@ require 'rubygems' +require 'appraisal' require 'bundler/setup' -require 'appraisal' require 'rake/testtask' Rake::TestTask.new(:test) do |test| test.libs << 'lib' << 'test' diff --git a/lib/active_record_host_pool/connection_adapter_mixin.rb b/lib/active_record_host_pool/connection_adapter_mixin.rb index f7e4f80c..4d9a8c69 100644 --- a/lib/active_record_host_pool/connection_adapter_mixin.rb +++ b/lib/active_record_host_pool/connection_adapter_mixin.rb @@ -1,5 +1,8 @@ require 'active_record/connection_adapters/mysql_adapter' -require 'active_record/connection_adapters/mysql2_adapter' rescue nil +begin + require 'active_record/connection_adapters/mysql2_adapter' +rescue LoadError +end module ActiveRecordHostPool module DatabaseSwitch diff --git a/test/helper.rb b/test/helper.rb index b91a9044..6f6f93b4 100644 --- a/test/helper.rb +++ b/test/helper.rb @@ -16,7 +16,17 @@ RAILS_ENV = "test" ActiveRecord::Base.logger = Logger.new(File.dirname(__FILE__) + "/test.log") -ActiveRecord::Base.configurations = YAML::load(IO.read(File.dirname(__FILE__) + '/database.yml')) + +config = YAML::load(IO.read(File.dirname(__FILE__) + '/database.yml')) + +if ENV["BUNDLE_GEMFILE"] =~ /mysql2/ + config.each do |k, v| + v['adapter'] = 'mysql2' + end +end + +ActiveRecord::Base.configurations = config + require 'active_support/test_case'