activeldap 3.1.1 → 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. data/Gemfile +1 -14
  2. data/benchmark/README.md +64 -0
  3. data/benchmark/{bench-al.rb → bench-backend.rb} +6 -22
  4. data/benchmark/bench-instantiate.rb +98 -0
  5. data/benchmark/config.yaml.sample +2 -2
  6. data/doc/text/news.textile +38 -0
  7. data/lib/active_ldap.rb +17 -8
  8. data/lib/active_ldap/association/has_many_wrap.rb +15 -2
  9. data/lib/active_ldap/attribute_methods.rb +23 -0
  10. data/lib/active_ldap/attribute_methods/before_type_cast.rb +24 -0
  11. data/lib/active_ldap/attribute_methods/dirty.rb +43 -0
  12. data/lib/active_ldap/attribute_methods/query.rb +31 -0
  13. data/lib/active_ldap/attribute_methods/read.rb +44 -0
  14. data/lib/active_ldap/attribute_methods/write.rb +38 -0
  15. data/lib/active_ldap/attributes.rb +18 -26
  16. data/lib/active_ldap/base.rb +42 -163
  17. data/lib/active_ldap/connection.rb +6 -1
  18. data/lib/active_ldap/get_text.rb +18 -7
  19. data/lib/active_ldap/operations.rb +63 -49
  20. data/lib/active_ldap/persistence.rb +17 -0
  21. data/lib/active_ldap/railtie.rb +3 -0
  22. data/lib/active_ldap/schema.rb +2 -0
  23. data/lib/active_ldap/schema/syntaxes.rb +7 -7
  24. data/lib/active_ldap/validations.rb +2 -2
  25. data/lib/active_ldap/version.rb +3 -0
  26. data/lib/active_ldap/xml.rb +24 -7
  27. data/lib/rails/generators/active_ldap/model/model_generator.rb +3 -3
  28. data/test/add-phonetic-attribute-options-to-slapd.ldif +10 -0
  29. data/test/al-test-utils.rb +428 -0
  30. data/test/command.rb +111 -0
  31. data/test/config.yaml.sample +6 -0
  32. data/test/fixtures/lower_case_object_class_schema.rb +802 -0
  33. data/test/run-test.rb +29 -0
  34. data/test/test_associations.rb +37 -0
  35. data/test/test_base.rb +113 -51
  36. data/test/test_dirty.rb +84 -0
  37. data/test/test_ldif.rb +0 -1
  38. data/test/test_load.rb +0 -1
  39. data/test/test_reflection.rb +7 -14
  40. data/test/test_syntax.rb +104 -43
  41. data/test/test_usermod-binary-del.rb +1 -1
  42. data/test/test_usermod-lang-add.rb +0 -1
  43. metadata +272 -224
  44. data/lib/active_ldap/get_text_fallback.rb +0 -60
  45. data/lib/active_ldap/get_text_support.rb +0 -22
@@ -91,39 +91,117 @@ class TestSyntax < Test::Unit::TestCase
91
91
  assert_dn_type_cast("cn=test", 'Distinguished Name')
92
92
  end
93
93
 
94
- def test_generalized_time_type_cast
95
- assert_type_cast_without_validation(nil, nil, "Generalized Time")
96
- assert_type_cast(Time.parse("1994/12/16 10:32:12"), "19941216103212",
97
- "Generalized Time")
98
- assert_type_cast(Time.parse("1994/12/16 10:32:12Z"), "19941216103212Z",
99
- "Generalized Time")
100
- assert_type_cast(Time.parse("1994/12/16 10:32:12.345 +09:00"),
101
- "19941216103212.345+0900",
102
- "Generalized Time")
103
- begin
104
- Time.utc(1601)
105
- assert_type_cast(Time.utc(1601, 1, 1, 0, 4, 17),
106
- "16010101000417.0Z",
107
- "Generalized Time")
108
- rescue ArgumentError
109
- assert_type_cast(Time.at(0),
110
- "16010101000417.0Z",
111
- "Generalized Time")
94
+ class TestGeneralizedTime < self
95
+ private
96
+ def syntax_name
97
+ "Generalized Time"
112
98
  end
113
99
 
