github-ldap 1.3.0 → 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/github-ldap.gemspec +1 -1
- data/lib/github/ldap/filter.rb +11 -4
- data/test/filter_test.rb +6 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f9c7b785a3c6daf7679b1722ee0d22a81dcb4028
|
4
|
+
data.tar.gz: 83cc3a67ee48508032a660fa75952a3691d3fff4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 60424b6d8541c2c2ee493958e368b5194cda45b4a5f67807ee5fc9dd31b015b01e1abc72c5b4fece2739900ba70ee953d94e4e8ad8dadba49324336472bac6ad
|
7
|
+
data.tar.gz: 340bf76161061af7a4a35307e36731c72ace77c79699f4f641f97531dd36b66fb73e7b3ab3b47ae1ff0cf0aa3d0065648e7b7d888211d2f52f12e22109706880
|
data/github-ldap.gemspec
CHANGED
data/lib/github/ldap/filter.rb
CHANGED
@@ -26,10 +26,17 @@ module GitHub
|
|
26
26
|
# Returns a Net::LDAP::Filter.
|
27
27
|
def member_filter(entry = nil, uid_attr = @ldap.uid)
|
28
28
|
if entry
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
29
|
+
filter =
|
30
|
+
MEMBERSHIP_NAMES. map {|n| Net::LDAP::Filter.eq(n, entry.dn) }.
|
31
|
+
reduce(:|)
|
32
|
+
|
33
|
+
if !entry[uid_attr].empty?
|
34
|
+
filter |=
|
35
|
+
entry[uid_attr].map { |uid| Net::LDAP::Filter.eq("memberUid", uid) }.
|
36
|
+
reduce(:|)
|
37
|
+
end
|
38
|
+
|
39
|
+
filter
|
33
40
|
else
|
34
41
|
(MEMBERSHIP_NAMES + %w(memberUid)).
|
35
42
|
map {|n| Net::LDAP::Filter.pres(n)}.reduce(:|)
|
data/test/filter_test.rb
CHANGED
@@ -32,6 +32,12 @@ class FilterTest < Minitest::Test
|
|
32
32
|
@subject.member_filter(@entry).to_s
|
33
33
|
end
|
34
34
|
|
35
|
+
def test_member_without_uid
|
36
|
+
@entry.uid = nil
|
37
|
+
assert_equal "(|(member=#{@me})(uniqueMember=#{@me}))",
|
38
|
+
@subject.member_filter(@entry).to_s
|
39
|
+
end
|
40
|
+
|
35
41
|
def test_groups_reduced
|
36
42
|
assert_equal "(|(cn=Enterprise)(cn=People))",
|
37
43
|
@subject.group_filter(%w(Enterprise People)).to_s
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: github-ldap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Calavera
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-08-
|
11
|
+
date: 2014-08-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-ldap
|