##// END OF EJS Templates
Speeds up rendering of the project list for users who belong to hundreds of projects....
Speeds up rendering of the project list for users who belong to hundreds of projects. git-svn-id: http://svn.redmine.org/redmine/trunk@16123 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r15313:ec31b616982f
r15741:f8df935dcada
Show More
admin_controller_test.rb
157 lines | 4.4 KiB | text/x-ruby | RubyLexer
/ test / functional / admin_controller_test.rb
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521 # Redmine - project management software
Jean-Philippe Lang
Updates copyright for 2016....
r14856 # Copyright (C) 2006-2016 Jean-Philippe Lang
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 #
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521 #
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521 #
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Jean-Baptiste Barth
Use absolute paths in test/**/* requires for Ruby 1.9.2 compatibility. #4050...
r4395 require File.expand_path('../../test_helper', __FILE__)
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974
Jean-Philippe Lang
Adds our own class for controller tests....
r15279 class AdminControllerTest < Redmine::ControllerTest
Jean-Philippe Lang
Add support for multiple email addresses per user (#4244)....
r13504 fixtures :projects, :users, :email_addresses, :roles
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 def setup
User.current = nil
@request.session[:user_id] = 1 # admin
end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 def test_index
get :index
Jean-Philippe Lang
Code cleanup: implement Plugin#to_param for generating routes....
r10766 assert_select 'div.nodata', 0
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 def test_index_with_no_configuration_data
delete_configuration_data
get :index
Jean-Philippe Lang
Code cleanup: implement Plugin#to_param for generating routes....
r10766 assert_select 'div.nodata'
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Adds the ability to search for a project name or identifier on the administration projects list....
r1945 def test_projects
get :projects
assert_response :success
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15313 assert_select 'tr.project.closed', 0
Jean-Philippe Lang
Adds the ability to search for a project name or identifier on the administration projects list....
r1945 end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Adds named scopes for projects index....
r7962 def test_projects_with_status_filter
get :projects, :status => 1
assert_response :success
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15313 assert_select 'tr.project.closed', 0
Jean-Philippe Lang
Adds named scopes for projects index....
r7962 end
Jean-Philippe Lang
Adds the ability to search for a project name or identifier on the administration projects list....
r1945 def test_projects_with_name_filter
get :projects, :name => 'store', :status => ''
assert_response :success
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15313
assert_select 'tr.project td.name', :text => 'OnlineStore'
assert_select 'tr.project', 1
Jean-Philippe Lang
Adds the ability to search for a project name or identifier on the administration projects list....
r1945 end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 def test_load_default_configuration_data
delete_configuration_data
post :default_configuration, :lang => 'fr'
Eric Davis
Add some assertions on the default data loading test to debug a Ruby 1.9 failure....
r3685 assert_response :redirect
assert_nil flash[:error]
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 assert IssueStatus.find_by_name('Nouveau')
end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
More function tests for AdminController....
r9050 def test_load_default_configuration_data_should_rescue_error
delete_configuration_data
Redmine::DefaultData::Loader.stubs(:load).raises(Exception.new("Something went wrong"))
post :default_configuration, :lang => 'fr'
assert_response :redirect
assert_not_nil flash[:error]
assert_match /Something went wrong/, flash[:error]
end
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 def test_test_email
Jean-Philippe Lang
Don't use #delete on String in Mailer....
r9117 user = User.find(1)
Jean-Philippe Lang
Fixed that locking and unlocking a user resets the email notification checkbox (#14020)....
r11609 user.pref.no_self_notified = '1'
Jean-Philippe Lang
Don't use #delete on String in Mailer....
r9117 user.pref.save!
ActionMailer::Base.deliveries.clear
Jean-Philippe Lang
The test email action should only be accessible with POST (#20203)....
r14007 post :test_email
Jean-Philippe Lang
Use named routes in controllers....
r10752 assert_redirected_to '/settings?tab=notifications'
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 mail = ActionMailer::Base.deliveries.last
Jean-Philippe Lang
Do not do assertions on mail class....
r8871 assert_not_nil mail
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 user = User.find(1)
assert_equal [user.mail], mail.bcc
end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Adds test for test email failure....
r7936 def test_test_email_failure_should_display_the_error
Jean-Philippe Lang
Stub Mailer with mocha....
r9462 Mailer.stubs(:test_email).raises(Exception, 'Some error message')
Jean-Philippe Lang
The test email action should only be accessible with POST (#20203)....
r14007 post :test_email
Jean-Philippe Lang
Use named routes in controllers....
r10752 assert_redirected_to '/settings?tab=notifications'
Jean-Philippe Lang
Adds test for test email failure....
r7936 assert_match /Some error message/, flash[:error]
end
Jean-Philippe Lang
Adds a few Plugin tests....
r2038 def test_no_plugins
Jean-Philippe Lang
Don't clear plugins in tests (#16258)....
r12712 Redmine::Plugin.stubs(:registered_plugins).returns({})
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Adds a few Plugin tests....
r2038 get :plugins
assert_response :success
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15313 assert_select '.nodata'
Jean-Philippe Lang
Adds a few Plugin tests....
r2038 end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Moves plugin list to its own administration menu item....
r2035 def test_plugins
Jean-Philippe Lang
Adds a few Plugin tests....
r2038 # Register a few plugins
Redmine::Plugin.register :foo do
name 'Foo plugin'
author 'John Smith'
description 'This is a test plugin'
version '0.0.1'
settings :default => {'sample_setting' => 'value', 'foo'=>'bar'}, :partial => 'foo/settings'
end
Redmine::Plugin.register :bar do
end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Moves plugin list to its own administration menu item....
r2035 get :plugins
assert_response :success
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Code cleanup: implement Plugin#to_param for generating routes....
r10766 assert_select 'tr#plugin-foo' do
assert_select 'td span.name', :text => 'Foo plugin'
Jean-Philippe Lang
Quote values in DOM selectors for Nokogiri compatibility....
r13237 assert_select 'td.configure a[href="/settings/plugin/foo"]'
Jean-Philippe Lang
Code cleanup: implement Plugin#to_param for generating routes....
r10766 end
assert_select 'tr#plugin-bar' do
assert_select 'td span.name', :text => 'Bar'
assert_select 'td.configure a', 0
end
Jean-Philippe Lang
Moves plugin list to its own administration menu item....
r2035 end
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974
def test_info
get :info
assert_response :success
end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Fixes broken admin menu extension (#4351)....
r3017 def test_admin_menu_plugin_extension
Redmine::MenuManager.map :admin_menu do |menu|
menu.push :test_admin_menu_plugin_extension, '/foo/bar', :caption => 'Test'
end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Fixes broken admin menu extension (#4351)....
r3017 get :index
assert_response :success
Jean-Philippe Lang
Quote values in DOM selectors for Nokogiri compatibility....
r13237 assert_select 'div#admin-menu a[href="/foo/bar"]', :text => 'Test'
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Fixes broken admin menu extension (#4351)....
r3017 Redmine::MenuManager.map :admin_menu do |menu|
menu.delete :test_admin_menu_plugin_extension
end
end
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Moves plugin list to its own administration menu item....
r2035 private
Toshi MARUYAMA
remove trailing white-spaces from test/functional/admin_controller_test.rb....
r6521
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 def delete_configuration_data
Jean-Philippe Lang
Don't pass conditions to #delete_all....
r15293 Role.where('builtin = 0').delete_all
Jean-Philippe Lang
Default configuration data can now be loaded from the administration screen....
r1027 Tracker.delete_all
IssueStatus.delete_all
Enumeration.delete_all
end
Jean-Philippe Lang
Added some functional tests and a CVS test repository....
r974 end