]> source.dussan.org Git - redmine.git/commitdiff
Additional tests for CustomFieldsController.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Wed, 18 Apr 2012 19:25:54 +0000 (19:25 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Wed, 18 Apr 2012 19:25:54 +0000 (19:25 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@9437 e93f8b46-1217-0410-a6f0-8f06a7374b81

test/functional/custom_fields_controller_test.rb

index 42e57b91a4a0dc2c6d900d8ef52a1f5275228283..f86490156367472525715a99190a498c05bc83c6 100644 (file)
@@ -37,6 +37,16 @@ class CustomFieldsControllerTest < ActionController::TestCase
     assert_template 'index'
   end
 
+  def test_new
+    custom_field_classes.each do |klass|
+      get :new, :type => klass.name
+      assert_response :success
+      assert_template 'new'
+      assert_kind_of klass, assigns(:custom_field)
+      assert_tag :select, :attributes => {:name => 'custom_field[field_format]'}
+    end
+  end
+
   def test_new_issue_custom_field
     get :new, :type => 'IssueCustomField'
     assert_response :success
@@ -135,4 +145,11 @@ class CustomFieldsControllerTest < ActionController::TestCase
     assert_nil CustomField.find_by_id(1)
     assert_nil CustomValue.find_by_custom_field_id(1)
   end
+
+  def custom_field_classes
+    files = Dir.glob(File.join(Rails.root, 'app/models/*_custom_field.rb')).map {|f| File.basename(f).sub(/\.rb$/, '') }
+    classes = files.map(&:classify).map(&:constantize)
+    assert classes.size > 0
+    classes
+  end
 end