diff test/functional/files_controller_test.rb @ 1115:433d4f72a19b redmine-2.2

Update to Redmine SVN revision 11137 on 2.2-stable branch
author Chris Cannam
date Mon, 07 Jan 2013 12:01:42 +0000
parents cbb26bc654de
children 622f24f53b42
line wrap: on
line diff
--- a/test/functional/files_controller_test.rb	Wed Jun 27 14:54:18 2012 +0100
+++ b/test/functional/files_controller_test.rb	Mon Jan 07 12:01:42 2013 +0000
@@ -36,16 +36,36 @@
                    :attributes => { :href => '/attachments/download/9/version_file.zip' }
   end
 
+  def test_new
+    @request.session[:user_id] = 2
+    get :new, :project_id => 1
+    assert_response :success
+    assert_template 'new'
+
+    assert_tag 'select', :attributes => {:name => 'version_id'}
+  end
+
+  def test_new_without_versions
+    Version.delete_all
+    @request.session[:user_id] = 2
+    get :new, :project_id => 1
+    assert_response :success
+    assert_template 'new'
+
+    assert_no_tag 'select', :attributes => {:name => 'version_id'}
+  end
+
   def test_create_file
     set_tmp_attachments_directory
     @request.session[:user_id] = 2
-    Setting.notified_events = ['file_added']
     ActionMailer::Base.deliveries.clear
 
-    assert_difference 'Attachment.count' do
-      post :create, :project_id => 1, :version_id => '',
-           :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}}
-      assert_response :redirect
+    with_settings :notified_events => %w(file_added) do
+      assert_difference 'Attachment.count' do
+        post :create, :project_id => 1, :version_id => '',
+             :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}}
+        assert_response :redirect
+      end
     end
     assert_redirected_to '/projects/ecookbook/files'
     a = Attachment.find(:first, :order => 'created_on DESC')
@@ -53,15 +73,14 @@
     assert_equal Project.find(1), a.container
 
     mail = ActionMailer::Base.deliveries.last
-    assert_kind_of TMail::Mail, mail
+    assert_not_nil mail
     assert_equal "[eCookbook] New file", mail.subject
-    assert mail.body.include?('testfile.txt')
+    assert_mail_body_match 'testfile.txt', mail
   end
 
   def test_create_version_file
     set_tmp_attachments_directory
     @request.session[:user_id] = 2
-    Setting.notified_events = ['file_added']
 
     assert_difference 'Attachment.count' do
       post :create, :project_id => 1, :version_id => '2',