diff options
author | Yasuo Honda <yasuo.honda@gmail.com> | 2017-09-01 12:18:56 +0000 |
---|---|---|
committer | Yasuo Honda <yasuo.honda@gmail.com> | 2017-09-01 15:57:02 +0000 |
commit | cb2934ed79286f46c1e5593dd4c34aebfb2bc4d6 (patch) | |
tree | a43fa317530376c1b02e06e2158d633a5592d9f0 /activerecord/test/cases/calculations_test.rb | |
parent | 806f96ceaecbf9cf8d2fdbbdaf1fb2a499769cbf (diff) | |
download | rails-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.rb | 3 |
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 |