-require 'abstract_unit'\r
-require 'fixtures/reference_type'\r
-require 'fixtures/reference_code'\r
-\r
-# Testing the find action on composite ActiveRecords with two primary keys\r
-class TestFind < Test::Unit::TestCase\r
- fixtures :reference_types, :reference_codes\r
- \r
- CLASSES = {\r
- :single => {\r
- :class => ReferenceType,\r
- :primary_keys => [:reference_type_id],\r
- },\r
- :dual => { \r
- :class => ReferenceCode,\r
- :primary_keys => [:reference_type_id, :reference_code],\r
- },\r
- :dual_strs => { \r
- :class => ReferenceCode,\r
- :primary_keys => ['reference_type_id', 'reference_code'],\r
- },\r
- }\r
- \r
- def setup\r
- self.class.classes = CLASSES\r
- end\r
- \r
- def test_find_first\r
- testing_with do\r
- obj = @klass.find(:first)\r
- assert obj\r
- assert_equal @klass, obj.class\r
- end\r
- end\r
- \r
- def test_find\r
- testing_with do\r
- found = @klass.find(*first_id) # e.g. find(1,1) or find 1,1\r
- assert found\r
- assert_equal @klass, found.class\r
- assert_equal found, @klass.find(found.id)\r
- assert_equal found, @klass.find(found.to_param)\r
- end\r
- end\r
- \r
- def test_find_composite_ids\r
- testing_with do\r
- found = @klass.find(first_id) # e.g. find([1,1].to_composite_ids)\r
- assert found\r
- assert_equal @klass, found.class\r
- assert_equal found, @klass.find(found.id)\r
- assert_equal found, @klass.find(found.to_param)\r
- end\r
- end\r
- \r
- def test_to_param\r
- testing_with do\r
- assert_equal first_id_str, @first.to_param.to_s\r
- end\r
- end\r
- \r
- def things_to_look_at\r
- testing_with do\r
- assert_equal found, @klass.find(found.id.to_s) # fails for 2+ keys\r
- end\r
- end\r
- \r
- def test_not_found\r
- assert_raise(::ActiveRecord::RecordNotFound) do\r
- ReferenceCode.send :find, '999,999'\r
- end\r
- end\r
+require 'abstract_unit'
+require 'fixtures/reference_type'
+require 'fixtures/reference_code'
+
+# Testing the find action on composite ActiveRecords with two primary keys
+class TestFind < Test::Unit::TestCase
+ fixtures :reference_types, :reference_codes
+
+ CLASSES = {
+ :single => {
+ :class => ReferenceType,
+ :primary_keys => [:reference_type_id],
+ },
+ :dual => {
+ :class => ReferenceCode,
+ :primary_keys => [:reference_type_id, :reference_code],
+ },
+ :dual_strs => {
+ :class => ReferenceCode,
+ :primary_keys => ['reference_type_id', 'reference_code'],
+ },
+ }
+
+ def setup
+ self.class.classes = CLASSES
+ end
+
+ def test_find_first
+ testing_with do
+ obj = @klass.find(:first)
+ assert obj
+ assert_equal @klass, obj.class
+ end
+ end
+
+ def test_find
+ testing_with do
+ found = @klass.find(*first_id) # e.g. find(1,1) or find 1,1
+ assert found
+ assert_equal @klass, found.class
+ assert_equal found, @klass.find(found.id)
+ assert_equal found, @klass.find(found.to_param)
+ end
+ end
+
+ def test_find_composite_ids
+ testing_with do
+ found = @klass.find(first_id) # e.g. find([1,1].to_composite_ids)
+ assert found
+ assert_equal @klass, found.class
+ assert_equal found, @klass.find(found.id)
+ assert_equal found, @klass.find(found.to_param)
+ end
+ end
+
+ def test_to_param
+ testing_with do
+ assert_equal first_id_str, @first.to_param.to_s
+ end
+ end
+
+ def things_to_look_at
+ testing_with do
+ assert_equal found, @klass.find(found.id.to_s) # fails for 2+ keys
+ end
+ end
+
+ def test_not_found
+ assert_raise(::ActiveRecord::RecordNotFound) do
+ ReferenceCode.send :find, '999,999'
+ end
+ end
end
\ No newline at end of file