Mercurial > hg > soundsoftware-site
comparison 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 |
comparison
equal
deleted
inserted
replaced
929:5f33065ddc4b | 1115:433d4f72a19b |
---|---|
34 # file attached to a project's version | 34 # file attached to a project's version |
35 assert_tag :a, :content => 'version_file.zip', | 35 assert_tag :a, :content => 'version_file.zip', |
36 :attributes => { :href => '/attachments/download/9/version_file.zip' } | 36 :attributes => { :href => '/attachments/download/9/version_file.zip' } |
37 end | 37 end |
38 | 38 |
39 def test_new | |
40 @request.session[:user_id] = 2 | |
41 get :new, :project_id => 1 | |
42 assert_response :success | |
43 assert_template 'new' | |
44 | |
45 assert_tag 'select', :attributes => {:name => 'version_id'} | |
46 end | |
47 | |
48 def test_new_without_versions | |
49 Version.delete_all | |
50 @request.session[:user_id] = 2 | |
51 get :new, :project_id => 1 | |
52 assert_response :success | |
53 assert_template 'new' | |
54 | |
55 assert_no_tag 'select', :attributes => {:name => 'version_id'} | |
56 end | |
57 | |
39 def test_create_file | 58 def test_create_file |
40 set_tmp_attachments_directory | 59 set_tmp_attachments_directory |
41 @request.session[:user_id] = 2 | 60 @request.session[:user_id] = 2 |
42 Setting.notified_events = ['file_added'] | |
43 ActionMailer::Base.deliveries.clear | 61 ActionMailer::Base.deliveries.clear |
44 | 62 |
45 assert_difference 'Attachment.count' do | 63 with_settings :notified_events => %w(file_added) do |
46 post :create, :project_id => 1, :version_id => '', | 64 assert_difference 'Attachment.count' do |
47 :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}} | 65 post :create, :project_id => 1, :version_id => '', |
48 assert_response :redirect | 66 :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}} |
67 assert_response :redirect | |
68 end | |
49 end | 69 end |
50 assert_redirected_to '/projects/ecookbook/files' | 70 assert_redirected_to '/projects/ecookbook/files' |
51 a = Attachment.find(:first, :order => 'created_on DESC') | 71 a = Attachment.find(:first, :order => 'created_on DESC') |
52 assert_equal 'testfile.txt', a.filename | 72 assert_equal 'testfile.txt', a.filename |
53 assert_equal Project.find(1), a.container | 73 assert_equal Project.find(1), a.container |
54 | 74 |
55 mail = ActionMailer::Base.deliveries.last | 75 mail = ActionMailer::Base.deliveries.last |
56 assert_kind_of TMail::Mail, mail | 76 assert_not_nil mail |
57 assert_equal "[eCookbook] New file", mail.subject | 77 assert_equal "[eCookbook] New file", mail.subject |
58 assert mail.body.include?('testfile.txt') | 78 assert_mail_body_match 'testfile.txt', mail |
59 end | 79 end |
60 | 80 |
61 def test_create_version_file | 81 def test_create_version_file |
62 set_tmp_attachments_directory | 82 set_tmp_attachments_directory |
63 @request.session[:user_id] = 2 | 83 @request.session[:user_id] = 2 |
64 Setting.notified_events = ['file_added'] | |
65 | 84 |
66 assert_difference 'Attachment.count' do | 85 assert_difference 'Attachment.count' do |
67 post :create, :project_id => 1, :version_id => '2', | 86 post :create, :project_id => 1, :version_id => '2', |
68 :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}} | 87 :attachments => {'1' => {'file' => uploaded_test_file('testfile.txt', 'text/plain')}} |
69 assert_response :redirect | 88 assert_response :redirect |