aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2006-02-09 18:06:29 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2006-02-09 18:06:29 +0000
commit5991e5c789da5adc260ceb9ba77da31d65991fbc (patch)
treea6613a2a8e3806af0b72da42a5e4d2c598eb7f5f /activerecord/test
parentd49a5fcb4cfe90824337dc3756bae7161cea768b (diff)
downloadrails-5991e5c789da5adc260ceb9ba77da31d65991fbc.tar.gz
rails-5991e5c789da5adc260ceb9ba77da31d65991fbc.tar.bz2
rails-5991e5c789da5adc260ceb9ba77da31d65991fbc.zip
PostgreSQL: correctly parse negative integer column defaults. References #3776.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3554 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/defaults_test.rb14
-rw-r--r--activerecord/test/fixtures/db_definitions/postgresql.sql4
2 files changed, 17 insertions, 1 deletions
diff --git a/activerecord/test/defaults_test.rb b/activerecord/test/defaults_test.rb
new file mode 100644
index 0000000000..59bc3ae0bd
--- /dev/null
+++ b/activerecord/test/defaults_test.rb
@@ -0,0 +1,14 @@
+require 'abstract_unit'
+require 'fixtures/default'
+
+class DefaultsTest < Test::Unit::TestCase
+ if %w(PostgreSQL).include? ActiveRecord::Base.connection.adapter_name
+ def test_default_integers
+ default = Default.new
+ assert_instance_of(Fixnum, default.positive_integer)
+ assert_equal(default.positive_integer, 1)
+ assert_instance_of(Fixnum, default.negative_integer)
+ assert_equal(default.negative_integer, -1)
+ end
+ end
+end
diff --git a/activerecord/test/fixtures/db_definitions/postgresql.sql b/activerecord/test/fixtures/db_definitions/postgresql.sql
index 32f6f32fe0..c01afc206d 100644
--- a/activerecord/test/fixtures/db_definitions/postgresql.sql
+++ b/activerecord/test/fixtures/db_definitions/postgresql.sql
@@ -111,7 +111,9 @@ CREATE TABLE defaults (
fixed_time timestamp default '2004-01-01 00:00:00.000000-00',
char1 char(1) default 'Y',
char2 character varying(50) default 'a varchar field',
- char3 text default 'a text field'
+ char3 text default 'a text field',
+ positive_integer integer default 1,
+ negative_integer integer default -1
);
CREATE TABLE auto_id_tests (