Browse Source

attachment: add a functional test to show invalid UTF-8 text file (#2371)

Stripping invalid UTF-8 is Redmine 1.2 behaviour.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7824 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/1.3.0
Toshi MARUYAMA 12 years ago
parent
commit
fdf6e8547b
2 changed files with 30 additions and 0 deletions
  1. 13
    0
      test/fixtures/files/iso8859-1.txt
  2. 17
    0
      test/functional/attachments_controller_test.rb

+ 13
- 0
test/fixtures/files/iso8859-1.txt View File

@@ -0,0 +1,13 @@
Index: trunk/app/controllers/issues_controller.rb
===================================================================
--- trunk/app/controllers/issues_controller.rb (révision 1483)
+++ trunk/app/controllers/issues_controller.rb (révision 1484)
@@ -149,7 +149,7 @@
attach_files(@issue, params[:attachments])
flash[:notice] = 'Demande créée avec succès'
Mailer.deliver_issue_add(@issue) if Setting.notified_events.include?('issue_added')
- redirect_to :controller => 'issues', :action => 'show', :id => @issue, :project_id => @project
+ redirect_to :controller => 'issues', :action => 'show', :id => @issue
return
end
end

+ 17
- 0
test/functional/attachments_controller_test.rb View File

@@ -91,6 +91,23 @@ class AttachmentsControllerTest < ActionController::TestCase
:sibling => { :tag => 'td', :content => /#{str_japanese}/ }
end

def test_show_text_file_should_strip_non_utf8_content
a = Attachment.new(:container => Issue.find(1),
:file => uploaded_test_file("iso8859-1.txt", "text/plain"),
:author => User.find(1))
assert a.save
assert_equal 'iso8859-1.txt', a.filename

get :show, :id => a.id
assert_response :success
assert_template 'file'
assert_equal 'text/html', @response.content_type
assert_tag :tag => 'th',
:content => '7',
:attributes => { :class => 'line-num' },
:sibling => { :tag => 'td', :content => /Demande cre avec succs/ }
end

def test_show_text_file_should_send_if_too_big
Setting.file_max_size_displayed = 512
Attachment.find(4).update_attribute :filesize, 754.kilobyte

Loading…
Cancel
Save