Sha256: a661621718f2b82524130a3cccc17a97c084e44e7975ddee80084a9b6a054eaf

Contents?: true

Size: 1.45 KB

Versions: 2

Compression:

Stored size: 1.45 KB

Contents

require File.join(File.dirname(__FILE__), 'test_helper')

class SymmetricallyEncryptedStringTest < Test::Unit::TestCase
  def setup
    @data = 'test'
    @key = 'secret'
    @encrypted = "MU6e/5LvhKA=\n"
    PluginAWeek::EncryptedStrings::SymmetricEncryptor.default_key = nil
  end
  
  def test_should_raise_exception_if_no_key_specified
    assert_raises(PluginAWeek::EncryptedStrings::NoKeyError) { PluginAWeek::EncryptedStrings::SymmetricEncryptor.new }
  end
  
  def test_encrypt_with_default_key_if_key_not_specified
    PluginAWeek::EncryptedStrings::SymmetricEncryptor.default_key = @key
    assert_equal @encrypted, PluginAWeek::EncryptedStrings::SymmetricEncryptor.new.encrypt(@data)
  end
  
  def test_should_encrypt_with_custom_key_if_key_specified
    assert_equal @encrypted, PluginAWeek::EncryptedStrings::SymmetricEncryptor.new(:key => @key).encrypt(@data)
  end
  
  def test_should_be_able_to_decrypt
    assert PluginAWeek::EncryptedStrings::SymmetricEncryptor.new(:key => @key).can_decrypt?
  end
  
  def test_should_decrypt_encrypted_string_with_custom_key_if_key_specified
    assert_equal @data, PluginAWeek::EncryptedStrings::SymmetricEncryptor.new(:key => @key).decrypt(@encrypted)
  end
  
  def test_should_decrypt_encrypted_string_with_default_key_if_key_not_specified
    PluginAWeek::EncryptedStrings::SymmetricEncryptor.default_key = @key
    assert_equal @data, PluginAWeek::EncryptedStrings::SymmetricEncryptor.new.decrypt(@encrypted)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
encrypted_strings-0.0.3 test/symmetric_encryptor_test.rb
encrypted_strings-0.0.2 test/symmetric_encryptor_test.rb