'strips extraneous whitespace without modifying the multivalued RDN'|'uid = John Smith + telephoneNumber = +1 555-555-5555 , ou = People,dc=example,dc=com'|'uid=John Smith+telephoneNumber=+1 555-555-5555,ou=People,dc=example,dc=com'
'strips the space after the plus sign in the telephoneNumber'|'uid = John Smith + telephoneNumber = + 1 555-555-5555 , ou = People,dc=example,dc=com'|'uid=John Smith+telephoneNumber=+1 555-555-5555,ou=People,dc=example,dc=com'
end
'for a null DN (empty string), returns empty string and does not error'|''|''
end
'does not strip the escaped leading space in an attribute value (and does not error like Net::LDAP::DN.new does)'|'uid=\\ John Smith,ou=People,dc=example,dc=com'|'uid=\\ John Smith,ou=People,dc=example,dc=com'
'does not strip the escaped trailing space in an attribute value'|'uid=John Smith\\ ,ou=People,dc=example,dc=com'|'uid=John Smith\\ ,ou=People,dc=example,dc=com'
context'when there are escaped characters'do
'does not strip the escaped leading newline in an attribute value'|'uid=\\\nJohn Smith,ou=People,dc=example,dc=com'|'uid=\\\nJohn Smith,ou=People,dc=example,dc=com'
it'removes extraneous whitespace without changing the escaped characters'do
'does not strip the escaped trailing newline in an attribute value'|'uid=John Smith\\\n,ou=People,dc=example,dc=com'|'uid=John Smith\\\n,ou=People,dc=example,dc=com'
'does not strip the unescaped leading newline in an attribute value'|'uid=\nJohn Smith,ou=People,dc=example,dc=com'|'uid=\nJohn Smith,ou=People,dc=example,dc=com'
'does not strip the unescaped trailing newline in an attribute value'|'uid=John Smith\n ,ou=People,dc=example,dc=com'|'uid=John Smith\n,ou=People,dc=example,dc=com'
expected='uid=\\ John Smith,ou=People,dc=example,dc=com'
'strips extraneous whitespace without modifying the multivalued RDN'|'uid = John Smith + telephoneNumber = +1 555-555-5555 , ou = People,dc=example,dc=com'|'uid=John Smith+telephoneNumber=+1 555-555-5555,ou=People,dc=example,dc=com'
'strips the space after the plus sign in the telephoneNumber'|'uid = John Smith + telephoneNumber = + 1 555-555-5555 , ou = People,dc=example,dc=com'|'uid=John Smith+telephoneNumber=+1 555-555-5555,ou=People,dc=example,dc=com'
end
'for a null DN (empty string), returns empty string and does not error'|''|''
end
'does not strip the escaped leading space in an attribute value (and does not error like Net::LDAP::DN.new does)'|'uid=\\ John Smith,ou=People,dc=example,dc=com'|'uid=\\ John Smith,ou=People,dc=example,dc=com'
'does not strip the escaped trailing space in an attribute value'|'uid=John Smith\\ ,ou=People,dc=example,dc=com'|'uid=John Smith\\ ,ou=People,dc=example,dc=com'
context'when there is an escaped trailing space in an attribute value'do
'does not strip the escaped leading newline in an attribute value'|'uid=\\\nJohn Smith,ou=People,dc=example,dc=com'|'uid=\\\nJohn Smith,ou=People,dc=example,dc=com'
it'does not remove the escaped trailing space'do
'does not strip the escaped trailing newline in an attribute value'|'uid=John Smith\\\n,ou=People,dc=example,dc=com'|'uid=John Smith\\\n,ou=People,dc=example,dc=com'
'does not strip the unescaped leading newline in an attribute value'|'uid=\nJohn Smith,ou=People,dc=example,dc=com'|'uid=\nJohn Smith,ou=People,dc=example,dc=com'
'does not strip the unescaped trailing newline in an attribute value'|'uid=John Smith\n ,ou=People,dc=example,dc=com'|'uid=John Smith\n,ou=People,dc=example,dc=com'