diff options
author | Jeremy Kemper <jeremy@bitsweat.net> | 2012-03-29 16:25:50 -0700 |
---|---|---|
committer | Jeremy Kemper <jeremy@bitsweat.net> | 2012-03-29 16:25:50 -0700 |
commit | 648248bbb13aa5259b1e64d9a8376cdbe6717e37 (patch) | |
tree | efcba839bfb8e20b61df08abb95c851e68318925 /activerecord/test/cases/base_test.rb | |
parent | 1555023973d2f60050f16b055335abc4e038e20f (diff) | |
parent | bb2e2d8cb6fda1a093925fb6f79ef44f404bf785 (diff) | |
download | rails-648248bbb13aa5259b1e64d9a8376cdbe6717e37.tar.gz rails-648248bbb13aa5259b1e64d9a8376cdbe6717e37.tar.bz2 rails-648248bbb13aa5259b1e64d9a8376cdbe6717e37.zip |
Merge pull request #5345 from guilleiguaran/ar-slice
post.slice(:title, :content) # => { title: "Hello", content: "World" }
Diffstat (limited to 'activerecord/test/cases/base_test.rb')
-rw-r--r-- | activerecord/test/cases/base_test.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb index ff39285f62..f0fbca190c 100644 --- a/activerecord/test/cases/base_test.rb +++ b/activerecord/test/cases/base_test.rb @@ -2057,4 +2057,16 @@ class BasicsTest < ActiveRecord::TestCase def test_typecasting_aliases assert_equal 10, Topic.select('10 as tenderlove').first.tenderlove end + + def test_slice + company = Company.new(:rating => 1, :name => "37signals", :firm_name => "37signals") + hash = company.slice(:name, :rating, "arbitrary_method") + assert_equal hash[:name], company.name + assert_equal hash['name'], company.name + assert_equal hash[:rating], company.rating + assert_equal hash['arbitrary_method'], company.arbitrary_method + assert_equal hash[:arbitrary_method], company.arbitrary_method + assert_nil hash[:firm_name] + assert_nil hash['firm_name'] + end end |