git-svn-id: http://svn.redmine.org/redmine/trunk@13562 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/3.0.0
@@ -122,16 +122,20 @@ module QueriesHelper | |||
end | |||
end | |||
def csv_value(column, issue, value) | |||
def csv_value(column, object, value) | |||
format_object(value, false) do |value| | |||
case value.class.name | |||
when 'Float' | |||
sprintf("%.2f", value).gsub('.', l(:general_csv_decimal_separator)) | |||
when 'IssueRelation' | |||
other = value.other_issue(issue) | |||
l(value.label_for(issue)) + " ##{other.id}" | |||
other = value.other_issue(object) | |||
l(value.label_for(object)) + " ##{other.id}" | |||
when 'Issue' | |||
value.id | |||
if object.is_a?(TimeEntry) | |||
"#{value.tracker} ##{value.id}: #{value.subject}" | |||
else | |||
value.id | |||
end | |||
else | |||
value | |||
end |
@@ -716,4 +716,14 @@ class TimelogControllerTest < ActionController::TestCase | |||
assert_equal 'text/csv; header=present', response.content_type | |||
end | |||
end | |||
def test_index_csv_should_fill_issue_column_with_tracker_id_and_subject | |||
issue = Issue.find(1) | |||
entry = TimeEntry.generate!(:issue => issue, :comments => "Issue column content test") | |||
get :index, :format => 'csv' | |||
line = response.body.split("\n").detect {|l| l.include?(entry.comments)} | |||
assert_not_nil line | |||
assert_include "#{issue.tracker} #1: #{issue.subject}", line | |||
end | |||
end |