From codesite-noreply at google.com Mon Sep 8 08:35:32 2008 From: codesite-noreply at google.com (codesite-noreply at google.com) Date: Mon, 08 Sep 2008 05:35:32 -0700 Subject: [Ruby-activeldap-commit] [ruby-activeldap commit] r779 - in trunk: lib/active_ldap test Message-ID: <001485f945a6bf390b045661a786@google.com> Author: koutou Date: Mon Sep 8 05:34:42 2008 New Revision: 779 Modified: trunk/lib/active_ldap/operations.rb trunk/test/test_base.rb Log: * fix a too prefix extraction bug. Reported by Grzegorz Marsza?ek. Thanks!!! Modified: trunk/lib/active_ldap/operations.rb ============================================================================== --- trunk/lib/active_ldap/operations.rb (original) +++ trunk/lib/active_ldap/operations.rb Mon Sep 8 05:34:42 2008 @@ -34,7 +34,11 @@ value = value.first if value.is_a?(Array) and value.first.size == 1 - _attr, value, _prefix = split_search_value(value) + _attr = nil + _prefix = nil + if attr.nil? or attr == dn_attribute + _attr, value, _prefix = split_search_value(value) + end attr ||= _attr || ensure_search_attribute prefix ||= _prefix filter ||= [attr, value] Modified: trunk/test/test_base.rb ============================================================================== --- trunk/test/test_base.rb (original) +++ trunk/test/test_base.rb Mon Sep 8 05:34:42 2008 @@ -6,13 +6,29 @@ include AlTestUtils priority :must + def test_search_value_with_no_dn_attribute + make_temporary_user do |user1,| + make_temporary_user do |user2,| + options = {:attribute => "seeAlso", :value => user2.dn} + assert_equal([], + user1.class.find(:all, options).collect(&:dn)) + + user1.see_also = user2.dn + user1.save! + + assert_equal([user1.dn], + user1.class.find(:all, options).collect(&:dn)) + end + end + end + + priority :normal def test_to_s make_temporary_group do |group,| assert_equal(group.to_s, group.to_ldif) end end - priority :normal def test_to_ldif make_temporary_group do |group,| assert_to_ldif(group) From codesite-noreply at google.com Wed Sep 10 08:27:00 2008 From: codesite-noreply at google.com (codesite-noreply at google.com) Date: Wed, 10 Sep 2008 05:27:00 -0700 Subject: [Ruby-activeldap-commit] [ruby-activeldap commit] r780 - trunk/lib/active_ldap Message-ID: <0016e64084b2e719c3045689c44c@google.com> Author: koutou Date: Wed Sep 10 05:26:51 2008 New Revision: 780 Modified: trunk/lib/active_ldap/validations.rb Log: * skip read only attribute (such as instanceType) on required values validation. Suggested by ???????. Thanks!!! Modified: trunk/lib/active_ldap/validations.rb ============================================================================== --- trunk/lib/active_ldap/validations.rb (original) +++ trunk/lib/active_ldap/validations.rb Wed Sep 10 05:26:51 2008 @@ -129,6 +129,8 @@ real_name = to_real_attribute_name(required_attribute.name, true) raise UnknownAttribute.new(required_attribute) if real_name.nil? + next if required_attribute.read_only? + value = @data[real_name] || [] next unless self.class.blank_value?(value) From codesite-noreply at google.com Sat Sep 13 23:24:35 2008 From: codesite-noreply at google.com (codesite-noreply at google.com) Date: Sat, 13 Sep 2008 20:24:35 -0700 Subject: [Ruby-activeldap-commit] [ruby-activeldap commit] r781 - in trunk: . lib/active_ldap test Message-ID: <00163630f0ef69ad880456d2a859@google.com> Author: koutou Date: Sat Sep 13 20:23:47 2008 New Revision: 781 Modified: trunk/README trunk/lib/active_ldap/validations.rb trunk/test/test_validation.rb Log: * treat "" as empty value. Suggested by Ted Lepich. Thanks!!! Modified: trunk/README ============================================================================== --- trunk/README (original) +++ trunk/README Sat Sep 13 20:23:47 2008 @@ -113,3 +113,6 @@ * Baptiste Grenier: API improvement ideas. * Richard 3 Nicholas: API improvement ideas. * Kazuhiro NISHIYAMA: A bug report. +* Grzegorz Marsza?ek: A bug report. +* ???????: A suggesetion. +* Ted Lepich: A suggestion. Modified: trunk/lib/active_ldap/validations.rb ============================================================================== --- trunk/lib/active_ldap/validations.rb (original) +++ trunk/lib/active_ldap/validations.rb Sat Sep 13 20:23:47 2008 @@ -162,7 +162,7 @@ def validate_ldap_values entry_attribute.schemata.each do |name, attribute| value = self[name] - next if value.nil? + next if value.blank? validate_ldap_value(attribute, name, value) end end Modified: trunk/test/test_validation.rb ============================================================================== --- trunk/test/test_validation.rb (original) +++ trunk/test/test_validation.rb Sat Sep 13 20:23:47 2008 @@ -6,6 +6,24 @@ include ActiveLdap::Helper priority :must + def test_not_validate_empty_string + make_temporary_user do |user,| + assert(user.valid?) + user.uid_number = "" + assert(!user.valid?) + if ActiveLdap.get_text_supported? + format = _("%{fn} is required attribute by objectClass '%s'") + format = format % {:fn => la_("uidNumber")} + blank_message = format % loc_("posixAccount") + else + blank_message = "objectClass is required attribute by " + + "objectClass 'posixAccount'" + end + assert_equal([blank_message], user.errors.full_messages) + end + end + + priority :normal def test_validate_excluded_classes make_temporary_user do |user,| user.save @@ -25,7 +43,6 @@ end end - priority :normal def test_valid_subtype_and_single_value make_temporary_user do |user, password| user.display_name = [{"lang-ja" => ["???"]},