aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/defaults_test.rb
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2015-05-03 20:49:45 +0900
committerRyuta Kamizono <kamipo@gmail.com>2016-01-13 22:03:56 +0900
commit5fd30ac52d9f8fcdba98b92cdb82868f6686596c (patch)
tree9903a3d3f2be13dc57a9607fffa16315767e75e5 /activerecord/test/cases/defaults_test.rb
parentf5ab4055b909e7b325304c5a7e414c28bbe441b7 (diff)
downloadrails-5fd30ac52d9f8fcdba98b92cdb82868f6686596c.tar.gz
rails-5fd30ac52d9f8fcdba98b92cdb82868f6686596c.tar.bz2
rails-5fd30ac52d9f8fcdba98b92cdb82868f6686596c.zip
Add expression support on the schema default
Example: create_table :posts do |t| t.datetime :published_at, default: -> { 'NOW()' } end
Diffstat (limited to 'activerecord/test/cases/defaults_test.rb')
-rw-r--r--activerecord/test/cases/defaults_test.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/activerecord/test/cases/defaults_test.rb b/activerecord/test/cases/defaults_test.rb
index fb2d3bd497..ab5641d2dd 100644
--- a/activerecord/test/cases/defaults_test.rb
+++ b/activerecord/test/cases/defaults_test.rb
@@ -1,4 +1,5 @@
require "cases/helper"
+require 'support/schema_dumping_helper'
require 'models/default'
require 'models/entrant'
@@ -80,6 +81,20 @@ class DefaultStringsTest < ActiveRecord::TestCase
end
end
+if current_adapter?(:PostgreSQLAdapter)
+ class PostgresqlDefaultExpressionTest < ActiveRecord::TestCase
+ include SchemaDumpingHelper
+
+ test "schema dump includes default expression" do
+ output = dump_table_schema("defaults")
+ assert_match %r/t\.date\s+"modified_date",\s+default: -> { "\('now'::text\)::date" }/, output
+ assert_match %r/t\.date\s+"modified_date_function",\s+default: -> { "now\(\)" }/, output
+ assert_match %r/t\.datetime\s+"modified_time",\s+default: -> { "now\(\)" }/, output
+ assert_match %r/t\.datetime\s+"modified_time_function",\s+default: -> { "now\(\)" }/, output
+ end
+ end
+end
+
if current_adapter?(:Mysql2Adapter)
class DefaultsTestWithoutTransactionalFixtures < ActiveRecord::TestCase
# ActiveRecord::Base#create! (and #save and other related methods) will