Sha256: c95f053d29f344705d16def83c9a19b66b30d874afab703ebb4b7d2718b39b1c
Contents?: true
Size: 1.65 KB
Versions: 2
Compression:
Stored size: 1.65 KB
Contents
require 'db/mysql' class MySQLConnectionTest < Test::Unit::TestCase def test_mysql_default_in_strict_mode assert_equal [["STRICT_ALL_TABLES"]], select_rows("SELECT @@SESSION.sql_mode") end if ar_version('4.0') def test_mysql_strict_mode_disabled run_without_connection do |orig_connection| ActiveRecord::Base.establish_connection(orig_connection.merge({:strict => false})) assert_equal [['']], select_rows("SELECT @@SESSION.sql_mode") end end def test_mysql_set_session_variable run_without_connection do |orig_connection| ActiveRecord::Base.establish_connection(orig_connection.deep_merge({:variables => {:default_week_format => 3}})) rows = select_rows("SELECT @@SESSION.DEFAULT_WEEK_FORMAT") assert_equal 3, rows.first.first.to_i end end def test_mysql_set_session_variable_to_default run_without_connection do |orig_connection| ActiveRecord::Base.establish_connection(orig_connection.deep_merge({:variables => {:default_week_format => :default}})) global_mode_rows = select_rows "SELECT @@GLOBAL.DEFAULT_WEEK_FORMAT" session_mode_rows = select_rows "SELECT @@SESSION.DEFAULT_WEEK_FORMAT" assert_equal global_mode_rows, session_mode_rows end end protected def select_rows(sql) result = ActiveRecord::Base.connection.exec_query(sql) result.respond_to?(:rows) ? result.rows : [ result.first.map { |_,value| value } ] end private def run_without_connection original_connection = ActiveRecord::Base.remove_connection begin yield original_connection ensure ActiveRecord::Base.establish_connection(original_connection) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
activerecord-jdbc-adapter-1.3.0.beta2 | test/db/mysql/connection_test.rb |
activerecord-jdbc-adapter-1.3.0.beta1 | test/db/mysql/connection_test.rb |