File: key_generator_test.rb

package info (click to toggle)
rails 2%3A4.1.8-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 21,580 kB
  • sloc: ruby: 172,699; sql: 43; yacc: 43; sh: 14; makefile: 12
file content (32 lines) | stat: -rw-r--r-- 946 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
require 'abstract_unit'

begin
  require 'openssl'
  OpenSSL::PKCS5
rescue LoadError, NameError
  $stderr.puts "Skipping KeyGenerator test: broken OpenSSL install"
else

require 'active_support/time'
require 'active_support/json'

class KeyGeneratorTest < ActiveSupport::TestCase
  def setup
    @secret    = SecureRandom.hex(64)
    @generator = ActiveSupport::KeyGenerator.new(@secret, :iterations=>2)
  end

  test "Generating a key of the default length" do
    derived_key = @generator.generate_key("some_salt")
    assert_kind_of String, derived_key
    assert_equal OpenSSL::Digest::SHA1.new.block_length, derived_key.length, "Should have generated a key of the default size"
  end

  test "Generating a key of an alternative length" do
    derived_key = @generator.generate_key("some_salt", 32)
    assert_kind_of String, derived_key
    assert_equal 32, derived_key.length, "Should have generated a key of the right size"
  end
end

end