114
- begin
115
- Time.at(-1)
116
- rescue ArgumentError
117
- if $!.message == "argument out of range"
118
- assert_type_cast(Time.parse("1969/12/31 23:59:59 +00:00"),
119
- "19691231235959+0000",
120
- "Generalized Time")
100
+ class TestTypeCast < self
101
+ def test_nil
102
+ assert_type_cast_without_validation(nil, nil, syntax_name)
103
+ end
104
+
105
+ def test_timezone_none
106
+ assert_type_cast(Time.parse("1994/12/16 10:32:12"),
107
+ "19941216103212")
108
+ end
109
+
110
+ def test_timezone_Z
111
+ assert_type_cast(Time.parse("1994/12/16 10:32:12Z"),
112
+ "19941216103212Z")
113
+ end
114
+
115
+ def test_timezone_difference
116
+ assert_type_cast(Time.parse("1994/12/16 10:32:12.345 +09:00"),
117
+ "19941216103212.345+0900")
118
+ end
119
+
120
+ def test_year_month_day_hour_minute
121
+ assert_type_cast(Time.parse("2008/01/07 03:46:00"),
122
+ "200801070346")
123
+ end
124
+
125
+ def test_before_posix_time
126
+ time_can_handle_before_posix_time = false
127
+ begin
128
+ Time.utc(1601)
129
+ time_can_handle_before_posix_time = true
130
+ rescue ArgumentError
131
+ end
132
+
133
+ if time_can_handle_before_posix_time
134
+ assert_type_cast(Time.utc(1601, 1, 1, 0, 4, 17),
135
+ "16010101000417.0Z")
136
+ else
137
+ assert_type_cast(Time.at(0),
138
+ "16010101000417.0Z")
139
+ end
140
+ end
141
+
142
+ private
143
+ def assert_type_cast(type_casted_value, original_value)
144
+ super(type_casted_value, original_value, syntax_name)
145
+ end
146
+ end
147
+
148
+ class TestValidate < self
149
+ class TestValid < self
150
+ def test_no_timezone
151
+ assert_valid("19941216103201")
152
+ end
153
+
154
+ def test_timezone_Z
155
+ assert_valid("19941216103212Z")
156
+ end
157
+
158
+ def test_timezone_difference
159
+ assert_valid("19941216103230+0900")
160
+ end
161
+
162
+ def test_fraction_separator_period
163
+ assert_valid("20080107034615.0Z")
164
+ end
165
+
166
+ def test_fraction_separator_comma
167
+ assert_valid("20080107034615,123-0900")
168
+ end
169
+
170
+ def test_year_month_day_hour_minute
171
+ assert_valid("199412161032")
172
+ end
173
+
174
+ private
175
+ def assert_valid(value)
176
+ super(value, syntax_name)
177
+ end
178
+ end
179
+
180
+ class TestInvalid < self
181
+ def test_year_only
182
+ value = "1994"
183
+ params = [value.inspect, %w(month day hour minute).join(", ")]
184
+ assert_invalid(_("%s has missing components: %s") % params,
185
+ value)
186
+ end
187
+
188
+ def test_year_month_day_hour_only
189
+ value = "1994121610"
190
+ params = [value.inspect, %w(minute).join(", ")]
191
+ assert_invalid(_("%s has missing components: %s") % params,
192
+ value)
193
+ end
194
+
195
+ private
196
+ def assert_invalid(reason, value)
197
+ super(reason, value, syntax_name)
198
+ end
121
199
  end
122
200
  end
123
201
  end
124
202
 
125
203
  def test_integer_type_cast
126
- assert_type_cast_without_validation(nil, nil, "Generalized Time")
204
+ assert_type_cast_without_validation(nil, nil, "Integer")
127
205
  assert_type_cast(1321, "1321", "Integer")
128
206
  end
129
207
 
@@ -199,23 +277,6 @@ class TestSyntax < Test::Unit::TestCase
199
277
  value, "Directory String")
200
278
  end
201
279
 
