Skip to content

Commit 46fea0d

Browse files
committed
Rewrite Domain tests
1 parent 919734e commit 46fea0d

File tree

1 file changed

+50
-47
lines changed

1 file changed

+50
-47
lines changed

test/domain_test.rb

Lines changed: 50 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ def test_user_valid_login
1212
end
1313

1414
def test_user_with_invalid_password
15-
assert !@domain.valid_login?('calavera', 'foo'),
16-
"Login `calavera` expected to be invalid with password `foo`"
15+
assert !@domain.valid_login?('user1', 'foo'),
16+
"Login `user1` expected to be invalid with password `foo`"
1717
end
1818

1919
def test_user_with_invalid_login
@@ -22,115 +22,118 @@ def test_user_with_invalid_login
2222
end
2323

2424
def test_groups_in_server
25-
assert_equal 2, @domain.groups(%w(Enterprise People)).size
25+
assert_equal 2, @domain.groups(%w(ghe-users ghe-admins)).size
2626
end
2727

2828
def test_user_in_group
29-
user = @domain.valid_login?('calavera', 'passworD1')
29+
assert user = @domain.valid_login?('user1', 'passworD1')
3030

31-
assert @domain.is_member?(user, %w(Enterprise People)),
32-
"Expected `Enterprise` or `Poeple` to include the member `#{user.dn}`"
31+
assert @domain.is_member?(user, %w(ghe-users ghe-admins)),
32+
"Expected `ghe-users` or `ghe-admins` to include the member `#{user.dn}`"
3333
end
3434

3535
def test_user_not_in_different_group
36-
user = @domain.valid_login?('calavera', 'passworD1')
36+
user = @domain.valid_login?('user1', 'passworD1')
3737

38-
assert !@domain.is_member?(user, %w(People)),
39-
"Expected `Poeple` not to include the member `#{user.dn}`"
38+
refute @domain.is_member?(user, %w(ghe-admins)),
39+
"Expected `ghe-admins` not to include the member `#{user.dn}`"
4040
end
4141

4242
def test_user_without_group
43-
user = @domain.valid_login?('ldaptest', 'secret')
43+
user = @domain.valid_login?('groupless-user1', 'passworD1')
4444

45-
assert !@domain.is_member?(user, %w(People)),
46-
"Expected `People` not to include the member `#{user.dn}`"
45+
assert !@domain.is_member?(user, %w(all-users)),
46+
"Expected `all-users` not to include the member `#{user.dn}`"
4747
end
4848

49-
def test_authenticate_doesnt_return_invalid_users
50-
user = @domain.authenticate!('calavera', 'passworD1')
51-
assert_equal 'uid=calavera,dc=github,dc=com', user.dn
49+
def test_authenticate_returns_valid_users
50+
user = @domain.authenticate!('user1', 'passworD1')
51+
assert_equal 'uid=user1,ou=People,dc=github,dc=com', user.dn
5252
end
5353

5454
def test_authenticate_doesnt_return_invalid_users
55-
assert !@domain.authenticate!('calavera', 'foo'),
55+
refute @domain.authenticate!('user1', 'foo'),
5656
"Expected `authenticate!` to not return an invalid user"
5757
end
5858

5959
def test_authenticate_check_valid_user_and_groups
60-
user = @domain.authenticate!('calavera', 'passworD1', %w(Enterprise People))
60+
user = @domain.authenticate!('user1', 'passworD1', %w(ghe-users ghe-admins))
6161

62-
assert_equal 'uid=calavera,dc=github,dc=com', user.dn
62+
assert_equal 'uid=user1,ou=People,dc=github,dc=com', user.dn
6363
end
6464

6565
def test_authenticate_doesnt_return_valid_users_in_different_groups
66-
assert !@domain.authenticate!('calavera', 'passworD1', %w(People)),
66+
refute @domain.authenticate!('user1', 'passworD1', %w(ghe-admins)),
6767
"Expected `authenticate!` to not return an user"
6868
end
6969

7070
def test_membership_empty_for_non_members
71-
user = @ldap.domain('uid=calavera,dc=github,dc=com').bind
71+
user = @ldap.domain('uid=user1,ou=People,dc=github,dc=com').bind
7272

73-
assert @domain.membership(user, %w(People)).empty?,
74-
"Expected `calavera` not to be a member of `People`."
73+
assert @domain.membership(user, %w(ghe-admins)).empty?,
74+
"Expected `user1` not to be a member of `ghe-admins`."
7575
end
7676

7777
def test_membership_groups_for_members
78-
user = @ldap.domain('uid=calavera,dc=github,dc=com').bind
79-
groups = @domain.membership(user, %w(Enterprise People))
78+
user = @ldap.domain('uid=user1,ou=People,dc=github,dc=com').bind
79+
groups = @domain.membership(user, %w(ghe-users ghe-admins))
8080

8181
assert_equal 1, groups.size
82-
assert_equal 'cn=Enterprise,ou=Group,dc=github,dc=com', groups.first.dn
82+
assert_equal 'cn=ghe-users,ou=Groups,dc=github,dc=com', groups.first.dn
8383
end
8484

