##// END OF EJS Templates
Replace Date.today with User.current.today (#22320)....
Replace Date.today with User.current.today (#22320). Depending on the offset between a user's configured timezone and the server timezone, Date.today may be more or less often wrong from the user's perspective, leading to things like issues marked as overdue too early or too late, or yesterday / tomorrow being displayed / selected where 'today' is intended. A test case illustrating the problem with Issue#overdue? is included Patch by Jens Kraemer. git-svn-id: http://svn.redmine.org/redmine/trunk@15379 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r14856:cda9c63d9c21
r14997:ed50d42210ea
Show More
auth_sources_controller_test.rb
173 lines | 5.3 KiB | text/x-ruby | RubyLexer
/ test / functional / auth_sources_controller_test.rb
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 # Redmine - project management software
Jean-Philippe Lang
Updates copyright for 2016....
r14856 # Copyright (C) 2006-2016 Jean-Philippe Lang
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 #
# 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.
#
# 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.
#
# 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.
require File.expand_path('../../test_helper', __FILE__)
class AuthSourcesControllerTest < ActionController::TestCase
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 fixtures :users, :auth_sources
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346
def setup
@request.session[:user_id] = 1
end
def test_index
get :index
assert_response :success
assert_template 'index'
assert_not_nil assigns(:auth_sources)
end
def test_new
get :new
assert_response :success
assert_template 'new'
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112
source = assigns(:auth_source)
assert_equal AuthSourceLdap, source.class
assert source.new_record?
Jean-Philippe Lang
Code cleanup in AuthSource controller and views....
r10767 assert_select 'form#auth_source_form' do
assert_select 'input[name=type][value=AuthSourceLdap]'
assert_select 'input[name=?]', 'auth_source[host]'
end
end
def test_new_with_invalid_type_should_respond_with_404
get :new, :type => 'foo'
assert_response 404
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
def test_create
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 assert_difference 'AuthSourceLdap.count' do
post :create, :type => 'AuthSourceLdap', :auth_source => {:name => 'Test', :host => '127.0.0.1', :port => '389', :attr_login => 'cn'}
assert_redirected_to '/auth_sources'
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
Jean-Philippe Lang
Code cleanup in AuthSource controller and views....
r10767 source = AuthSourceLdap.order('id DESC').first
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 assert_equal 'Test', source.name
assert_equal '127.0.0.1', source.host
assert_equal 389, source.port
assert_equal 'cn', source.attr_login
end
def test_create_with_failure
assert_no_difference 'AuthSourceLdap.count' do
Toshi MARUYAMA
code format clean up AuthSourcesControllerTest...
r12520 post :create, :type => 'AuthSourceLdap',
:auth_source => {:name => 'Test', :host => '',
:port => '389', :attr_login => 'cn'}
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 assert_response :success
assert_template 'new'
end
Jean-Philippe Lang
Replaced "can't" with "cannot" in error messages....
r13399 assert_select_error /host cannot be blank/i
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
def test_edit
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 get :edit, :id => 1
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346
assert_response :success
assert_template 'edit'
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112
Jean-Philippe Lang
Code cleanup in AuthSource controller and views....
r10767 assert_select 'form#auth_source_form' do
assert_select 'input[name=?]', 'auth_source[host]'
end
end
def test_edit_should_not_contain_password
AuthSource.find(1).update_column :account_password, 'secret'
get :edit, :id => 1
assert_response :success
assert_select 'input[value=secret]', 0
Jean-Philippe Lang
Upgrade to Rails 4.2.0 (#14534)....
r13510 assert_select 'input[name=dummy_password][value^=xxxxxx]'
Jean-Philippe Lang
Code cleanup in AuthSource controller and views....
r10767 end
def test_edit_invalid_should_respond_with_404
get :edit, :id => 99
assert_response 404
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
def test_update
Toshi MARUYAMA
code format clean up AuthSourcesControllerTest...
r12520 put :update, :id => 1,
:auth_source => {:name => 'Renamed', :host => '192.168.0.10',
:port => '389', :attr_login => 'uid'}
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 assert_redirected_to '/auth_sources'
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 source = AuthSourceLdap.find(1)
assert_equal 'Renamed', source.name
assert_equal '192.168.0.10', source.host
end
def test_update_with_failure
Toshi MARUYAMA
code format clean up AuthSourcesControllerTest...
r12520 put :update, :id => 1,
:auth_source => {:name => 'Renamed', :host => '',
:port => '389', :attr_login => 'uid'}
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 assert_response :success
assert_template 'edit'
Jean-Philippe Lang
Replaced "can't" with "cannot" in error messages....
r13399 assert_select_error /host cannot be blank/i
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 end
def test_destroy
assert_difference 'AuthSourceLdap.count', -1 do
Jean-Philippe Lang
Resourcified auth_sources....
r9113 delete :destroy, :id => 1
Jean-Philippe Lang
Code cleanup in AuthSource controller and views....
r10767 assert_redirected_to '/auth_sources'
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 end
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 def test_destroy_auth_source_in_use
User.find(2).update_attribute :auth_source_id, 1
assert_no_difference 'AuthSourceLdap.count' do
Jean-Philippe Lang
Resourcified auth_sources....
r9113 delete :destroy, :id => 1
Jean-Philippe Lang
Code cleanup in AuthSource controller and views....
r10767 assert_redirected_to '/auth_sources'
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 end
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 def test_test_connection
AuthSourceLdap.any_instance.stubs(:test_connection).returns(true)
get :test_connection, :id => 1
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 assert_redirected_to '/auth_sources'
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 assert_not_nil flash[:notice]
assert_match /successful/i, flash[:notice]
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 def test_test_connection_with_failure
Jean-Philippe Lang
Fixed that LDAP error is not displayed when testing connection....
r9114 AuthSourceLdap.any_instance.stubs(:initialize_ldap_con).raises(Net::LDAP::LdapError.new("Something went wrong"))
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 get :test_connection, :id => 1
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 assert_redirected_to '/auth_sources'
Jean-Philippe Lang
Merged LdapAuthSourceController into AuthSourceController....
r9112 assert_not_nil flash[:error]
Jean-Philippe Lang
Fixed that LDAP error is not displayed when testing connection....
r9114 assert_include 'Something went wrong', flash[:error]
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end
Jean-Philippe Lang
Auto-populate fields while creating a new user with LDAP (#10286)....
r10850
def test_autocomplete_for_new_user
AuthSource.expects(:search).with('foo').returns([
{:login => 'foo1', :firstname => 'John', :lastname => 'Smith', :mail => 'foo1@example.net', :auth_source_id => 1},
{:login => 'Smith', :firstname => 'John', :lastname => 'Doe', :mail => 'foo2@example.net', :auth_source_id => 1}
])
get :autocomplete_for_new_user, :term => 'foo'
assert_response :success
assert_equal 'application/json', response.content_type
json = ActiveSupport::JSON.decode(response.body)
assert_kind_of Array, json
assert_equal 2, json.size
assert_equal 'foo1', json.first['value']
assert_equal 'foo1 (John Smith)', json.first['label']
end
Toshi MARUYAMA
svn propset "svn:eol-style" native test/functional/auth_sources_controller_test.rb...
r8346 end