202
- def test_generalized_time_validate
203
- assert_valid("19941216103201", "Generalized Time")
204
- assert_valid("19941216103212Z", "Generalized Time")
205
- assert_valid("19941216103230+0900", "Generalized Time")
206
- assert_valid("20080107034615.0Z", "Generalized Time")
207
- assert_valid("20080107034615,123-0900", "Generalized Time")
208
-
209
- value = "1994"
210
- params = [value.inspect, %w(month day hour minute second).join(", ")]
211
- assert_invalid(_("%s has missing components: %s") % params,
212
- value, "Generalized Time")
213
- value = "199412161032"
214
- params = [value.inspect, %w(second).join(", ")]
215
- assert_invalid(_("%s has missing components: %s") % params,
216
- value, "Generalized Time")
217
- end
218
-
219
280
  def test_integer_validate
220
281
  assert_valid("1321", "Integer")
221
282
 
@@ -26,7 +26,7 @@ class TestUsermodBinaryDel < Test::Unit::TestCase
26
26
  make_temporary_user(:simple => true) do |user, password|
27
27
  user.add_class("strongAuthenticationUser")
28
28
  user.user_certificate = certificate
29
- assert(user.save)
29
+ assert_true(user.save)
30
30
  assert_usermod_binary_del_successfully(user.uid, "New #{user.cn}",
31
31
  user.uid_number.to_i + 100)
32
32
  end
@@ -33,7 +33,6 @@ class TestUsermodLangAdd < Test::Unit::TestCase
33
33
  def assert_usermod_lang_add_successfully(name, cn, uid, *args, &block)
34
34
  _wrap_assertion do
35
35
  assert(@user_class.exists?(name))
36
- previous_classes = @user_class.find(name).classes
37
36
  args.concat([name, cn, uid])
38
37
  assert_equal([true, ""], run_command(*args, &block))
39
38
  assert(@user_class.exists?(name))
metadata CHANGED
@@ -1,198 +1,228 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: activeldap
3
- version: !ruby/object:Gem::Version
4
- hash: 1
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.2.0
5
5
  prerelease:
6
- segments:
7
- - 3
8
- - 1
9
- - 1
10
- version: 3.1.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Will Drewry
14
9
  - Kouhei Sutou
15
10
  autorequire:
16
11
  bindir: bin
17
12
  cert_chain: []
18
-
19
- date: 2011-11-03 00:00:00 Z
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
22
- version_requirements: &id001 !ruby/object:Gem::Requirement
13
+ date: 2012-08-28 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: activemodel
17
+ requirement: !ruby/object:Gem::Requirement
23
18
  none: false
24
- requirements:
19
+ requirements:
25
20
  - - ~>
26
- - !ruby/object:Gem::Version
27
- hash: 3
28
- segments:
29
- - 3
30
- - 1
31
- - 0
32
- version: 3.1.0
33
- name: activemodel
34
- prerelease: false
21
+ - !ruby/object:Gem::Version
22
+ version: 3.2.8
35
23
  type: :runtime
36
- requirement: *id001
37
- - !ruby/object:Gem::Dependency
38
- version_requirements: &id002 !ruby/object:Gem::Requirement
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
39
26
  none: false
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
- version: "0"
27
+ requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ version: 3.2.8
31
+ - !ruby/object:Gem::Dependency
47
32
  name: locale
48
- prerelease: false
49
- type: :runtime
50
- requirement: *id002
51
- - !ruby/object:Gem::Dependency
52
- version_requirements: &id003 !ruby/object:Gem::Requirement
33
+ requirement: !ruby/object:Gem::Requirement
53
34
  none: false
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- hash: 3
58
- segments:
59
- - 0
60
- version: "0"
61
- name: fast_gettext
35
+ requirements:
36
+ - - ! '>='
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ type: :runtime
62
40
  prerelease: false
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: gettext
49
+ requirement: !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
63
55
  type: :runtime
64
- requirement: *id003
65
- - !ruby/object:Gem::Dependency
66
- version_requirements: &id004 !ruby/object:Gem::Requirement
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
67
58
  none: false
68
- requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- hash: 3
72
- segments:
73
- - 0
74
- version: "0"
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ - !ruby/object:Gem::Dependency
75
64
  name: gettext_i18n_rails
76
- prerelease: false
65
+ requirement: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ! '>='
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
77
71
  type: :runtime
78
- requirement: *id004
79
- - !ruby/object:Gem::Dependency
80
- version_requirements: &id005 !ruby/object:Gem::Requirement
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
81
74
  none: false
