aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
authorbogdanvlviv <bogdanvlviv@gmail.com>2017-09-12 10:08:16 +0300
committerbogdanvlviv <bogdanvlviv@gmail.com>2017-10-15 22:27:54 +0300
commit678e563da3e7cddca9501ec90cdd76ee399a62b1 (patch)
treee9463d1d603ace41a0270c8a987fb4b0a3bbc625 /railties
parent99b2bf8db39846897f017129a41efcffa840dc68 (diff)
downloadrails-678e563da3e7cddca9501ec90cdd76ee399a62b1.tar.gz
rails-678e563da3e7cddca9501ec90cdd76ee399a62b1.tar.bz2
rails-678e563da3e7cddca9501ec90cdd76ee399a62b1.zip
`ActiveRecord::Tasks::DatabaseTasks.load_schema` has always to establish database connection
When load schema from `structure.sql`, database connection isn't established. `ActiveRecord::Tasks::DatabaseTasks.load_schema` has to establish database connection since it executes ``` ActiveRecord::InternalMetadata.create_table ActiveRecord::InternalMetadata[:environment] = environment ```
Diffstat (limited to 'railties')
-rw-r--r--railties/test/application/rake/dbs_test.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/railties/test/application/rake/dbs_test.rb b/railties/test/application/rake/dbs_test.rb
index 3057a0a3fb..fd22477539 100644
--- a/railties/test/application/rake/dbs_test.rb
+++ b/railties/test/application/rake/dbs_test.rb
@@ -189,6 +189,14 @@ module ApplicationTests
db_structure_dump_and_load database_url_db_name
end
+ test "db:structure:dump and db:structure:load set ar_internal_metadata" do
+ require "#{app_path}/config/environment"
+ db_structure_dump_and_load ActiveRecord::Base.configurations[Rails.env]["database"]
+
+ assert_equal "test", rails("runner", "-e", "test", "puts ActiveRecord::InternalMetadata[:environment]").strip
+ assert_equal "development", rails("runner", "puts ActiveRecord::InternalMetadata[:environment]").strip
+ end
+
test "db:structure:dump does not dump schema information when no migrations are used" do
# create table without migrations
rails "runner", "ActiveRecord::Base.connection.create_table(:posts) {|t| t.string :title }"