mit-ldap 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +2 -2
- data/lib/mit-ldap.rb +3 -3
- data/lib/mit/ldap.rb +11 -7
- data/lib/mit/ldap/version.rb +1 -1
- data/spec/ldap_spec.rb +14 -4
- metadata +7 -7
data/README.md
CHANGED
data/lib/mit-ldap.rb
CHANGED
@@ -15,9 +15,9 @@ module MIT
|
|
15
15
|
def ip_addresses
|
16
16
|
if RbConfig::CONFIG['host_os'] =~ /darwin/
|
17
17
|
`ifconfig | awk '/inet / {print $2}'`
|
18
|
-
|
19
|
-
|
20
|
-
|
18
|
+
else
|
19
|
+
`ifconfig | sed -rn 's/.*r:([^ ]+) .*/\1/p'`
|
20
|
+
end
|
21
21
|
end
|
22
22
|
end
|
23
23
|
end
|
data/lib/mit/ldap.rb
CHANGED
@@ -1,23 +1,27 @@
|
|
1
1
|
module MIT
|
2
2
|
module LDAP
|
3
3
|
|
4
|
-
class << self
|
5
|
-
attr_accessor :connection
|
6
|
-
end
|
7
|
-
|
8
4
|
def self.connect!
|
9
5
|
if MIT.on_campus?
|
10
|
-
|
6
|
+
ldap_connection = ::LDAP::Conn.new('ldap-too.mit.edu')
|
11
7
|
singleton_class.send(:include,
|
12
8
|
Ldaptic::Module(
|
13
9
|
:adapter => :ldap_conn,
|
14
|
-
:connection =>
|
10
|
+
:connection => ldap_connection,
|
15
11
|
:host => 'ldap-too.mit.edu',
|
16
12
|
:base => 'dc=mit,dc=edu',
|
17
13
|
)
|
18
14
|
)
|
19
15
|
end
|
20
|
-
return
|
16
|
+
return connected?
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.connection
|
20
|
+
respond_to?(:adapter) ? adapter.instance_variable_get(:@connection) : nil
|
21
|
+
end
|
22
|
+
|
23
|
+
def self.connected?
|
24
|
+
!self.connection.nil?
|
21
25
|
end
|
22
26
|
end
|
23
27
|
end
|
data/lib/mit/ldap/version.rb
CHANGED
data/spec/ldap_spec.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'mit-ldap'
|
2
|
+
require 'ldaptic/adapters/ldap_conn_adapter'
|
2
3
|
|
3
4
|
module MIT
|
4
5
|
describe LDAP do
|
@@ -9,10 +10,18 @@ module MIT
|
|
9
10
|
# Server is not properly configured so the attributes required
|
10
11
|
# by Ldaptic when configuring class hierarchy do not exist resulting
|
11
12
|
# searches failing (i.e., this method should only be used to get around
|
12
|
-
# ldap-too only being accessible from campus
|
13
|
+
# ldap-too only being accessible from campus)
|
14
|
+
let!(:connection) { ::LDAP::Conn.new('ldap.mit.edu') }
|
15
|
+
|
13
16
|
def stub_ldap_connection
|
14
|
-
|
15
|
-
|
17
|
+
::LDAP::Conn.stub(:new).and_return(connection)
|
18
|
+
stub_ldaptic_adapter(connection)
|
19
|
+
end
|
20
|
+
|
21
|
+
def stub_ldaptic_adapter(connection = nil)
|
22
|
+
adapter = double('adapter')
|
23
|
+
adapter.stub(:instance_variable_get).with(:@connection).and_return(connection)
|
24
|
+
LDAP.stub(:adapter).and_return(adapter)
|
16
25
|
end
|
17
26
|
|
18
27
|
def stub_ldaptic_include
|
@@ -21,6 +30,7 @@ module MIT
|
|
21
30
|
|
22
31
|
describe ".connect!" do
|
23
32
|
describe "when off campus" do
|
33
|
+
|
24
34
|
it "returns false" do
|
25
35
|
MIT.stub(:on_campus?).and_return(false)
|
26
36
|
LDAP.connect!.should be_false
|
@@ -43,7 +53,7 @@ module MIT
|
|
43
53
|
Ldaptic.should_receive(:Module).
|
44
54
|
with(:adapter => :ldap_conn,
|
45
55
|
:base => 'dc=mit,dc=edu',
|
46
|
-
:connection =>
|
56
|
+
:connection => connection,
|
47
57
|
:host => 'ldap-too.mit.edu'
|
48
58
|
)
|
49
59
|
LDAP.connect!
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mit-ldap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-04-10 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: ldaptic
|
16
|
-
requirement: &
|
16
|
+
requirement: &70184617094400 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0.2'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70184617094400
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: ruby-ldap
|
27
|
-
requirement: &
|
27
|
+
requirement: &70184617093880 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0.9'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70184617093880
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec
|
38
|
-
requirement: &
|
38
|
+
requirement: &70184617093400 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '2.0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70184617093400
|
47
47
|
description: Ruby interface for querying MIT LDAP server (only if you're on MITnet)
|
48
48
|
email:
|
49
49
|
- edd_d@mit.edu
|