aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/calculations_test.rb
diff options
context:
space:
mode:
authorYasuo Honda <yasuo.honda@gmail.com>2017-09-01 12:18:56 +0000
committerYasuo Honda <yasuo.honda@gmail.com>2017-09-01 15:57:02 +0000
commitcb2934ed79286f46c1e5593dd4c34aebfb2bc4d6 (patch)
treea43fa317530376c1b02e06e2158d633a5592d9f0 /activerecord/test/cases/calculations_test.rb
parent806f96ceaecbf9cf8d2fdbbdaf1fb2a499769cbf (diff)
downloadrails-cb2934ed79286f46c1e5593dd4c34aebfb2bc4d6.tar.gz
rails-cb2934ed79286f46c1e5593dd4c34aebfb2bc4d6.tar.bz2
rails-cb2934ed79286f46c1e5593dd4c34aebfb2bc4d6.zip
sqlite3 adapter returns integer value which used to be string
`to_i` was added for SQLite3 adapter which did not handle number but sqlite3 gem already supports it then `to_i` is unnecessary. else condition is kept for adapters which return string, i.e. mysql(not mysql2) and sqlserver. Renamed `test_cache_does_not_wrap_string_results_in_arrays` to `test_cache_does_not_wrap_results_in_arrays` to explain the current behavior. most of adapters return integer, not only string. * Refer these commits: "future proofing the sqlite3 adapter code" https://github.com/rails/rails/commit/beda2d43d6ac5c3435fc2fba0cbd108c20fe1c67 "Refactor calculation test to remove unneeded SQLite special case." https://github.com/rails/rails/commit/47d568ed3fc701934ebe80b276f3d8bf6951c93f "no need to to_i, sqlite does that for us" https://github.com/rails/rails/commit/6cf44a1bd64ba10497742d70ad78fe68faa16e99
Diffstat (limited to 'activerecord/test/cases/calculations_test.rb')
-rw-r--r--activerecord/test/cases/calculations_test.rb3
1 files changed, 1 insertions, 2 deletions
diff --git a/activerecord/test/cases/calculations_test.rb b/activerecord/test/cases/calculations_test.rb
index 39dff19b78..b47fd0af41 100644
--- a/activerecord/test/cases/calculations_test.rb
+++ b/activerecord/test/cases/calculations_test.rb
@@ -518,8 +518,7 @@ class CalculationsTest < ActiveRecord::TestCase
end
def test_should_sum_expression
- # Oracle adapter returns floating point value 636.0 after SUM
- if current_adapter?(:OracleAdapter)
+ if current_adapter?(:SQLite3Adapter, :Mysql2Adapter, :PostgreSQLAdapter, :OracleAdapter)
assert_equal 636, Account.sum("2 * credit_limit")
else
assert_equal 636, Account.sum("2 * credit_limit").to_i