diff options
author | Javan Makhmali <javan@javan.us> | 2013-11-14 13:38:08 -0500 |
---|---|---|
committer | Javan Makhmali <javan@javan.us> | 2013-11-14 13:38:08 -0500 |
commit | 547999df256a5ac650eb012dabf713027b9bda1f (patch) | |
tree | 5f57532d0d80c805726b419f5899de6523d97731 /activerecord/test/cases | |
parent | 05427671d5c9a68d5b8cf883e246beb190e56c6f (diff) | |
download | rails-547999df256a5ac650eb012dabf713027b9bda1f.tar.gz rails-547999df256a5ac650eb012dabf713027b9bda1f.tar.bz2 rails-547999df256a5ac650eb012dabf713027b9bda1f.zip |
Add AR::Base.to_param for convenient "pretty" URLs derived from a model's attribute or method.
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/integration_test.rb | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/activerecord/test/cases/integration_test.rb b/activerecord/test/cases/integration_test.rb index 840865c4cf..1f62433ea2 100644 --- a/activerecord/test/cases/integration_test.rb +++ b/activerecord/test/cases/integration_test.rb @@ -23,6 +23,24 @@ class IntegrationTest < ActiveRecord::TestCase assert_equal '1', client.to_param end + def test_to_param_class_method + firm = Firm.find(4) + assert_equal '4-flamboyant-software', firm.to_param + end + + def to_param_class_method_uses_default_if_blank + firm = Firm.find(4) + firm.name = nil + assert_equal '4', firm.to_param + firm.name = ' ' + assert_equal '4', firm.to_param + end + + def to_param_class_method_uses_default_if_not_persisted + firm = Firm.new(name: 'Fancy Shirts') + assert_equal nil, firm.to_param + end + def test_cache_key_for_existing_record_is_not_timezone_dependent utc_key = Developer.first.cache_key |