82
- requirements:
83
- - - ">="
84
- - !ruby/object:Gem::Version
85
- hash: 3
86
- segments:
87
- - 0
88
- version: "0"
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: '0'
79
+ - !ruby/object:Gem::Dependency
89
80
  name: ruby-ldap
90
- prerelease: false
81
+ requirement: !ruby/object:Gem::Requirement
82
+ none: false
83
+ requirements:
84
+ - - ! '>='
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
91
87
  type: :development
92
- requirement: *id005
93
- - !ruby/object:Gem::Dependency
94
- version_requirements: &id006 !ruby/object:Gem::Requirement
88
+ prerelease: false
89
+ version_requirements: !ruby/object:Gem::Requirement
95
90
  none: false
96
- requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- hash: 3
100
- segments:
101
- - 0
102
- version: "0"
91
+ requirements:
92
+ - - ! '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ - !ruby/object:Gem::Dependency
103
96
  name: net-ldap
104
- prerelease: false
97
+ requirement: !ruby/object:Gem::Requirement
98
+ none: false
99
+ requirements:
100
+ - - ! '>='
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
105
103
  type: :development
106
- requirement: *id006
107
- - !ruby/object:Gem::Dependency
108
- version_requirements: &id007 !ruby/object:Gem::Requirement
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
109
106
  none: false
110
- requirements:
111
- - - ">="
112
- - !ruby/object:Gem::Version
113
- hash: 3
114
- segments:
115
- - 0
116
- version: "0"
117
- name: jeweler
107
+ requirements:
108
+ - - ! '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: bundler
113
+ requirement: !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - ! '>='
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :development
118
120
  prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ! '>='
125
+ - !ruby/object:Gem::Version
126
+ version: '0'
127
+ - !ruby/object:Gem::Dependency
128
+ name: rake
129
+ requirement: !ruby/object:Gem::Requirement
130
+ none: false
131
+ requirements:
132
+ - - ! '>='
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
119
135
  type: :development
120
- requirement: *id007
121
- - !ruby/object:Gem::Dependency
122
- version_requirements: &id008 !ruby/object:Gem::Requirement
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
123
138
  none: false
124
- requirements:
125
- - - ">="
126
- - !ruby/object:Gem::Version
127
- hash: 3
128
- segments:
129
- - 0
130
- version: "0"
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
143
+ - !ruby/object:Gem::Dependency
131
144
  name: test-unit
132
- prerelease: false
145
+ requirement: !ruby/object:Gem::Requirement
146
+ none: false
147
+ requirements:
148
+ - - ! '>='
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
133
151
  type: :development
134
- requirement: *id008
135
- - !ruby/object:Gem::Dependency
136
- version_requirements: &id009 !ruby/object:Gem::Requirement
152
+ prerelease: false
153
+ version_requirements: !ruby/object:Gem::Requirement
137
154
  none: false
138
- requirements:
139
- - - ">="
140
- - !ruby/object:Gem::Version
141
- hash: 3
142
- segments:
143
- - 0
144
- version: "0"
155
+ requirements:
156
+ - - ! '>='
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ - !ruby/object:Gem::Dependency
145
160
  name: test-unit-notify
146
- prerelease: false
161
+ requirement: !ruby/object:Gem::Requirement
162
+ none: false
163
+ requirements:
164
+ - - ! '>='
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
147
167
  type: :development
148
- requirement: *id009
149
- - !ruby/object:Gem::Dependency
150
- version_requirements: &id010 !ruby/object:Gem::Requirement
168
+ prerelease: false
169
+ version_requirements: !ruby/object:Gem::Requirement
151
170
  none: false
152
- requirements:
153
- - - ">="
154
- - !ruby/object:Gem::Version
155
- hash: 3
156
- segments:
157
- - 0
158
- version: "0"
171
+ requirements:
172
+ - - ! '>='
173
+ - !ruby/object:Gem::Version
174
+ version: '0'
175
+ - !ruby/object:Gem::Dependency
159
176
  name: yard
160
- prerelease: false
177
+ requirement: !ruby/object:Gem::Requirement
178
+ none: false
179
+ requirements:
180
+ - - ! '>='
181
+ - !ruby/object:Gem::Version
182
+ version: '0'
161
183
  type: :development
