activeldap 1.2.2 → 1.2.3
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/CHANGES +24 -0
- data/README +9 -3
- data/Rakefile +24 -50
- data/examples/al-admin/Rakefile +6 -0
- data/examples/al-admin/app/controllers/application_controller.rb +9 -2
- data/examples/al-admin/config/environment.rb +9 -3
- data/examples/al-admin/config/initializers/fast_gettext.rb +3 -0
- data/examples/al-admin/config/session_secret.txt +1 -1
- data/lib/active_ldap.rb +6 -19
- data/lib/active_ldap/adapter/base.rb +22 -20
- data/lib/active_ldap/adapter/jndi.rb +2 -3
- data/lib/active_ldap/adapter/jndi_connection.rb +2 -2
- data/lib/active_ldap/adapter/ldap.rb +9 -4
- data/lib/active_ldap/adapter/net_ldap.rb +5 -4
- data/lib/active_ldap/base.rb +1 -1
- data/lib/active_ldap/get_text.rb +2 -2
- data/lib/active_ldap/get_text_fallback.rb +39 -32
- data/lib/active_ldap/get_text_support.rb +4 -2
- data/lib/active_ldap/operations.rb +3 -2
- data/lib/active_ldap/validations.rb +11 -21
- data/po/en/active-ldap.po +9 -9
- data/po/ja/active-ldap.po +18 -18
- data/test/run-test.rb +7 -1
- data/test/test_adapter.rb +1 -0
- data/test/test_base.rb +8 -1
- data/test/test_load.rb +2 -1
- data/test/test_user.rb +3 -4
- data/test/test_validation.rb +20 -23
- metadata +34 -228
- data/data/locale/en/LC_MESSAGES/active-ldap.mo +0 -0
- data/data/locale/ja/LC_MESSAGES/active-ldap.mo +0 -0
- data/examples/al-admin/config/initializers/gettext.rb +0 -1
- data/examples/al-admin/lib/tasks/gettext.rake +0 -36
- data/examples/al-admin/locale/en/LC_MESSAGES/al-admin.mo +0 -0
- data/examples/al-admin/locale/ja/LC_MESSAGES/al-admin.mo +0 -0
- data/examples/al-admin/locale/nl/LC_MESSAGES/al-admin.mo +0 -0
- data/examples/al-admin/po/al-admin.pot +0 -344
- data/examples/al-admin/public/images/active-ldap.png +0 -0
- data/examples/al-admin/vendor/locale_rails/.gitignore +0 -6
- data/examples/al-admin/vendor/locale_rails/COPYING +0 -56
- data/examples/al-admin/vendor/locale_rails/ChangeLog +0 -35
- data/examples/al-admin/vendor/locale_rails/README.rdoc +0 -62
- data/examples/al-admin/vendor/locale_rails/Rakefile +0 -73
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails.rb +0 -18
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller.rb +0 -15
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller/base.rb +0 -82
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller/caching.rb +0 -51
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_controller/test_process.rb +0 -44
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails/action_view.rb +0 -53
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails/i18n.rb +0 -67
- data/examples/al-admin/vendor/locale_rails/lib/locale_rails/version.rb +0 -4
- data/examples/al-admin/vendor/locale_rails/sample/README +0 -22
- data/examples/al-admin/vendor/locale_rails/sample/Rakefile +0 -10
- data/examples/al-admin/vendor/locale_rails/sample/app/controllers/application.rb +0 -42
- data/examples/al-admin/vendor/locale_rails/sample/app/controllers/samples_controller.rb +0 -30
- data/examples/al-admin/vendor/locale_rails/sample/app/helpers/application_helper.rb +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/app/views/layouts/samples.html.erb +0 -20
- data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/_part.html.erb +0 -68
- data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/_part_nl.html.erb +0 -2
- data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/cached_action.html.erb +0 -6
- data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/index.html.erb +0 -33
- data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/index.pt.html.erb +0 -16
- data/examples/al-admin/vendor/locale_rails/sample/app/views/samples/index_uz_UZ.html.erb +0 -16
- data/examples/al-admin/vendor/locale_rails/sample/config/boot.rb +0 -109
- data/examples/al-admin/vendor/locale_rails/sample/config/environment.rb +0 -25
- data/examples/al-admin/vendor/locale_rails/sample/config/environments/development.rb +0 -17
- data/examples/al-admin/vendor/locale_rails/sample/config/environments/production.rb +0 -24
- data/examples/al-admin/vendor/locale_rails/sample/config/environments/test.rb +0 -22
- data/examples/al-admin/vendor/locale_rails/sample/config/initializers/inflections.rb +0 -10
- data/examples/al-admin/vendor/locale_rails/sample/config/initializers/mime_types.rb +0 -5
- data/examples/al-admin/vendor/locale_rails/sample/config/initializers/new_rails_defaults.rb +0 -17
- data/examples/al-admin/vendor/locale_rails/sample/config/locales/en.yml +0 -2
- data/examples/al-admin/vendor/locale_rails/sample/config/locales/ja.yml +0 -2
- data/examples/al-admin/vendor/locale_rails/sample/config/routes.rb +0 -13
- data/examples/al-admin/vendor/locale_rails/sample/db/schema.rb +0 -10
- data/examples/al-admin/vendor/locale_rails/sample/public/404.html +0 -30
- data/examples/al-admin/vendor/locale_rails/sample/public/422.html +0 -30
- data/examples/al-admin/vendor/locale_rails/sample/public/500.html +0 -33
- data/examples/al-admin/vendor/locale_rails/sample/public/dispatch.cgi +0 -10
- data/examples/al-admin/vendor/locale_rails/sample/public/dispatch.fcgi +0 -24
- data/examples/al-admin/vendor/locale_rails/sample/public/dispatch.rb +0 -10
- data/examples/al-admin/vendor/locale_rails/sample/public/favicon.ico +0 -0
- data/examples/al-admin/vendor/locale_rails/sample/public/images/rails.png +0 -0
- data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/application.js +0 -2
- data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/controls.js +0 -963
- data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/dragdrop.js +0 -972
- data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/effects.js +0 -1120
- data/examples/al-admin/vendor/locale_rails/sample/public/javascripts/prototype.js +0 -4221
- data/examples/al-admin/vendor/locale_rails/sample/public/robots.txt +0 -5
- data/examples/al-admin/vendor/locale_rails/sample/public/stylesheets/locale.css +0 -81
- data/examples/al-admin/vendor/locale_rails/sample/public/stylesheets/scaffold.css +0 -74
- data/examples/al-admin/vendor/locale_rails/sample/script/about +0 -4
- data/examples/al-admin/vendor/locale_rails/sample/script/console +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/dbconsole +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/destroy +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/generate +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/performance/benchmarker +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/performance/profiler +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/performance/request +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/plugin +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/process/inspector +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/process/reaper +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/process/spawner +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/runner +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/script/server +0 -3
- data/examples/al-admin/vendor/locale_rails/sample/test/performance/browsing_test.rb +0 -9
- data/examples/al-admin/vendor/locale_rails/sample/test/test_helper.rb +0 -38
- data/examples/al-admin/vendor/locale_rails/test/README +0 -243
- data/examples/al-admin/vendor/locale_rails/test/Rakefile +0 -10
- data/examples/al-admin/vendor/locale_rails/test/app/controllers/application_controller.rb +0 -10
- data/examples/al-admin/vendor/locale_rails/test/app/controllers/articles_controller.rb +0 -17
- data/examples/al-admin/vendor/locale_rails/test/app/helpers/application_helper.rb +0 -3
- data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index.html.erb +0 -1
- data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index_de.html.erb +0 -1
- data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index_fr_FR.html.erb +0 -1
- data/examples/al-admin/vendor/locale_rails/test/app/views/articles/index_ja.html.erb +0 -1
- data/examples/al-admin/vendor/locale_rails/test/app/views/articles/list.html.erb +0 -1
- data/examples/al-admin/vendor/locale_rails/test/app/views/articles/show.html.erb +0 -0
- data/examples/al-admin/vendor/locale_rails/test/app/views/articles/show.js.rjs +0 -0
- data/examples/al-admin/vendor/locale_rails/test/config/boot.rb +0 -110
- data/examples/al-admin/vendor/locale_rails/test/config/environment.rb +0 -42
- data/examples/al-admin/vendor/locale_rails/test/config/environments/development.rb +0 -17
- data/examples/al-admin/vendor/locale_rails/test/config/environments/production.rb +0 -28
- data/examples/al-admin/vendor/locale_rails/test/config/environments/test.rb +0 -35
- data/examples/al-admin/vendor/locale_rails/test/config/initializers/backtrace_silencers.rb +0 -7
- data/examples/al-admin/vendor/locale_rails/test/config/initializers/inflections.rb +0 -10
- data/examples/al-admin/vendor/locale_rails/test/config/initializers/mime_types.rb +0 -5
- data/examples/al-admin/vendor/locale_rails/test/config/initializers/new_rails_defaults.rb +0 -19
- data/examples/al-admin/vendor/locale_rails/test/config/initializers/session_store.rb +0 -15
- data/examples/al-admin/vendor/locale_rails/test/config/locales/en.yml +0 -5
- data/examples/al-admin/vendor/locale_rails/test/config/routes.rb +0 -46
- data/examples/al-admin/vendor/locale_rails/test/db/schema.rb +0 -0
- data/examples/al-admin/vendor/locale_rails/test/public/404.html +0 -30
- data/examples/al-admin/vendor/locale_rails/test/public/422.html +0 -30
- data/examples/al-admin/vendor/locale_rails/test/public/500.html +0 -30
- data/examples/al-admin/vendor/locale_rails/test/public/favicon.ico +0 -0
- data/examples/al-admin/vendor/locale_rails/test/public/images/rails.png +0 -0
- data/examples/al-admin/vendor/locale_rails/test/public/index.html +0 -275
- data/examples/al-admin/vendor/locale_rails/test/public/javascripts/application.js +0 -2
- data/examples/al-admin/vendor/locale_rails/test/public/javascripts/controls.js +0 -963
- data/examples/al-admin/vendor/locale_rails/test/public/javascripts/dragdrop.js +0 -973
- data/examples/al-admin/vendor/locale_rails/test/public/javascripts/effects.js +0 -1128
- data/examples/al-admin/vendor/locale_rails/test/public/javascripts/prototype.js +0 -4320
- data/examples/al-admin/vendor/locale_rails/test/public/robots.txt +0 -5
- data/examples/al-admin/vendor/locale_rails/test/script/about +0 -4
- data/examples/al-admin/vendor/locale_rails/test/script/console +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/dbconsole +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/destroy +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/generate +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/performance/benchmarker +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/performance/profiler +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/plugin +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/runner +0 -3
- data/examples/al-admin/vendor/locale_rails/test/script/server +0 -3
- data/examples/al-admin/vendor/locale_rails/test/test/functional/articles_controller_test.rb +0 -161
- data/examples/al-admin/vendor/locale_rails/test/test/performance/browsing_test.rb +0 -9
- data/examples/al-admin/vendor/locale_rails/test/test/test_helper.rb +0 -38
- data/po/active-ldap.pot +0 -4010
- data/test-unit/COPYING +0 -56
- data/test-unit/GPL +0 -340
- data/test-unit/History.txt +0 -223
- data/test-unit/Manifest.txt +0 -87
- data/test-unit/PSFL +0 -271
- data/test-unit/README.txt +0 -60
- data/test-unit/Rakefile +0 -40
- data/test-unit/TODO +0 -5
- data/test-unit/bin/testrb +0 -5
- data/test-unit/images/color-diff.png +0 -0
- data/test-unit/lib/test/unit.rb +0 -328
- data/test-unit/lib/test/unit/assertionfailederror.rb +0 -25
- data/test-unit/lib/test/unit/assertions.rb +0 -1334
- data/test-unit/lib/test/unit/attribute.rb +0 -125
- data/test-unit/lib/test/unit/autorunner.rb +0 -360
- data/test-unit/lib/test/unit/collector.rb +0 -36
- data/test-unit/lib/test/unit/collector/descendant.rb +0 -23
- data/test-unit/lib/test/unit/collector/dir.rb +0 -108
- data/test-unit/lib/test/unit/collector/load.rb +0 -144
- data/test-unit/lib/test/unit/collector/objectspace.rb +0 -34
- data/test-unit/lib/test/unit/color-scheme.rb +0 -106
- data/test-unit/lib/test/unit/color.rb +0 -96
- data/test-unit/lib/test/unit/diff.rb +0 -740
- data/test-unit/lib/test/unit/error.rb +0 -130
- data/test-unit/lib/test/unit/exceptionhandler.rb +0 -39
- data/test-unit/lib/test/unit/failure.rb +0 -136
- data/test-unit/lib/test/unit/fixture.rb +0 -176
- data/test-unit/lib/test/unit/notification.rb +0 -129
- data/test-unit/lib/test/unit/omission.rb +0 -191
- data/test-unit/lib/test/unit/pending.rb +0 -150
- data/test-unit/lib/test/unit/priority.rb +0 -180
- data/test-unit/lib/test/unit/runner/console.rb +0 -52
- data/test-unit/lib/test/unit/runner/emacs.rb +0 -8
- data/test-unit/lib/test/unit/runner/tap.rb +0 -8
- data/test-unit/lib/test/unit/testcase.rb +0 -478
- data/test-unit/lib/test/unit/testresult.rb +0 -89
- data/test-unit/lib/test/unit/testsuite.rb +0 -110
- data/test-unit/lib/test/unit/ui/console/outputlevel.rb +0 -14
- data/test-unit/lib/test/unit/ui/console/testrunner.rb +0 -466
- data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +0 -63
- data/test-unit/lib/test/unit/ui/tap/testrunner.rb +0 -92
- data/test-unit/lib/test/unit/ui/testrunner.rb +0 -28
- data/test-unit/lib/test/unit/ui/testrunnermediator.rb +0 -77
- data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +0 -41
- data/test-unit/lib/test/unit/util/backtracefilter.rb +0 -42
- data/test-unit/lib/test/unit/util/method-owner-finder.rb +0 -28
- data/test-unit/lib/test/unit/util/observable.rb +0 -90
- data/test-unit/lib/test/unit/util/output.rb +0 -31
- data/test-unit/lib/test/unit/util/procwrapper.rb +0 -48
- data/test-unit/lib/test/unit/version.rb +0 -7
- data/test-unit/sample/adder.rb +0 -13
- data/test-unit/sample/subtracter.rb +0 -12
- data/test-unit/sample/test_adder.rb +0 -20
- data/test-unit/sample/test_subtracter.rb +0 -20
- data/test-unit/sample/test_user.rb +0 -23
- data/test-unit/test/collector/test-descendant.rb +0 -133
- data/test-unit/test/collector/test-load.rb +0 -442
- data/test-unit/test/collector/test_dir.rb +0 -406
- data/test-unit/test/collector/test_objectspace.rb +0 -100
- data/test-unit/test/run-test.rb +0 -15
- data/test-unit/test/test-attribute.rb +0 -86
- data/test-unit/test/test-color-scheme.rb +0 -69
- data/test-unit/test/test-color.rb +0 -47
- data/test-unit/test/test-diff.rb +0 -518
- data/test-unit/test/test-emacs-runner.rb +0 -60
- data/test-unit/test/test-fixture.rb +0 -287
- data/test-unit/test/test-notification.rb +0 -33
- data/test-unit/test/test-omission.rb +0 -81
- data/test-unit/test/test-pending.rb +0 -70
- data/test-unit/test/test-priority.rb +0 -119
- data/test-unit/test/test-testcase.rb +0 -544
- data/test-unit/test/test_assertions.rb +0 -1197
- data/test-unit/test/test_error.rb +0 -26
- data/test-unit/test/test_failure.rb +0 -33
- data/test-unit/test/test_testresult.rb +0 -113
- data/test-unit/test/test_testsuite.rb +0 -129
- data/test-unit/test/testunit-test-util.rb +0 -14
- data/test-unit/test/ui/test_testrunmediator.rb +0 -20
- data/test-unit/test/util/test-method-owner-finder.rb +0 -38
- data/test-unit/test/util/test-output.rb +0 -11
- data/test-unit/test/util/test_backtracefilter.rb +0 -41
- data/test-unit/test/util/test_observable.rb +0 -102
- data/test-unit/test/util/test_procwrapper.rb +0 -36
|
@@ -62,8 +62,8 @@ module ActiveLdap
|
|
|
62
62
|
end
|
|
63
63
|
end
|
|
64
64
|
|
|
65
|
-
def search(options={}
|
|
66
|
-
super(options) do |base, scope, filter, attrs, limit
|
|
65
|
+
def search(options={})
|
|
66
|
+
super(options) do |base, scope, filter, attrs, limit|
|
|
67
67
|
args = {
|
|
68
68
|
:base => base,
|
|
69
69
|
:scope => scope,
|
|
@@ -78,9 +78,10 @@ module ActiveLdap
|
|
|
78
78
|
execute(:search, info, args) do |entry|
|
|
79
79
|
attributes = {}
|
|
80
80
|
entry.original_attribute_names.each do |name|
|
|
81
|
-
|
|
81
|
+
value = entry[name]
|
|
82
|
+
attributes[name] = value if value
|
|
82
83
|
end
|
|
83
|
-
|
|
84
|
+
yield([entry.dn, attributes])
|
|
84
85
|
end
|
|
85
86
|
end
|
|
86
87
|
end
|
data/lib/active_ldap/base.rb
CHANGED
data/lib/active_ldap/get_text.rb
CHANGED
|
@@ -1,52 +1,59 @@
|
|
|
1
1
|
module ActiveLdap
|
|
2
2
|
module GetTextFallback
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
base.extend(self)
|
|
6
|
-
end
|
|
3
|
+
module_function
|
|
4
|
+
def add_text_domain(name, options)
|
|
7
5
|
end
|
|
8
6
|
|
|
9
7
|
module_function
|
|
10
|
-
def
|
|
8
|
+
def default_available_locales=(name)
|
|
11
9
|
end
|
|
12
10
|
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
module_function
|
|
12
|
+
def default_text_domain=(name)
|
|
15
13
|
end
|
|
16
14
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
else
|
|
23
|
-
msg_id = arg1
|
|
24
|
-
msg_id_plural = arg2
|
|
25
|
-
n = arg3
|
|
15
|
+
module Translation
|
|
16
|
+
class << self
|
|
17
|
+
def included(base)
|
|
18
|
+
base.extend(self)
|
|
19
|
+
end
|
|
26
20
|
end
|
|
27
|
-
n == 1 ? msg_id : msg_id_plural
|
|
28
|
-
end
|
|
29
21
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
22
|
+
def _(msg_id)
|
|
23
|
+
msg_id
|
|
24
|
+
end
|
|
33
25
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
26
|
+
def n_(arg1, arg2, arg3=nil)
|
|
27
|
+
if arg1.kind_of?(Array)
|
|
28
|
+
msg_id = arg1[0]
|
|
29
|
+
msg_id_plural = arg1[1]
|
|
30
|
+
n = arg2
|
|
31
|
+
else
|
|
32
|
+
msg_id = arg1
|
|
33
|
+
msg_id_plural = arg2
|
|
34
|
+
n = arg3
|
|
35
|
+
end
|
|
36
|
+
n == 1 ? msg_id : msg_id_plural
|
|
37
|
+
end
|
|
37
38
|
|
|
38
|
-
|
|
39
|
-
index = msg_id.rindex(div)
|
|
40
|
-
if index
|
|
41
|
-
msg_id[(index + 1)..-1]
|
|
42
|
-
else
|
|
39
|
+
def N_(msg_id)
|
|
43
40
|
msg_id
|
|
44
41
|
end
|
|
42
|
+
|
|
43
|
+
def Nn_(msg_id, msg_id_plural)
|
|
44
|
+
[msg_id, msg_id_plural]
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def s_(msg_id, div='|')
|
|
48
|
+
index = msg_id.rindex(div)
|
|
49
|
+
if index
|
|
50
|
+
msg_id[(index + 1)..-1]
|
|
51
|
+
else
|
|
52
|
+
msg_id
|
|
53
|
+
end
|
|
54
|
+
end
|
|
45
55
|
end
|
|
46
56
|
|
|
47
|
-
alias_method(:_, :gettext)
|
|
48
|
-
alias_method(:n_, :ngettext)
|
|
49
|
-
alias_method(:s_, :sgettext)
|
|
50
57
|
end
|
|
51
58
|
|
|
52
59
|
GetText = GetTextFallback
|
|
@@ -9,8 +9,10 @@ module ActiveLdap
|
|
|
9
9
|
class << self
|
|
10
10
|
def included(base)
|
|
11
11
|
base.class_eval do
|
|
12
|
-
include(GetText)
|
|
13
|
-
|
|
12
|
+
include(GetText::Translation)
|
|
13
|
+
GetText.add_text_domain('active-ldap',:path=>'po', :type=>:po)
|
|
14
|
+
GetText.default_available_locales = ['en', 'jp']
|
|
15
|
+
GetText.default_text_domain = "active-ldap"
|
|
14
16
|
end
|
|
15
17
|
end
|
|
16
18
|
end
|
|
@@ -62,7 +62,8 @@ module ActiveLdap
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
options[:connection] ||= connection
|
|
65
|
-
values =
|
|
65
|
+
values = []
|
|
66
|
+
options[:connection].search(search_options) do |dn, attrs|
|
|
66
67
|
attributes = {}
|
|
67
68
|
attrs.each do |key, _value|
|
|
68
69
|
normalized_attr, normalized_value =
|
|
@@ -70,7 +71,7 @@ module ActiveLdap
|
|
|
70
71
|
attributes[normalized_attr] ||= []
|
|
71
72
|
attributes[normalized_attr].concat(normalized_value)
|
|
72
73
|
end
|
|
73
|
-
[dn, attributes]
|
|
74
|
+
values << [dn, attributes]
|
|
74
75
|
end
|
|
75
76
|
values = values.collect {|_value| yield(_value)} if block_given?
|
|
76
77
|
values
|
|
@@ -88,17 +88,7 @@ module ActiveLdap
|
|
|
88
88
|
|
|
89
89
|
private
|
|
90
90
|
def format_validation_message(format, parameters)
|
|
91
|
-
|
|
92
|
-
if /\A(%\{fn\})/ =~ format
|
|
93
|
-
place_holder = $1
|
|
94
|
-
format = $POSTMATCH
|
|
95
|
-
else
|
|
96
|
-
place_holder = ""
|
|
97
|
-
end
|
|
98
|
-
"#{place_holder}#{format % parameters}"
|
|
99
|
-
else
|
|
100
|
-
format.sub(/\A%\{fn\} ?/, '') % parameters
|
|
101
|
-
end
|
|
91
|
+
format % parameters
|
|
102
92
|
end
|
|
103
93
|
|
|
104
94
|
def validate_duplicated_dn_creation
|
|
@@ -109,7 +99,7 @@ module ActiveLdap
|
|
|
109
99
|
return
|
|
110
100
|
end
|
|
111
101
|
if _dn and exist?
|
|
112
|
-
format = _("
|
|
102
|
+
format = _("is duplicated: %s")
|
|
113
103
|
message = format_validation_message(format, _dn)
|
|
114
104
|
errors.add("distinguishedName", message)
|
|
115
105
|
end
|
|
@@ -129,7 +119,7 @@ module ActiveLdap
|
|
|
129
119
|
return
|
|
130
120
|
end
|
|
131
121
|
if _dn and exist?
|
|
132
|
-
format = _("
|
|
122
|
+
format = _("is duplicated: %s")
|
|
133
123
|
message = format_validation_message(format, _dn)
|
|
134
124
|
errors.add("distinguishedName", message)
|
|
135
125
|
end
|
|
@@ -138,11 +128,11 @@ module ActiveLdap
|
|
|
138
128
|
def validate_dn
|
|
139
129
|
dn
|
|
140
130
|
rescue DistinguishedNameInvalid
|
|
141
|
-
format = _("
|
|
131
|
+
format = _("is invalid: %s")
|
|
142
132
|
message = format_validation_message(format, $!.message)
|
|
143
133
|
errors.add("distinguishedName", message)
|
|
144
134
|
rescue DistinguishedNameNotSetError
|
|
145
|
-
format = _("
|
|
135
|
+
format = _("isn't set: %s")
|
|
146
136
|
message = format_validation_message(format, $!.message)
|
|
147
137
|
errors.add("distinguishedName", message)
|
|
148
138
|
end
|
|
@@ -167,8 +157,8 @@ module ActiveLdap
|
|
|
167
157
|
names = unexpected_classes.collect do |object_class|
|
|
168
158
|
self.class.human_object_class_name(object_class)
|
|
169
159
|
end
|
|
170
|
-
format = n_("
|
|
171
|
-
"
|
|
160
|
+
format = n_("has excluded value: %s",
|
|
161
|
+
"has excluded values: %s",
|
|
172
162
|
names.size)
|
|
173
163
|
message = format_validation_message(format, names.join(", "))
|
|
174
164
|
errors.add("objectClass", message)
|
|
@@ -204,9 +194,9 @@ module ActiveLdap
|
|
|
204
194
|
end
|
|
205
195
|
args = [self.class.human_object_class_name(object_class)]
|
|
206
196
|
if aliases.empty?
|
|
207
|
-
format = _("
|
|
197
|
+
format = _("is required attribute by objectClass '%s'")
|
|
208
198
|
else
|
|
209
|
-
format = _("
|
|
199
|
+
format = _("is required attribute by objectClass " \
|
|
210
200
|
"'%s': aliases: %s")
|
|
211
201
|
args << aliases.join(', ')
|
|
212
202
|
end
|
|
@@ -236,9 +226,9 @@ module ActiveLdap
|
|
|
236
226
|
self.class.human_syntax_description(attribute.syntax),
|
|
237
227
|
failed_reason]
|
|
238
228
|
if option
|
|
239
|
-
format = _("
|
|
229
|
+
format = _("(%s) has invalid format: %s: required syntax: %s: %s")
|
|
240
230
|
else
|
|
241
|
-
format = _("
|
|
231
|
+
format = _("has invalid format: %s: required syntax: %s: %s")
|
|
242
232
|
end
|
|
243
233
|
params.unshift(option) if option
|
|
244
234
|
message = format_validation_message(format, params)
|
data/po/en/active-ldap.po
CHANGED
|
@@ -3710,29 +3710,29 @@ msgid "%s isn't sub DN of %s"
|
|
|
3710
3710
|
msgstr ""
|
|
3711
3711
|
|
|
3712
3712
|
#: lib/active_ldap/validations.rb:97
|
|
3713
|
-
msgid "
|
|
3713
|
+
msgid "is duplicated: %s"
|
|
3714
3714
|
msgstr ""
|
|
3715
3715
|
|
|
3716
3716
|
#: lib/active_ldap/validations.rb:108
|
|
3717
|
-
msgid "
|
|
3717
|
+
msgid "is invalid: %s"
|
|
3718
3718
|
msgstr ""
|
|
3719
3719
|
|
|
3720
3720
|
#: lib/active_ldap/validations.rb:112
|
|
3721
|
-
msgid "
|
|
3721
|
+
msgid "isn't set: %s"
|
|
3722
3722
|
msgstr ""
|
|
3723
3723
|
|
|
3724
3724
|
#: lib/active_ldap/validations.rb:134
|
|
3725
|
-
msgid "
|
|
3726
|
-
msgid_plural "
|
|
3725
|
+
msgid "has excluded value: %s"
|
|
3726
|
+
msgid_plural "has excluded values: %s"
|
|
3727
3727
|
msgstr[0] ""
|
|
3728
3728
|
msgstr[1] ""
|
|
3729
3729
|
|
|
3730
3730
|
#: lib/active_ldap/validations.rb:169
|
|
3731
|
-
msgid "
|
|
3731
|
+
msgid "is required attribute by objectClass '%s'"
|
|
3732
3732
|
msgstr ""
|
|
3733
3733
|
|
|
3734
3734
|
#: lib/active_ldap/validations.rb:171
|
|
3735
|
-
msgid "
|
|
3735
|
+
msgid "is required attribute by objectClass '%s': aliases: %s"
|
|
3736
3736
|
msgstr ""
|
|
3737
3737
|
|
|
3738
3738
|
#: lib/active_ldap/validations.rb:195
|
|
@@ -3740,11 +3740,11 @@ msgid "<binary-value>"
|
|
|
3740
3740
|
msgstr ""
|
|
3741
3741
|
|
|
3742
3742
|
#: lib/active_ldap/validations.rb:203
|
|
3743
|
-
msgid "
|
|
3743
|
+
msgid "(%s) has invalid format: %s: required syntax: %s: %s"
|
|
3744
3744
|
msgstr ""
|
|
3745
3745
|
|
|
3746
3746
|
#: lib/active_ldap/validations.rb:205
|
|
3747
|
-
msgid "
|
|
3747
|
+
msgid "has invalid format: %s: required syntax: %s: %s"
|
|
3748
3748
|
msgstr ""
|
|
3749
3749
|
|
|
3750
3750
|
#: lib/active_ldap/command.rb:16
|
data/po/ja/active-ldap.po
CHANGED
|
@@ -3727,42 +3727,42 @@ msgid "%s isn't sub DN of %s"
|
|
|
3727
3727
|
msgstr "%sは%sのサブDNではありません"
|
|
3728
3728
|
|
|
3729
3729
|
#: lib/active_ldap/validations.rb:97
|
|
3730
|
-
msgid "
|
|
3731
|
-
msgstr "
|
|
3730
|
+
msgid "is duplicated: %s"
|
|
3731
|
+
msgstr "が重複しています: %s"
|
|
3732
3732
|
|
|
3733
3733
|
#: lib/active_ldap/validations.rb:108
|
|
3734
|
-
msgid "
|
|
3735
|
-
msgstr "
|
|
3734
|
+
msgid "is invalid: %s"
|
|
3735
|
+
msgstr "が不正です: %s"
|
|
3736
3736
|
|
|
3737
3737
|
#: lib/active_ldap/validations.rb:112
|
|
3738
|
-
msgid "
|
|
3739
|
-
msgstr "
|
|
3738
|
+
msgid "isn't set: %s"
|
|
3739
|
+
msgstr "が設定されていません: %s"
|
|
3740
3740
|
|
|
3741
3741
|
#: lib/active_ldap/validations.rb:134
|
|
3742
|
-
msgid "
|
|
3743
|
-
msgid_plural "
|
|
3744
|
-
msgstr[0] "
|
|
3745
|
-
msgstr[1] "
|
|
3742
|
+
msgid "has excluded value: %s"
|
|
3743
|
+
msgid_plural "has excluded values: %s"
|
|
3744
|
+
msgstr[0] "に除外した値があります: %s"
|
|
3745
|
+
msgstr[1] "に除外した値があります: %s"
|
|
3746
3746
|
|
|
3747
3747
|
#: lib/active_ldap/validations.rb:169
|
|
3748
|
-
msgid "
|
|
3749
|
-
msgstr "
|
|
3748
|
+
msgid "is required attribute by objectClass '%s'"
|
|
3749
|
+
msgstr "はobjectClass'%s'の必須の属性です"
|
|
3750
3750
|
|
|
3751
3751
|
#: lib/active_ldap/validations.rb:171
|
|
3752
|
-
msgid "
|
|
3753
|
-
msgstr "
|
|
3752
|
+
msgid "is required attribute by objectClass '%s': aliases: %s"
|
|
3753
|
+
msgstr "はobjectClass'%s'の必須の属性です: 別名: %s"
|
|
3754
3754
|
|
|
3755
3755
|
#: lib/active_ldap/validations.rb:195
|
|
3756
3756
|
msgid "<binary-value>"
|
|
3757
3757
|
msgstr "<バイナリ値>"
|
|
3758
3758
|
|
|
3759
3759
|
#: lib/active_ldap/validations.rb:203
|
|
3760
|
-
msgid "
|
|
3761
|
-
msgstr "
|
|
3760
|
+
msgid "(%s) has invalid format: %s: required syntax: %s: %s"
|
|
3761
|
+
msgstr "(%s)は不正な書式です: %s: 要求されている構文: %s: %s"
|
|
3762
3762
|
|
|
3763
3763
|
#: lib/active_ldap/validations.rb:205
|
|
3764
|
-
msgid "
|
|
3765
|
-
msgstr "
|
|
3764
|
+
msgid "has invalid format: %s: required syntax: %s: %s"
|
|
3765
|
+
msgstr "は不正な書式です: %s: 要求されている構文: %s: %s"
|
|
3766
3766
|
|
|
3767
3767
|
#: lib/active_ldap/command.rb:16
|
|
3768
3768
|
msgid "Common options:"
|
data/test/run-test.rb
CHANGED
|
@@ -11,7 +11,13 @@ top_dir = File.expand_path(File.join(base_dir, ".."))
|
|
|
11
11
|
$LOAD_PATH.unshift(File.join(top_dir, "lib"))
|
|
12
12
|
$LOAD_PATH.unshift(File.join(top_dir, "test"))
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
test_unit_lib_dir = File.join(top_dir, "test-unit", "lib")
|
|
15
|
+
if File.exist?(test_unit_lib_dir)
|
|
16
|
+
$LOAD_PATH.unshift(test_unit_lib_dir)
|
|
17
|
+
else
|
|
18
|
+
require 'rubygems'
|
|
19
|
+
gem "test-unit", "> 2"
|
|
20
|
+
end
|
|
15
21
|
require "test/unit"
|
|
16
22
|
ARGV.unshift("--priority-mode")
|
|
17
23
|
|
data/test/test_adapter.rb
CHANGED
|
@@ -37,6 +37,7 @@ class TestAdapter < Test::Unit::TestCase
|
|
|
37
37
|
assert_parse_filter("(uid=Alice\\2ABob)", {:uid => "Alice**Bob"})
|
|
38
38
|
assert_parse_filter("(uid=Alice\\2A*\\5CBob)", {:uid => "Alice***\\Bob"})
|
|
39
39
|
assert_parse_filter("(uid=Alice\\5C\\2A*Bob)", {:uid => "Alice\\***Bob"})
|
|
40
|
+
assert_parse_filter("(uid=Alice\\3ABob)", {:uid => "Alice:Bob"})
|
|
40
41
|
end
|
|
41
42
|
|
|
42
43
|
def test_empty_filter
|
data/test/test_base.rb
CHANGED
|
@@ -6,6 +6,14 @@ class TestBase < Test::Unit::TestCase
|
|
|
6
6
|
include AlTestUtils
|
|
7
7
|
|
|
8
8
|
priority :must
|
|
9
|
+
def test_search_colon_value
|
|
10
|
+
make_temporary_group(:cn => "temp:group") do |group|
|
|
11
|
+
assert_equal("temp:group", group.cn)
|
|
12
|
+
assert_not_nil(@group_class.find("temp:group"))
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
priority :normal
|
|
9
17
|
def test_lower_case_object_class
|
|
10
18
|
fixture_file = fixture("lower_case_object_class_schema.rb")
|
|
11
19
|
schema_entries = eval(File.read(fixture_file))
|
|
@@ -30,7 +38,6 @@ class TestBase < Test::Unit::TestCase
|
|
|
30
38
|
assert_equal("1.555.5551234", target.umpn)
|
|
31
39
|
end
|
|
32
40
|
|
|
33
|
-
priority :normal
|
|
34
41
|
def test_set_and_get_false
|
|
35
42
|
user = @user_class.new
|
|
36
43
|
user.sn = false
|
data/test/test_load.rb
CHANGED
|
@@ -77,7 +77,8 @@ class TestLoad < Test::Unit::TestCase
|
|
|
77
77
|
ldif << record
|
|
78
78
|
ActiveLdap::Base.load(ldif.to_s)
|
|
79
79
|
user.reload
|
|
80
|
-
|
|
80
|
+
assert_equal(original_descriptions + [new_description],
|
|
81
|
+
user.description(true))
|
|
81
82
|
end
|
|
82
83
|
end
|
|
83
84
|
|
data/test/test_user.rb
CHANGED
|
@@ -69,15 +69,14 @@ class TestUser < Test::Unit::TestCase
|
|
|
69
69
|
errors = %w(person organizationalPerson
|
|
70
70
|
inetOrgPerson).collect do |object_class|
|
|
71
71
|
if ActiveLdap.get_text_supported?
|
|
72
|
-
format = _("
|
|
72
|
+
format = _("is required attribute by objectClass '%s': " \
|
|
73
73
|
"aliases: %s")
|
|
74
|
-
format = user.
|
|
75
|
-
format = format % {:fn => user.class.human_attribute_name("sn")}
|
|
74
|
+
format = user._(format)
|
|
76
75
|
format % [user.class.human_object_class_name(object_class),
|
|
77
76
|
user.class.human_attribute_name("surname")]
|
|
78
77
|
else
|
|
79
78
|
format = "is required attribute by objectClass '%s': aliases: %s"
|
|
80
|
-
user.
|
|
79
|
+
user._(format) % [object_class, "surname"]
|
|
81
80
|
end
|
|
82
81
|
end
|
|
83
82
|
assert_equal(errors.sort, user.errors.on(:sn).sort)
|
data/test/test_validation.rb
CHANGED
|
@@ -12,8 +12,8 @@ class TestValidation < Test::Unit::TestCase
|
|
|
12
12
|
user1.id = user2.id
|
|
13
13
|
assert_false(user1.save)
|
|
14
14
|
|
|
15
|
-
format =
|
|
16
|
-
format
|
|
15
|
+
format = la_('distinguishedName')
|
|
16
|
+
format << ' ' << _("is duplicated: %s")
|
|
17
17
|
assert_equal([format % [user2.dn.to_s]],
|
|
18
18
|
user1.errors.full_messages)
|
|
19
19
|
end
|
|
@@ -27,8 +27,8 @@ class TestValidation < Test::Unit::TestCase
|
|
|
27
27
|
user.jpeg_photo = "XXX"
|
|
28
28
|
assert_not_predicate(user, :save)
|
|
29
29
|
|
|
30
|
-
format =
|
|
31
|
-
format
|
|
30
|
+
format = la_('jpegPhoto')
|
|
31
|
+
format << ' ' << _("has invalid format: %s: required syntax: %s: %s")
|
|
32
32
|
arguments = [_("<binary-value>"),
|
|
33
33
|
lsd_("1.3.6.1.4.1.1466.115.121.1.28"),
|
|
34
34
|
_("invalid JPEG format")]
|
|
@@ -73,8 +73,8 @@ class TestValidation < Test::Unit::TestCase
|
|
|
73
73
|
reason = _("attribute value is missing")
|
|
74
74
|
invalid_format = _("%s is invalid distinguished name (DN): %s")
|
|
75
75
|
invalid_message = invalid_format % ["uid==,#{user.class.base}", reason]
|
|
76
|
-
format =
|
|
77
|
-
format
|
|
76
|
+
format = la_('distinguishedName')
|
|
77
|
+
format << ' ' << _("is invalid: %s")
|
|
78
78
|
message = format % invalid_message
|
|
79
79
|
assert_equal([message],
|
|
80
80
|
user.errors.full_messages.find_all {|m| /DN/ =~ m})
|
|
@@ -87,8 +87,8 @@ class TestValidation < Test::Unit::TestCase
|
|
|
87
87
|
reason = _("attribute value is missing")
|
|
88
88
|
invalid_format = _("%s is invalid distinguished name (DN): %s")
|
|
89
89
|
invalid_message = invalid_format % ["uid==,#{user.class.base}", reason]
|
|
90
|
-
format =
|
|
91
|
-
format
|
|
90
|
+
format = la_('distinguishedName')
|
|
91
|
+
format << ' ' << _("is invalid: %s")
|
|
92
92
|
message = format % invalid_message
|
|
93
93
|
assert_equal([message], user.errors.full_messages)
|
|
94
94
|
end
|
|
@@ -99,8 +99,8 @@ class TestValidation < Test::Unit::TestCase
|
|
|
99
99
|
assert(user.valid?)
|
|
100
100
|
user.uid_number = ""
|
|
101
101
|
assert(!user.valid?)
|
|
102
|
-
format =
|
|
103
|
-
format
|
|
102
|
+
format = la_('uidNumber')
|
|
103
|
+
format << ' ' << _("is required attribute by objectClass '%s'")
|
|
104
104
|
blank_message = format % loc_("posixAccount")
|
|
105
105
|
assert_equal([blank_message], user.errors.full_messages)
|
|
106
106
|
end
|
|
@@ -111,10 +111,10 @@ class TestValidation < Test::Unit::TestCase
|
|
|
111
111
|
assert(user.save)
|
|
112
112
|
user.class.excluded_classes = ['person']
|
|
113
113
|
assert(!user.save)
|
|
114
|
-
format =
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
114
|
+
format = la_("objectClass")
|
|
115
|
+
format << ' ' << n_("has excluded value: %s",
|
|
116
|
+
"has excluded values: %s",
|
|
117
|
+
1)
|
|
118
118
|
message = format % loc_("person")
|
|
119
119
|
assert_equal([message], user.errors.full_messages)
|
|
120
120
|
end
|
|
@@ -183,8 +183,8 @@ class TestValidation < Test::Unit::TestCase
|
|
|
183
183
|
assert(ou_class.new("YYY").save)
|
|
184
184
|
ou = ou_class.new("YYY")
|
|
185
185
|
assert(!ou.save)
|
|
186
|
-
format =
|
|
187
|
-
format
|
|
186
|
+
format = la_("distinguishedName")
|
|
187
|
+
format << ' ' << _("is duplicated: %s")
|
|
188
188
|
message = format % ou.dn
|
|
189
189
|
assert_equal([message], ou.errors.full_messages)
|
|
190
190
|
end
|
|
@@ -225,16 +225,13 @@ class TestValidation < Test::Unit::TestCase
|
|
|
225
225
|
assert_not_nil(syntax_description)
|
|
226
226
|
params = [formatted_value, syntax_description, reason]
|
|
227
227
|
params.unshift(option) if option
|
|
228
|
+
localized_name = la_(name)
|
|
229
|
+
format = localized_name << ' '
|
|
228
230
|
if option
|
|
229
|
-
format
|
|
231
|
+
format << _("(%s) has invalid format: %s: required syntax: %s: %s")
|
|
230
232
|
else
|
|
231
|
-
format
|
|
232
|
-
end
|
|
233
|
-
localized_name = la_(name)
|
|
234
|
-
if option and !ActiveLdap.get_text_supported?
|
|
235
|
-
localized_name += ' '
|
|
233
|
+
format << _("has invalid format: %s: required syntax: %s: %s")
|
|
236
234
|
end
|
|
237
|
-
format = format.sub(/^%\{fn\}/, localized_name)
|
|
238
235
|
message = format % params
|
|
239
236
|
assert_equal([message], model.errors.full_messages)
|
|
240
237
|
end
|