summaryrefslogtreecommitdiffstats
path: root/test/functional/files_controller_test.rb
diff options
context:
space:
mode:
authorEric Davis <edavis@littlestreamsoftware.com>2010-09-01 15:17:45 +0000
committerEric Davis <edavis@littlestreamsoftware.com>2010-09-01 15:17:45 +0000
commitb5e90972d88c69a1ef2c9e90879e8926d192acff (patch)
tree9370cd677e484caf9ec4576d5e8f5ffcd04aab1f /test/functional/files_controller_test.rb
parentdaa8eaa9aebcc284e2904d1258cbfdd78ea23876 (diff)
downloadredmine-b5e90972d88c69a1ef2c9e90879e8926d192acff.tar.gz
redmine-b5e90972d88c69a1ef2c9e90879e8926d192acff.zip
Refactor: move method, ProjectsController#add_file to FilesController#new.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4052 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/functional/files_controller_test.rb')
-rw-r--r--test/functional/files_controller_test.rb38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/functional/files_controller_test.rb b/test/functional/files_controller_test.rb
index 908502183..838caee70 100644
--- a/test/functional/files_controller_test.rb
+++ b/test/functional/files_controller_test.rb
@@ -26,4 +26,42 @@ class FilesControllerTest < ActionController::TestCase
:attributes => { :href => '/attachments/download/9/version_file.zip' }
end
+ def test_add_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 :new, :id => 1, :version_id => '',
+ :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}}
+ assert_response :redirect
+ end
+ assert_redirected_to 'projects/ecookbook/files'
+ a = Attachment.find(:first, :order => 'created_on DESC')
+ assert_equal 'testfile.txt', a.filename
+ assert_equal Project.find(1), a.container
+
+ mail = ActionMailer::Base.deliveries.last
+ assert_kind_of TMail::Mail, mail
+ assert_equal "[eCookbook] New file", mail.subject
+ assert mail.body.include?('testfile.txt')
+ end
+
+ def test_add_version_file
+ set_tmp_attachments_directory
+ @request.session[:user_id] = 2
+ Setting.notified_events = ['file_added']
+
+ assert_difference 'Attachment.count' do
+ post :new, :id => 1, :version_id => '2',
+ :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}}
+ assert_response :redirect
+ end
+ assert_redirected_to 'projects/ecookbook/files'
+ a = Attachment.find(:first, :order => 'created_on DESC')
+ assert_equal 'testfile.txt', a.filename
+ assert_equal Version.find(2), a.container
+ end
+
end