162
- requirement: *id010
163
- - !ruby/object:Gem::Dependency
164
- version_requirements: &id011 !ruby/object:Gem::Requirement
184
+ prerelease: false
185
+ version_requirements: !ruby/object:Gem::Requirement
165
186
  none: false
166
- requirements:
167
- - - ">="
168
- - !ruby/object:Gem::Version
169
- hash: 3
170
- segments:
171
- - 0
172
- version: "0"
187
+ requirements:
188
+ - - ! '>='
189
+ - !ruby/object:Gem::Version
190
+ version: '0'
191
+ - !ruby/object:Gem::Dependency
173
192
  name: RedCloth
174
- prerelease: false
193
+ requirement: !ruby/object:Gem::Requirement
194
+ none: false
195
+ requirements:
196
+ - - ! '>='
197
+ - !ruby/object:Gem::Version
198
+ version: '0'
175
199
  type: :development
176
- requirement: *id011
177
- description: " 'ActiveLdap' is a ruby library which provides a clean\n objected oriented interface to the Ruby/LDAP library. It was inspired\n by ActiveRecord. This is not nearly as clean or as flexible as\n ActiveRecord, but it is still trivial to define new objects and manipulate\n them with minimal difficulty.\n"
178
- email:
200
+ prerelease: false
201
+ version_requirements: !ruby/object:Gem::Requirement
202
+ none: false
203
+ requirements:
204
+ - - ! '>='
205
+ - !ruby/object:Gem::Version
206
+ version: '0'
207
+ description: ! " 'ActiveLdap' is a ruby library which provides a clean\n objected
208
+ oriented interface to the Ruby/LDAP library. It was inspired\n by ActiveRecord.
209
+ This is not nearly as clean or as flexible as\n ActiveRecord, but it is still
210
+ trivial to define new objects and manipulate\n them with minimal difficulty.\n"
211
+ email:
179
212
  - redpig@dataspill.org
180
213
  - kou@cozmixng.org
181
214
  executables: []
182
-
183
215
  extensions: []
184
-
185
- extra_rdoc_files:
186
- - LICENSE
187
- - README.textile
188
- - TODO
189
- files:
216
+ extra_rdoc_files: []
217
+ files:
190
218
  - COPYING
191
219
  - Gemfile
192
220
  - LICENSE
193
221
  - README.textile
194
222
  - TODO
195
- - benchmark/bench-al.rb
223
+ - benchmark/README.md
224
+ - benchmark/bench-backend.rb
225
+ - benchmark/bench-instantiate.rb
196
226
  - benchmark/config.yaml.sample
197
227
  - doc/text/development.textile
198
228
  - doc/text/news.textile
@@ -238,6 +268,12 @@ files:
238
268
  - lib/active_ldap/association/has_many_wrap.rb
239
269
  - lib/active_ldap/association/proxy.rb
240
270
  - lib/active_ldap/associations.rb
271
+ - lib/active_ldap/attribute_methods.rb
272
+ - lib/active_ldap/attribute_methods/before_type_cast.rb
273
+ - lib/active_ldap/attribute_methods/dirty.rb
274
+ - lib/active_ldap/attribute_methods/query.rb
275
+ - lib/active_ldap/attribute_methods/read.rb
276
+ - lib/active_ldap/attribute_methods/write.rb
241
277
  - lib/active_ldap/attributes.rb
242
278
  - lib/active_ldap/base.rb
243
279
  - lib/active_ldap/callbacks.rb
@@ -250,8 +286,6 @@ files:
250
286
  - lib/active_ldap/escape.rb
251
287
  - lib/active_ldap/get_text.rb
252
288
  - lib/active_ldap/get_text/parser.rb
253
- - lib/active_ldap/get_text_fallback.rb
254
- - lib/active_ldap/get_text_support.rb
255
289
  - lib/active_ldap/helper.rb
256
290
  - lib/active_ldap/human_readable.rb
257
291
  - lib/active_ldap/ldap_error.rb
@@ -269,6 +303,7 @@ files:
269
303
  - lib/active_ldap/timeout_stub.rb
