aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/adapters/mysql2
diff options
context:
space:
mode:
authorSean Griffin <sean@seantheprogrammer.com>2015-10-20 14:02:23 -0600
committerSean Griffin <sean@seantheprogrammer.com>2015-10-20 14:02:23 -0600
commit72fba7db413561cf293178d5df0708c9380356fb (patch)
tree8a38fef3f866800edbe9a110d460410ca3ed9c77 /activerecord/test/cases/adapters/mysql2
parentee865eb244c8db11dcfbadbce0994d3c6488e7ec (diff)
parentd39b6f77fc75790b1b2b3c5201bb037645d01483 (diff)
downloadrails-72fba7db413561cf293178d5df0708c9380356fb.tar.gz
rails-72fba7db413561cf293178d5df0708c9380356fb.tar.bz2
rails-72fba7db413561cf293178d5df0708c9380356fb.zip
Merge pull request #21932 from kamipo/add_stored_procedure_test_in_mysql2
Add stored procedure test in mysql2
Diffstat (limited to 'activerecord/test/cases/adapters/mysql2')
-rw-r--r--activerecord/test/cases/adapters/mysql2/sp_test.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/mysql2/sp_test.rb b/activerecord/test/cases/adapters/mysql2/sp_test.rb
new file mode 100644
index 0000000000..8b12945f24
--- /dev/null
+++ b/activerecord/test/cases/adapters/mysql2/sp_test.rb
@@ -0,0 +1,29 @@
+require "cases/helper"
+require 'models/topic'
+require 'models/reply'
+
+class Mysql2StoredProcedureTest < ActiveRecord::Mysql2TestCase
+ fixtures :topics
+
+ def setup
+ @connection = ActiveRecord::Base.connection
+ end
+
+ # Test that MySQL allows multiple results for stored procedures
+ #
+ # In MySQL 5.6, CLIENT_MULTI_RESULTS is enabled by default.
+ # http://dev.mysql.com/doc/refman/5.6/en/call.html
+ if ActiveRecord::Base.connection.version >= '5.6.0'
+ def test_multi_results
+ rows = @connection.select_rows('CALL ten();')
+ assert_equal 10, rows[0][0].to_i, "ten() did not return 10 as expected: #{rows.inspect}"
+ assert @connection.active?, "Bad connection use by 'Mysql2Adapter.select_rows'"
+ end
+
+ def test_multi_results_from_find_by_sql
+ topics = Topic.find_by_sql 'CALL topics(3);'
+ assert_equal 3, topics.size
+ assert @connection.active?, "Bad connection use by 'Mysql2Adapter.select'"
+ end
+ end
+end