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
assert_response :success
assert_equal 'text/csv; header=present', response.content_type
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