270
304
  - lib/active_ldap/user_password.rb
271
305
  - lib/active_ldap/validations.rb
306
+ - lib/active_ldap/version.rb
272
307
  - lib/active_ldap/xml.rb
273
308
  - lib/rails/generators/active_ldap/model/USAGE
274
309
  - lib/rails/generators/active_ldap/model/model_generator.rb
@@ -277,111 +312,124 @@ files:
277
312
  - lib/rails/generators/active_ldap/scaffold/templates/ldap.yml
278
313
  - po/en/active-ldap.po
279
314
  - po/ja/active-ldap.po
280
- - test/test_lpasswd.rb
281
- - test/test_groupadd.rb
282
- - test/test_groupdel.rb
283
- - test/test_base_per_instance.rb
284
- - test/test_groupls.rb
285
- - test/test_connection_per_dn.rb
286
- - test/test_connection.rb
287
- - test/test_usermod-lang-add.rb
315
+ - test/add-phonetic-attribute-options-to-slapd.ldif
316
+ - test/al-test-utils.rb
317
+ - test/command.rb
318
+ - test/config.yaml.sample
319
+ - test/fixtures/lower_case_object_class_schema.rb
320
+ - test/run-test.rb
321
+ - test/test_acts_as_tree.rb
322
+ - test/test_adapter.rb
288
323
  - test/test_associations.rb
289
- - test/test_schema.rb
290
- - test/test_dn.rb
291
324
  - test/test_attributes.rb
292
- - test/test_object_class.rb
293
- - test/test_acts_as_tree.rb
294
- - test/test_usermod-binary-add.rb
295
- - test/test_find.rb
325
+ - test/test_base.rb
326
+ - test/test_base_per_instance.rb
296
327
  - test/test_bind.rb
297
- - test/test_useradd-binary.rb
298
328
  - test/test_callback.rb
299
- - test/test_useradd.rb
300
- - test/test_usermod.rb
329
+ - test/test_configuration.rb
330
+ - test/test_connection.rb
331
+ - test/test_connection_per_class.rb
332
+ - test/test_connection_per_dn.rb
333
+ - test/test_dirty.rb
334
+ - test/test_dn.rb
335
+ - test/test_find.rb
336
+ - test/test_groupadd.rb
337
+ - test/test_groupdel.rb
338
+ - test/test_groupls.rb
339
+ - test/test_groupmod.rb
340
+ - test/test_ldif.rb
341
+ - test/test_load.rb
342
+ - test/test_lpasswd.rb
343
+ - test/test_object_class.rb
344
+ - test/test_reflection.rb
345
+ - test/test_schema.rb
301
346
  - test/test_syntax.rb
302
- - test/test_usermod-binary-add-time.rb
303
347
  - test/test_user.rb
304
348
  - test/test_user_password.rb
305
- - test/test_base.rb
306
- - test/test_adapter.rb
307
- - test/test_groupmod.rb
308
- - test/test_reflection.rb
309
- - test/test_load.rb
310
- - test/test_configuration.rb
311
- - test/test_userls.rb
349
+ - test/test_useradd-binary.rb
350
+ - test/test_useradd.rb
312
351
  - test/test_userdel.rb
313
- - test/test_validation.rb
314
- - test/test_ldif.rb
315
- - test/test_connection_per_class.rb
352
+ - test/test_userls.rb
353
+ - test/test_usermod-binary-add-time.rb
354
+ - test/test_usermod-binary-add.rb
316
355
  - test/test_usermod-binary-del.rb
356
+ - test/test_usermod-lang-add.rb
357
+ - test/test_usermod.rb
358
+ - test/test_validation.rb
317
359
  homepage: http://ruby-activeldap.rubyforge.org/
318
- licenses:
360
+ licenses:
319
361
  - Ruby's or GPLv2 or later
320
362
  post_install_message:
321
363
  rdoc_options: []
322
-
323
- require_paths:
364
+ require_paths:
324
365
  - lib
325
- required_ruby_version: !ruby/object:Gem::Requirement
366
+ required_ruby_version: !ruby/object:Gem::Requirement
326
367
  none: false
