diff options
author | Innokenty Mihailov <anotheroneman@yahoo.com> | 2013-12-18 23:12:53 +0200 |
---|---|---|
committer | Yves Senn <yves.senn@gmail.com> | 2014-05-12 15:46:48 +0200 |
commit | aac40bcc07b3defb2134b2c08a88e197c469a702 (patch) | |
tree | a6827aa7581fc6aca840fa646a35bc3afe33c055 /activerecord/test/cases/adapters/postgresql | |
parent | f25f5336ee07cc42207dc036d1a962b500969d10 (diff) | |
download | rails-aac40bcc07b3defb2134b2c08a88e197c469a702.tar.gz rails-aac40bcc07b3defb2134b2c08a88e197c469a702.tar.bz2 rails-aac40bcc07b3defb2134b2c08a88e197c469a702.zip |
pg, fix Infinity and NaN values conversion.
Before this patch `Infinity`, `-Infinity` and `Nan` were read as `0`.
Diffstat (limited to 'activerecord/test/cases/adapters/postgresql')
-rw-r--r-- | activerecord/test/cases/adapters/postgresql/datatype_test.rb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/postgresql/datatype_test.rb b/activerecord/test/cases/adapters/postgresql/datatype_test.rb index e7dda1a1af..331481cb10 100644 --- a/activerecord/test/cases/adapters/postgresql/datatype_test.rb +++ b/activerecord/test/cases/adapters/postgresql/datatype_test.rb @@ -50,7 +50,11 @@ class PostgresqlDataTypeTest < ActiveRecord::TestCase @second_money = PostgresqlMoney.find(2) @connection.execute("INSERT INTO postgresql_numbers (id, single, double) VALUES (1, 123.456, 123456.789)") + @connection.execute("INSERT INTO postgresql_numbers (id, single, double) VALUES (2, '-Infinity', 'Infinity')") + @connection.execute("INSERT INTO postgresql_numbers (id, single, double) VALUES (3, 123.456, 'NaN')") @first_number = PostgresqlNumber.find(1) + @second_number = PostgresqlNumber.find(2) + @third_number = PostgresqlNumber.find(3) @connection.execute("INSERT INTO postgresql_times (id, time_interval, scaled_time_interval) VALUES (1, '1 year 2 days ago', '3 weeks ago')") @first_time = PostgresqlTime.find(1) @@ -154,6 +158,9 @@ class PostgresqlDataTypeTest < ActiveRecord::TestCase def test_number_values assert_equal 123.456, @first_number.single assert_equal 123456.789, @first_number.double + assert_equal -::Float::INFINITY, @second_number.single + assert_equal ::Float::INFINITY, @second_number.double + assert_same ::Float::NAN, @third_number.double end def test_time_values |