diff options
author | Guillermo Iguaran <guilleiguaran@gmail.com> | 2013-12-10 10:04:07 -0500 |
---|---|---|
committer | Guillermo Iguaran <guilleiguaran@gmail.com> | 2013-12-12 14:59:11 -0500 |
commit | 3eaa29840b92813f37adcc41d3d8c08d976480a4 (patch) | |
tree | c5544d6b8abcacb6fe04b2ce4eb259976c7f64e6 /railties/test/application | |
parent | 0f4d235c1606ccec30e8fd0aeb4b88a061ee83fe (diff) | |
download | rails-3eaa29840b92813f37adcc41d3d8c08d976480a4.tar.gz rails-3eaa29840b92813f37adcc41d3d8c08d976480a4.tar.bz2 rails-3eaa29840b92813f37adcc41d3d8c08d976480a4.zip |
Load secret_key_base from tokens.yml, fallback to config.secret_key_base
Diffstat (limited to 'railties/test/application')
-rw-r--r-- | railties/test/application/configuration_test.rb | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/railties/test/application/configuration_test.rb b/railties/test/application/configuration_test.rb index b3fbceb0dc..1f3127b069 100644 --- a/railties/test/application/configuration_test.rb +++ b/railties/test/application/configuration_test.rb @@ -250,7 +250,7 @@ module ApplicationTests test "Use key_generator when secret_key_base is set" do make_basic_app do |app| - app.config.secret_key_base = 'b3c631c314c0bbca50c1b2843150fe33' + app.secrets.secret_key_base = 'b3c631c314c0bbca50c1b2843150fe33' app.config.session_store :disabled end @@ -270,7 +270,7 @@ module ApplicationTests test "application verifier can be used in the entire application" do make_basic_app do |app| - app.config.secret_key_base = 'b3c631c314c0bbca50c1b2843150fe33' + app.secrets.secret_key_base = 'b3c631c314c0bbca50c1b2843150fe33' app.config.session_store :disabled end @@ -285,7 +285,7 @@ module ApplicationTests test "application verifier can build different verifiers" do make_basic_app do |app| - app.config.secret_key_base = 'b3c631c314c0bbca50c1b2843150fe33' + app.secrets.secret_key_base = 'b3c631c314c0bbca50c1b2843150fe33' app.config.session_store :disabled end @@ -303,6 +303,26 @@ module ApplicationTests assert_not_equal default_verifier.object_id, text_verifier.object_id end + test "secrets.secret_key_base is used when config/tokens.yml is present" do + app_file 'config/tokens.yml', <<-YAML + development: + secret_key_base: 3b7cd727ee24e8444053437c36cc66c3 + YAML + + require "#{app_path}/config/environment" + assert_equal '3b7cd727ee24e8444053437c36cc66c3', app.secrets.secret_key_base + end + + test "secret_key_base is copied from config to secrets when not set" do + remove_file "config/tokens.yml" + app_file 'config/initializers/secret_token.rb', <<-RUBY + Rails.application.config.secret_key_base = "3b7cd727ee24e8444053437c36cc66c3" + RUBY + + require "#{app_path}/config/environment" + assert_equal '3b7cd727ee24e8444053437c36cc66c3', app.secrets.secret_key_base + end + test "protect from forgery is the default in a new app" do make_basic_app |