diff options
Diffstat (limited to 'activerecord/test')
-rwxr-xr-x | activerecord/test/base_test.rb | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/activerecord/test/base_test.rb b/activerecord/test/base_test.rb index 4f591e2cac..c7e795c0e6 100755 --- a/activerecord/test/base_test.rb +++ b/activerecord/test/base_test.rb @@ -7,6 +7,8 @@ require 'fixtures/project' require 'fixtures/default' require 'fixtures/auto_id' require 'fixtures/column_name' +require 'fixtures/subscriber' +require 'fixtures/keyboard' class Category < ActiveRecord::Base; end class Smarts < ActiveRecord::Base; end @@ -526,6 +528,22 @@ class BasicsTest < Test::Unit::TestCase firm.attributes = { "name" => "Next Angle", "rating" => 5 } assert_equal 1, firm.rating end + + def test_customized_primary_key_remains_protected + subscriber = Subscriber.new(:nick => 'webster123', :name => 'nice try') + assert_nil subscriber.id + + keyboard = Keyboard.new(:key_number => 9, :name => 'nice try') + assert_nil keyboard.id + end + + def test_customized_primary_key_remains_protected_when_refered_to_as_id + subscriber = Subscriber.new(:id => 'webster123', :name => 'nice try') + assert_nil subscriber.id + + keyboard = Keyboard.new(:id => 9, :name => 'nice try') + assert_nil keyboard.id + end def test_mass_assignment_protection_on_defaults firm = Firm.new |