@@ -85,7 +85,7 module SortHelper | |||
|
85 | 85 | sql = @criteria.collect do |k,o| |
|
86 | 86 | if s = @available_criteria[k] |
|
87 | 87 | s = [s] unless s.is_a?(Array) |
|
88 |
|
|
|
88 | s.collect {|c| append_order(c, o ? "ASC" : "DESC")} | |
|
89 | 89 | end |
|
90 | 90 | end.flatten.compact |
|
91 | 91 | sql.blank? ? nil : sql |
@@ -129,14 +129,19 module SortHelper | |||
|
129 | 129 | self |
|
130 | 130 | end |
|
131 | 131 | |
|
132 | # Appends DESC to the sort criterion unless it has a fixed order | |
|
133 |
def append_ |
|
|
132 | # Appends ASC/DESC to the sort criterion unless it has a fixed order | |
|
133 | def append_order(criterion, order) | |
|
134 | 134 | if criterion =~ / (asc|desc)$/i |
|
135 | 135 | criterion |
|
136 | 136 | else |
|
137 |
"#{criterion} |
|
|
137 | "#{criterion} #{order}" | |
|
138 | 138 | end |
|
139 | 139 | end |
|
140 | ||
|
141 | # Appends DESC to the sort criterion unless it has a fixed order | |
|
142 | def append_desc(criterion) | |
|
143 | append_order(criterion, "DESC") | |
|
144 | end | |
|
140 | 145 | end |
|
141 | 146 | |
|
142 | 147 | def sort_name |
@@ -265,6 +265,14 class IssuesControllerTest < ActionController::TestCase | |||
|
265 | 265 | assert_not_nil assigns(:issue_count_by_group) |
|
266 | 266 | end |
|
267 | 267 | |
|
268 | def test_index_with_query_grouped_and_sorted_by_category | |
|
269 | get :index, :project_id => 1, :set_filter => 1, :group_by => "category", :sort => "category" | |
|
270 | assert_response :success | |
|
271 | assert_template 'index' | |
|
272 | assert_not_nil assigns(:issues) | |
|
273 | assert_not_nil assigns(:issue_count_by_group) | |
|
274 | end | |
|
275 | ||
|
268 | 276 | def test_index_with_query_grouped_by_list_custom_field |
|
269 | 277 | get :index, :project_id => 1, :query_id => 9 |
|
270 | 278 | assert_response :success |
@@ -54,7 +54,7 class SortHelperTest < ActionView::TestCase | |||
|
54 | 54 | sort_init 'attr1', 'desc' |
|
55 | 55 | sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'}) |
|
56 | 56 | |
|
57 | assert_equal ['table1.attr1', 'table2.attr2 DESC'], sort_clause | |
|
57 | assert_equal ['table1.attr1 ASC', 'table2.attr2 DESC'], sort_clause | |
|
58 | 58 | assert_equal 'attr1,attr2:desc', @session['foo_bar_sort'] |
|
59 | 59 | end |
|
60 | 60 | |
@@ -74,7 +74,7 class SortHelperTest < ActionView::TestCase | |||
|
74 | 74 | sort_init 'attr1', 'desc' |
|
75 | 75 | sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'}) |
|
76 | 76 | |
|
77 | assert_equal ['table1.attr1', 'table2.attr2'], sort_clause | |
|
77 | assert_equal ['table1.attr1 ASC', 'table2.attr2 ASC'], sort_clause | |
|
78 | 78 | assert_equal 'attr1,attr2', @session['foo_bar_sort'] |
|
79 | 79 | end |
|
80 | 80 |
General Comments 0
You need to be logged in to leave comments.
Login now