]> git.openstreetmap.org Git - rails.git/blob - vendor/gems/composite_primary_keys-2.2.2/test/test_update.rb
Normalise line endings.
[rails.git] / vendor / gems / composite_primary_keys-2.2.2 / test / test_update.rb
1 require 'abstract_unit'
2 require 'fixtures/reference_type'
3 require 'fixtures/reference_code'
4
5 class TestUpdate < Test::Unit::TestCase
6   fixtures :reference_types, :reference_codes
7   
8   CLASSES = {
9     :single => {
10       :class => ReferenceType,
11       :primary_keys => :reference_type_id,
12       :update => { :description => 'RT Desc' },
13     },
14     :dual   => { 
15       :class => ReferenceCode,
16       :primary_keys => [:reference_type_id, :reference_code],
17       :update => { :description => 'RT Desc' },
18     },
19   }
20   
21   def setup
22     self.class.classes = CLASSES
23   end
24   
25   def test_setup
26     testing_with do
27       assert_not_nil @klass_info[:update]
28     end
29   end
30   
31   def test_update_attributes
32     testing_with do
33       assert @first.update_attributes(@klass_info[:update])
34       assert @first.reload
35       @klass_info[:update].each_pair do |attr_name, new_value|
36         assert_equal new_value, @first[attr_name], "Attribute #{attr_name} is incorrect"
37       end
38     end
39   end
40 end