8585
def test_membership_with_virtual_attributes
8686
ldap = GitHub::Ldap.new(options.merge(virtual_attributes: true))
87-
user = ldap.domain('uid=calavera,dc=github,dc=com').bind
88-
user[:memberof] = 'cn=Enterprise,ou=Group,dc=github,dc=com'
87+
88+
user = ldap.domain('uid=user1,ou=People,dc=github,dc=com').bind
89+
user[:memberof] = 'cn=ghe-admins,ou=Groups,dc=github,dc=com'
8990

9091
domain = ldap.domain("dc=github,dc=com")
91-
groups = domain.membership(user, %w(Enterprise People))
92+
groups = domain.membership(user, %w(ghe-admins))
9293

9394
assert_equal 1, groups.size
94-
assert_equal 'cn=Enterprise,ou=Group,dc=github,dc=com', groups.first.dn
95+
assert_equal 'cn=ghe-admins,ou=Groups,dc=github,dc=com', groups.first.dn
9596
end
9697

9798
def test_search
9899
assert 1, @domain.search(
99100
attributes: %w(uid),
100-
filter: Net::LDAP::Filter.eq('uid', 'calavera')).size
101+
filter: Net::LDAP::Filter.eq('uid', 'user1')).size
101102
end
102103

103104
def test_search_override_base_name
104105
assert 1, @domain.search(
105106
base: "this base name is incorrect",
106107
attributes: %w(uid),
107-
filter: Net::LDAP::Filter.eq('uid', 'calavera')).size
108+
filter: Net::LDAP::Filter.eq('uid', 'user1')).size
108109
end
109110

110111
def test_user_exists
111-
assert_equal 'uid=calavera,dc=github,dc=com', @domain.user?('calavera').dn
112+
assert user = @domain.user?('user1')
113+
assert_equal 'uid=user1,ou=People,dc=github,dc=com', user.dn
112114
end
113115

114116
def test_user_wildcards_are_filtered
115-
assert !@domain.user?('cal*'), 'Expected uid `cal*` to not complete'
117+
refute @domain.user?('user*'), 'Expected uid `user*` to not complete'
116118
end
117119

118120
def test_user_does_not_exist
119-
assert !@domain.user?('foobar'), 'Expected uid `foobar` to not exist.'
121+
refute @domain.user?('foobar'), 'Expected uid `foobar` to not exist.'
120122
end
121123

122124
def test_user_returns_every_attribute
123-
assert_equal ['calavera@github.com'], @domain.user?('calavera')[:mail]
125+
assert user = @domain.user?('user1')
126+
assert_equal ['user1@github.com'], user[:mail]
124127
end
125128

126129
def test_auth_binds
127-
user = @domain.user?('calavera')
128-
assert @domain.auth(user, 'passworD1'), 'Expected user to be bound.'
130+
assert user = @domain.user?('user1')
131+
assert @domain.auth(user, 'passworD1'), 'Expected user to bind'
129132
end
130133

131134
def test_auth_does_not_bind
132-
user = @domain.user?('calavera')
133-
assert !@domain.auth(user, 'foo'), 'Expected user not to be bound.'
135+
assert user = @domain.user?('user1')
136+
refute @domain.auth(user, 'foo'), 'Expected user not not bind'
134137
end
135138
end
136139

@@ -149,17 +152,17 @@ def setup
149152
end
150153

151154
def test_membership_in_subgroups
152-
user = @ldap.domain('uid=rubiojr,ou=users,dc=github,dc=com').bind
155+
user = @ldap.domain('uid=user1,ou=People,dc=github,dc=com').bind
153156

154-
assert @domain.is_member?(user, %w(enterprise-ops)),
155-
"Expected `enterprise-ops` to include the member `#{user.dn}`"
157+
assert @domain.is_member?(user, %w(nested-groups)),
158+
"Expected `nested-groups` to include the member `#{user.dn}`"
156159
end
157160

158161
def test_membership_in_deeply_nested_subgroups
159-
assert user = @ldap.domain('uid=user1.1.1.1,ou=users,dc=github,dc=com').bind
162+
assert user = @ldap.domain('uid=user1,ou=People,dc=github,dc=com').bind
160163

161-
assert @domain.is_member?(user, %w(group1)),
162-
"Expected `group1` to include the member `#{user.dn}` via deep recursion"
164+
assert @domain.is_member?(user, %w(n-depth-nested-group4)),
165+
"Expected `n-depth-nested-group4` to include the member `#{user.dn}` via deep recursion"
163166
end
164167
end
165168

@@ -169,11 +172,11 @@ def setup
169172
recursive_group_search_fallback: true
170173
@ldap = GitHub::Ldap.new(opts)
171174
@domain = @ldap.domain("dc=github,dc=com")
172-
@cn = "enterprise-posix-devs"
175+
@cn = "posix-group1"
173176
end
174177

175178
def test_membership_for_posixGroups
176-
assert user = @ldap.domain('uid=mtodd,ou=users,dc=github,dc=com').bind
179+
assert user = @ldap.domain('uid=user1,ou=People,dc=github,dc=com').bind
177180

178181
assert @domain.is_member?(user, [@cn]),
179182
"Expected `#{@cn}` to include the member `#{user.dn}`"

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy