##// END OF EJS Templates
remove trailing white-spaces from test/unit/auth_source_ldap_test.rb....
Toshi MARUYAMA -
r6599:cdabfbac52bf
parent child
Show More
@@ -1,80 +1,80
1 # Redmine - project management software
1 # Redmine - project management software
2 # Copyright (C) 2006-2008 Jean-Philippe Lang
2 # Copyright (C) 2006-2011 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.
8 #
8 #
9 # This program is distributed in the hope that it will be useful,
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
12 # GNU General Public License for more details.
13 #
13 #
14 # You should have received a copy of the GNU General Public License
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17
17
18 require File.expand_path('../../test_helper', __FILE__)
18 require File.expand_path('../../test_helper', __FILE__)
19
19
20 class AuthSourceLdapTest < ActiveSupport::TestCase
20 class AuthSourceLdapTest < ActiveSupport::TestCase
21 fixtures :auth_sources
21 fixtures :auth_sources
22
22
23 def setup
23 def setup
24 end
24 end
25
25
26 def test_create
26 def test_create
27 a = AuthSourceLdap.new(:name => 'My LDAP', :host => 'ldap.example.net', :port => 389, :base_dn => 'dc=example,dc=net', :attr_login => 'sAMAccountName')
27 a = AuthSourceLdap.new(:name => 'My LDAP', :host => 'ldap.example.net', :port => 389, :base_dn => 'dc=example,dc=net', :attr_login => 'sAMAccountName')
28 assert a.save
28 assert a.save
29 end
29 end
30
30
31 def test_should_strip_ldap_attributes
31 def test_should_strip_ldap_attributes
32 a = AuthSourceLdap.new(:name => 'My LDAP', :host => 'ldap.example.net', :port => 389, :base_dn => 'dc=example,dc=net', :attr_login => 'sAMAccountName',
32 a = AuthSourceLdap.new(:name => 'My LDAP', :host => 'ldap.example.net', :port => 389, :base_dn => 'dc=example,dc=net', :attr_login => 'sAMAccountName',
33 :attr_firstname => 'givenName ')
33 :attr_firstname => 'givenName ')
34 assert a.save
34 assert a.save
35 assert_equal 'givenName', a.reload.attr_firstname
35 assert_equal 'givenName', a.reload.attr_firstname
36 end
36 end
37
37
38 if ldap_configured?
38 if ldap_configured?
39 context '#authenticate' do
39 context '#authenticate' do
40 setup do
40 setup do
41 @auth = AuthSourceLdap.find(1)
41 @auth = AuthSourceLdap.find(1)
42 end
42 end
43
43
44 context 'with a valid LDAP user' do
44 context 'with a valid LDAP user' do
45 should 'return the user attributes' do
45 should 'return the user attributes' do
46 attributes = @auth.authenticate('example1','123456')
46 attributes = @auth.authenticate('example1','123456')
47 assert attributes.is_a?(Hash), "An hash was not returned"
47 assert attributes.is_a?(Hash), "An hash was not returned"
48 assert_equal 'Example', attributes[:firstname]
48 assert_equal 'Example', attributes[:firstname]
49 assert_equal 'One', attributes[:lastname]
49 assert_equal 'One', attributes[:lastname]
50 assert_equal 'example1@redmine.org', attributes[:mail]
50 assert_equal 'example1@redmine.org', attributes[:mail]
51 assert_equal @auth.id, attributes[:auth_source_id]
51 assert_equal @auth.id, attributes[:auth_source_id]
52 attributes.keys.each do |attribute|
52 attributes.keys.each do |attribute|
53 assert User.new.respond_to?("#{attribute}="), "Unexpected :#{attribute} attribute returned"
53 assert User.new.respond_to?("#{attribute}="), "Unexpected :#{attribute} attribute returned"
54 end
54 end
55 end
55 end
56 end
56 end
57
57
58 context 'with an invalid LDAP user' do
58 context 'with an invalid LDAP user' do
59 should 'return nil' do
59 should 'return nil' do
60 assert_equal nil, @auth.authenticate('nouser','123456')
60 assert_equal nil, @auth.authenticate('nouser','123456')
61 end
61 end
62 end
62 end
63
63
64 context 'without a login' do
64 context 'without a login' do
65 should 'return nil' do
65 should 'return nil' do
66 assert_equal nil, @auth.authenticate('','123456')
66 assert_equal nil, @auth.authenticate('','123456')
67 end
67 end
68 end
68 end
69
69
70 context 'without a password' do
70 context 'without a password' do
71 should 'return nil' do
71 should 'return nil' do
72 assert_equal nil, @auth.authenticate('edavis','')
72 assert_equal nil, @auth.authenticate('edavis','')
73 end
73 end
74 end
74 end
75
75
76 end
76 end
77 else
77 else
78 puts '(Test LDAP server not configured)'
78 puts '(Test LDAP server not configured)'
79 end
79 end
80 end
80 end
General Comments 0
You need to be logged in to leave comments. Login now