Sha256: 13206a617dec43f3b9a5775fc9656fcbd1d0f648e08c500a837e8f9073d9ffb5
Contents?: true
Size: 1.55 KB
Versions: 5
Compression:
Stored size: 1.55 KB
Contents
require 'sasl' require 'spec' describe SASL do it 'should know DIGEST-MD5' do sasl = SASL.new_mechanism('DIGEST-MD5', SASL::Preferences.new) sasl.should be_an_instance_of SASL::DigestMD5 end it 'should know PLAIN' do sasl = SASL.new_mechanism('PLAIN', SASL::Preferences.new) sasl.should be_an_instance_of SASL::Plain end it 'should know ANONYMOUS' do sasl = SASL.new_mechanism('ANONYMOUS', SASL::Preferences.new) sasl.should be_an_instance_of SASL::Anonymous end it 'should choose ANONYMOUS' do preferences = SASL::Preferences.new class << preferences def want_anonymous? true end end SASL.new(%w(PLAIN DIGEST-MD5 ANONYMOUS), preferences).should be_an_instance_of SASL::Anonymous end it 'should choose DIGEST-MD5' do preferences = SASL::Preferences.new class << preferences def has_password? true end end SASL.new(%w(PLAIN DIGEST-MD5 ANONYMOUS), preferences).should be_an_instance_of SASL::DigestMD5 end it 'should choose PLAIN' do preferences = SASL::Preferences.new class << preferences def has_password? true end def allow_plaintext? true end end SASL.new(%w(PLAIN ANONYMOUS), preferences).should be_an_instance_of SASL::Plain end it 'should disallow PLAIN by default' do preferences = SASL::Preferences.new class << preferences def has_password? true end end lambda { SASL.new(%w(PLAIN ANONYMOUS), preferences) }.should raise_error(SASL::UnknownMechanism) end end
Version data entries
5 entries across 5 versions & 3 rubygems