##// END OF EJS Templates
Trying to fix random failures with postgresql due to different ids order in urls....
Jean-Philippe Lang -
r4553:50d962bba14d
parent child
Show More
@@ -1,111 +1,118
1 1 require File.expand_path('../../test_helper', __FILE__)
2 2
3 3 class ContextMenusControllerTest < ActionController::TestCase
4 4 fixtures :all
5 5
6 6 def test_context_menu_one_issue
7 7 @request.session[:user_id] = 2
8 8 get :issues, :ids => [1]
9 9 assert_response :success
10 10 assert_template 'context_menu'
11 11 assert_tag :tag => 'a', :content => 'Edit',
12 12 :attributes => { :href => '/issues/1/edit',
13 13 :class => 'icon-edit' }
14 14 assert_tag :tag => 'a', :content => 'Closed',
15 15 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;issue%5Bstatus_id%5D=5',
16 16 :class => '' }
17 17 assert_tag :tag => 'a', :content => 'Immediate',
18 18 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;issue%5Bpriority_id%5D=8',
19 19 :class => '' }
20 20 # Versions
21 21 assert_tag :tag => 'a', :content => '2.0',
22 22 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;issue%5Bfixed_version_id%5D=3',
23 23 :class => '' }
24 24 assert_tag :tag => 'a', :content => 'eCookbook Subproject 1 - 2.0',
25 25 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;issue%5Bfixed_version_id%5D=4',
26 26 :class => '' }
27 27
28 28 assert_tag :tag => 'a', :content => 'Dave Lopper',
29 29 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;issue%5Bassigned_to_id%5D=3',
30 30 :class => '' }
31 31 assert_tag :tag => 'a', :content => 'Duplicate',
32 32 :attributes => { :href => '/projects/ecookbook/issues/1/copy',
33 33 :class => 'icon-duplicate' }
34 34 assert_tag :tag => 'a', :content => 'Copy',
35 35 :attributes => { :href => '/issues/move/new?copy_options%5Bcopy%5D=t&amp;ids%5B%5D=1',
36 36 :class => 'icon-copy' }
37 37 assert_tag :tag => 'a', :content => 'Move',
38 38 :attributes => { :href => '/issues/move/new?ids%5B%5D=1',
39 39 :class => 'icon-move' }
40 40 assert_tag :tag => 'a', :content => 'Delete',
41 41 :attributes => { :href => '/issues/destroy?ids%5B%5D=1',
42 42 :class => 'icon-del' }
43 43 end
44 44
45 45 def test_context_menu_one_issue_by_anonymous
46 46 get :issues, :ids => [1]
47 47 assert_response :success
48 48 assert_template 'context_menu'
49 49 assert_tag :tag => 'a', :content => 'Delete',
50 50 :attributes => { :href => '#',
51 51 :class => 'icon-del disabled' }
52 52 end
53 53
54 54 def test_context_menu_multiple_issues_of_same_project
55 55 @request.session[:user_id] = 2
56 56 get :issues, :ids => [1, 2]
57 57 assert_response :success
58 58 assert_template 'context_menu'
59 assert_not_nil assigns(:issues)
60 assert_equal [1, 2], assigns(:issues).map(&:id).sort
61
62 ids = assigns(:issues).map(&:id).map {|i| "ids%5B%5D=#{i}"}.join('&amp;')
59 63 assert_tag :tag => 'a', :content => 'Edit',
60 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;ids%5B%5D=2',
64 :attributes => { :href => "/issues/bulk_edit?#{ids}",
61 65 :class => 'icon-edit' }
62 66 assert_tag :tag => 'a', :content => 'Closed',
63 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;ids%5B%5D=2&amp;issue%5Bstatus_id%5D=5',
67 :attributes => { :href => "/issues/bulk_edit?#{ids}&amp;issue%5Bstatus_id%5D=5",
64 68 :class => '' }
65 69 assert_tag :tag => 'a', :content => 'Immediate',
66 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;ids%5B%5D=2&amp;issue%5Bpriority_id%5D=8',
70 :attributes => { :href => "/issues/bulk_edit?#{ids}&amp;issue%5Bpriority_id%5D=8",
67 71 :class => '' }
68 72 assert_tag :tag => 'a', :content => 'Dave Lopper',
69 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&amp;ids%5B%5D=2&amp;issue%5Bassigned_to_id%5D=3',
73 :attributes => { :href => "/issues/bulk_edit?#{ids}&amp;issue%5Bassigned_to_id%5D=3",
70 74 :class => '' }
71 75 assert_tag :tag => 'a', :content => 'Copy',
72 :attributes => { :href => '/issues/move/new?copy_options%5Bcopy%5D=t&amp;ids%5B%5D=1&amp;ids%5B%5D=2',
76 :attributes => { :href => "/issues/move/new?copy_options%5Bcopy%5D=t&amp;#{ids}",
73 77 :class => 'icon-copy' }
74 78 assert_tag :tag => 'a', :content => 'Move',
75 :attributes => { :href => '/issues/move/new?ids%5B%5D=1&amp;ids%5B%5D=2',
79 :attributes => { :href => "/issues/move/new?#{ids}",
76 80 :class => 'icon-move' }
77 81 assert_tag :tag => 'a', :content => 'Delete',
78 :attributes => { :href => '/issues/destroy?ids%5B%5D=1&amp;ids%5B%5D=2',
82 :attributes => { :href => "/issues/destroy?#{ids}",
79 83 :class => 'icon-del' }
80 84 end
81 85
82 86 def test_context_menu_multiple_issues_of_different_projects
83 87 @request.session[:user_id] = 2
84 88 get :issues, :ids => [1, 2, 6]
85 89 assert_response :success
86 90 assert_template 'context_menu'
87 ids = "ids%5B%5D=1&amp;ids%5B%5D=2&amp;ids%5B%5D=6"
91 assert_not_nil assigns(:issues)
92 assert_equal [1, 2, 6], assigns(:issues).map(&:id).sort
93
94 ids = assigns(:issues).map(&:id).map {|i| "ids%5B%5D=#{i}"}.join('&amp;')
88 95 assert_tag :tag => 'a', :content => 'Edit',
89 96 :attributes => { :href => "/issues/bulk_edit?#{ids}",
90 97 :class => 'icon-edit' }
91 98 assert_tag :tag => 'a', :content => 'Closed',
92 99 :attributes => { :href => "/issues/bulk_edit?#{ids}&amp;issue%5Bstatus_id%5D=5",
93 100 :class => '' }
94 101 assert_tag :tag => 'a', :content => 'Immediate',
95 102 :attributes => { :href => "/issues/bulk_edit?#{ids}&amp;issue%5Bpriority_id%5D=8",
96 103 :class => '' }
97 104 assert_tag :tag => 'a', :content => 'John Smith',
98 105 :attributes => { :href => "/issues/bulk_edit?#{ids}&amp;issue%5Bassigned_to_id%5D=2",
99 106 :class => '' }
100 107 assert_tag :tag => 'a', :content => 'Delete',
101 108 :attributes => { :href => "/issues/destroy?#{ids}",
102 109 :class => 'icon-del' }
103 110 end
104 111
105 112 def test_context_menu_issue_visibility
106 113 get :issues, :ids => [1, 4]
107 114 assert_response :success
108 115 assert_template 'context_menu'
109 116 assert_equal [1], assigns(:issues).collect(&:id)
110 117 end
111 118 end
General Comments 0
You need to be logged in to leave comments. Login now