327
- requirements:
328
- - - ">="
329
- - !ruby/object:Gem::Version
330
- hash: 3
331
- segments:
368
+ requirements:
369
+ - - ! '>='
370
+ - !ruby/object:Gem::Version
371
+ version: '0'
372
+ segments:
332
373
  - 0
333
- version: "0"
334
- required_rubygems_version: !ruby/object:Gem::Requirement
374
+ hash: 1289272561367511573
375
+ required_rubygems_version: !ruby/object:Gem::Requirement
335
376
  none: false
336
- requirements:
337
- - - ">="
338
- - !ruby/object:Gem::Version
339
- hash: 3
340
- segments:
377
+ requirements:
378
+ - - ! '>='
379
+ - !ruby/object:Gem::Version
380
+ version: '0'
381
+ segments:
341
382
  - 0
342
- version: "0"
383
+ hash: 1289272561367511573
343
384
  requirements: []
344
-
345
385
  rubyforge_project: ruby-activeldap
346
- rubygems_version: 1.8.10
386
+ rubygems_version: 1.8.23
347
387
  signing_key:
348
388
  specification_version: 3
349
389
  summary: ActiveLdap is a object-oriented API to LDAP
350
- test_files:
351
- - test/test_lpasswd.rb
352
- - test/test_groupadd.rb
353
- - test/test_groupdel.rb
354
- - test/test_base_per_instance.rb
355
- - test/test_groupls.rb
356
- - test/test_connection_per_dn.rb
357
- - test/test_connection.rb
358
- - test/test_usermod-lang-add.rb
390
+ test_files:
391
+ - test/add-phonetic-attribute-options-to-slapd.ldif
392
+ - test/al-test-utils.rb
393
+ - test/command.rb
394
+ - test/config.yaml.sample
395
+ - test/fixtures/lower_case_object_class_schema.rb
396
+ - test/run-test.rb
397
+ - test/test_acts_as_tree.rb
398
+ - test/test_adapter.rb
359
399
  - test/test_associations.rb
360
- - test/test_schema.rb
361
- - test/test_dn.rb
362
400
  - test/test_attributes.rb
363
- - test/test_object_class.rb
364
- - test/test_acts_as_tree.rb
365
- - test/test_usermod-binary-add.rb
366
- - test/test_find.rb
401
+ - test/test_base.rb
402
+ - test/test_base_per_instance.rb
367
403
  - test/test_bind.rb
368
- - test/test_useradd-binary.rb
369
404
  - test/test_callback.rb
370
- - test/test_useradd.rb
371
- - test/test_usermod.rb
405
+ - test/test_configuration.rb
406
+ - test/test_connection.rb
407
+ - test/test_connection_per_class.rb
408
+ - test/test_connection_per_dn.rb
409
+ - test/test_dirty.rb
410
+ - test/test_dn.rb
411
+ - test/test_find.rb
412
+ - test/test_groupadd.rb
413
+ - test/test_groupdel.rb
414
+ - test/test_groupls.rb
415
+ - test/test_groupmod.rb
416
+ - test/test_ldif.rb
417
+ - test/test_load.rb
418
+ - test/test_lpasswd.rb
419
+ - test/test_object_class.rb
420
+ - test/test_reflection.rb
421
+ - test/test_schema.rb
372
422
  - test/test_syntax.rb
373
- - test/test_usermod-binary-add-time.rb
374
423
  - test/test_user.rb
375
424
  - test/test_user_password.rb
376
- - test/test_base.rb
377
- - test/test_adapter.rb
378
- - test/test_groupmod.rb
379
- - test/test_reflection.rb
380
- - test/test_load.rb
381
- - test/test_configuration.rb
382
- - test/test_userls.rb
425
+ - test/test_useradd-binary.rb
426
+ - test/test_useradd.rb
383
427
  - test/test_userdel.rb
384
- - test/test_validation.rb
385
- - test/test_ldif.rb
386
- - test/test_connection_per_class.rb
428
+ - test/test_userls.rb
429
+ - test/test_usermod-binary-add-time.rb
430
+ - test/test_usermod-binary-add.rb
387
431
  - test/test_usermod-binary-del.rb
432
+ - test/test_usermod-lang-add.rb
433
+ - test/test_usermod.rb
434
+ - test/test_validation.rb
435
+ has_rdoc: