comparison test/functional/boards_controller_test.rb @ 1526:404aa68d4227

Merge from live branch
author Chris Cannam
date Thu, 11 Sep 2014 12:46:20 +0100
parents dffacf8a6908
children
comparison
equal deleted inserted replaced
1493:a5f2bdf3b486 1526:404aa68d4227
1 # Redmine - project management software 1 # Redmine - project management software
2 # Copyright (C) 2006-2012 Jean-Philippe Lang 2 # Copyright (C) 2006-2014 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.
55 assert_not_nil assigns(:topics) 55 assert_not_nil assigns(:topics)
56 end 56 end
57 57
58 def test_show_should_display_sticky_messages_first 58 def test_show_should_display_sticky_messages_first
59 Message.update_all(:sticky => 0) 59 Message.update_all(:sticky => 0)
60 Message.update_all({:sticky => 1}, {:id => 1}) 60 Message.where({:id => 1}).update_all({:sticky => 1})
61 61
62 get :show, :project_id => 1, :id => 1 62 get :show, :project_id => 1, :id => 1
63 assert_response :success 63 assert_response :success
64 64
65 topics = assigns(:topics) 65 topics = assigns(:topics)
88 @request.session[:user_id] = 2 88 @request.session[:user_id] = 2
89 get :show, :project_id => 1, :id => 1 89 get :show, :project_id => 1, :id => 1
90 assert_response :success 90 assert_response :success
91 assert_template 'show' 91 assert_template 'show'
92 92
93 assert_tag 'form', :attributes => {:id => 'message-form'} 93 assert_select 'form#message-form' do
94 assert_tag 'input', :attributes => {:name => 'message[subject]'} 94 assert_select 'input[name=?]', 'message[subject]'
95 end
95 end 96 end
96 97
97 def test_show_atom 98 def test_show_atom
98 get :show, :project_id => 1, :id => 1, :format => 'atom' 99 get :show, :project_id => 1, :id => 1, :format => 'atom'
99 assert_response :success 100 assert_response :success
114 assert_response :success 115 assert_response :success
115 assert_template 'new' 116 assert_template 'new'
116 117
117 assert_select 'select[name=?]', 'board[parent_id]' do 118 assert_select 'select[name=?]', 'board[parent_id]' do
118 assert_select 'option', (Project.find(1).boards.size + 1) 119 assert_select 'option', (Project.find(1).boards.size + 1)
119 assert_select 'option[value=]', :text => '' 120 assert_select 'option[value=]', :text => ' '
120 assert_select 'option[value=1]', :text => 'Help' 121 assert_select 'option[value=1]', :text => 'Help'
121 end 122 end
122 end 123 end
123 124
124 def test_new_without_project_boards 125 def test_new_without_project_boards
136 @request.session[:user_id] = 2 137 @request.session[:user_id] = 2
137 assert_difference 'Board.count' do 138 assert_difference 'Board.count' do
138 post :create, :project_id => 1, :board => { :name => 'Testing', :description => 'Testing board creation'} 139 post :create, :project_id => 1, :board => { :name => 'Testing', :description => 'Testing board creation'}
139 end 140 end
140 assert_redirected_to '/projects/ecookbook/settings/boards' 141 assert_redirected_to '/projects/ecookbook/settings/boards'
141 board = Board.first(:order => 'id DESC') 142 board = Board.order('id DESC').first
142 assert_equal 'Testing', board.name 143 assert_equal 'Testing', board.name
143 assert_equal 'Testing board creation', board.description 144 assert_equal 'Testing board creation', board.description
144 end 145 end
145 146
146 def test_create_with_parent 147 def test_create_with_parent
147 @request.session[:user_id] = 2 148 @request.session[:user_id] = 2
148 assert_difference 'Board.count' do 149 assert_difference 'Board.count' do
149 post :create, :project_id => 1, :board => { :name => 'Testing', :description => 'Testing', :parent_id => 2} 150 post :create, :project_id => 1, :board => { :name => 'Testing', :description => 'Testing', :parent_id => 2}
150 end 151 end
151 assert_redirected_to '/projects/ecookbook/settings/boards' 152 assert_redirected_to '/projects/ecookbook/settings/boards'
152 board = Board.first(:order => 'id DESC') 153 board = Board.order('id DESC').first
153 assert_equal Board.find(2), board.parent 154 assert_equal Board.find(2), board.parent
154 end 155 end
155 156
156 def test_create_with_failure 157 def test_create_with_failure
157 @request.session[:user_id] = 2 158 @request.session[:user_id] = 2