diff options
author | Eugene Gilburg <eugene.gilburg@gmail.com> | 2014-07-19 12:49:52 -0700 |
---|---|---|
committer | Eugene Gilburg <eugene.gilburg@gmail.com> | 2014-07-19 17:15:40 -0700 |
commit | 3b9cc0a56f4cbfb97f12c5a167ac901f7682bbe2 (patch) | |
tree | b4ebd67d449a380aa404bbce011898e5eddc9fe9 /activesupport/test/key_generator_test.rb | |
parent | 08754f12e65a9ec79633a605e986d0f1ffa4b251 (diff) | |
download | rails-3b9cc0a56f4cbfb97f12c5a167ac901f7682bbe2.tar.gz rails-3b9cc0a56f4cbfb97f12c5a167ac901f7682bbe2.tar.bz2 rails-3b9cc0a56f4cbfb97f12c5a167ac901f7682bbe2.zip |
missing activesupport test coverage
Diffstat (limited to 'activesupport/test/key_generator_test.rb')
-rw-r--r-- | activesupport/test/key_generator_test.rb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/activesupport/test/key_generator_test.rb b/activesupport/test/key_generator_test.rb index 525082d313..f7e8e9a795 100644 --- a/activesupport/test/key_generator_test.rb +++ b/activesupport/test/key_generator_test.rb @@ -29,4 +29,34 @@ class KeyGeneratorTest < ActiveSupport::TestCase end end +class CachingKeyGeneratorTest < ActiveSupport::TestCase + def setup + @secret = SecureRandom.hex(64) + @generator = ActiveSupport::KeyGenerator.new(@secret, :iterations=>2) + @caching_generator = ActiveSupport::CachingKeyGenerator.new(@generator) + end + + test "Generating a cached key for same salt and key size" do + derived_key = @caching_generator.generate_key("some_salt", 32) + cached_key = @caching_generator.generate_key("some_salt", 32) + + assert_equal derived_key, cached_key + assert_equal derived_key.object_id, cached_key.object_id + end + + test "Does not cache key for different salt" do + derived_key = @caching_generator.generate_key("some_salt", 32) + different_salt_key = @caching_generator.generate_key("other_salt", 32) + + assert_not_equal derived_key, different_salt_key + end + + test "Does not cache key for different length" do + derived_key = @caching_generator.generate_key("some_salt", 32) + different_length_key = @caching_generator.generate_key("some_salt", 64) + + assert_not_equal derived_key, different_length_key + end +end + end |