comparison test/unit/helpers/sort_helper_test.rb @ 1295:622f24f53b42 redmine-2.3

Update to Redmine SVN revision 11972 on 2.3-stable branch
author Chris Cannam
date Fri, 14 Jun 2013 09:02:21 +0100
parents 433d4f72a19b
children
comparison
equal deleted inserted replaced
1294:3e4c3460b6ca 1295:622f24f53b42
1 # Redmine - project management software 1 # Redmine - project management software
2 # Copyright (C) 2006-2012 Jean-Philippe Lang 2 # Copyright (C) 2006-2013 Jean-Philippe Lang
3 # 3 #
4 # This program is free software; you can redistribute it and/or 4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License 5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2 6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version. 7 # of the License, or (at your option) any later version.
28 28
29 def test_default_sort_clause_with_array 29 def test_default_sort_clause_with_array
30 sort_init 'attr1', 'desc' 30 sort_init 'attr1', 'desc'
31 sort_update(['attr1', 'attr2']) 31 sort_update(['attr1', 'attr2'])
32 32
33 assert_equal 'attr1 DESC', sort_clause 33 assert_equal ['attr1 DESC'], sort_clause
34 end 34 end
35 35
36 def test_default_sort_clause_with_hash 36 def test_default_sort_clause_with_hash
37 sort_init 'attr1', 'desc' 37 sort_init 'attr1', 'desc'
38 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'}) 38 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'})
39 39
40 assert_equal 'table1.attr1 DESC', sort_clause 40 assert_equal ['table1.attr1 DESC'], sort_clause
41 end 41 end
42 42
43 def test_default_sort_clause_with_multiple_columns 43 def test_default_sort_clause_with_multiple_columns
44 sort_init 'attr1', 'desc' 44 sort_init 'attr1', 'desc'
45 sort_update({'attr1' => ['table1.attr1', 'table1.attr2'], 'attr2' => 'table2.attr2'}) 45 sort_update({'attr1' => ['table1.attr1', 'table1.attr2'], 'attr2' => 'table2.attr2'})
46 46
47 assert_equal 'table1.attr1 DESC, table1.attr2 DESC', sort_clause 47 assert_equal ['table1.attr1 DESC', 'table1.attr2 DESC'], sort_clause
48 end 48 end
49 49
50 def test_params_sort 50 def test_params_sort
51 @sort_param = 'attr1,attr2:desc' 51 @sort_param = 'attr1,attr2:desc'
52 52
53 sort_init 'attr1', 'desc' 53 sort_init 'attr1', 'desc'
54 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'}) 54 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'})
55 55
56 assert_equal 'table1.attr1, table2.attr2 DESC', sort_clause 56 assert_equal ['table1.attr1', 'table2.attr2 DESC'], sort_clause
57 assert_equal 'attr1,attr2:desc', @session['foo_bar_sort'] 57 assert_equal 'attr1,attr2:desc', @session['foo_bar_sort']
58 end 58 end
59 59
60 def test_invalid_params_sort 60 def test_invalid_params_sort
61 @sort_param = 'invalid_key' 61 @sort_param = 'invalid_key'
62 62
63 sort_init 'attr1', 'desc' 63 sort_init 'attr1', 'desc'
64 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'}) 64 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'})
65 65
66 assert_equal 'table1.attr1 DESC', sort_clause 66 assert_equal ['table1.attr1 DESC'], sort_clause
67 assert_equal 'attr1:desc', @session['foo_bar_sort'] 67 assert_equal 'attr1:desc', @session['foo_bar_sort']
68 end 68 end
69 69
70 def test_invalid_order_params_sort 70 def test_invalid_order_params_sort
71 @sort_param = 'attr1:foo:bar,attr2' 71 @sort_param = 'attr1:foo:bar,attr2'
72 72
73 sort_init 'attr1', 'desc' 73 sort_init 'attr1', 'desc'
74 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'}) 74 sort_update({'attr1' => 'table1.attr1', 'attr2' => 'table2.attr2'})
75 75
76 assert_equal 'table1.attr1, table2.attr2', sort_clause 76 assert_equal ['table1.attr1', 'table2.attr2'], sort_clause
77 assert_equal 'attr1,attr2', @session['foo_bar_sort'] 77 assert_equal 'attr1,attr2', @session['foo_bar_sort']
78 end 78 end
79 79
80 private 80 private
81 81