2016/09/26分のコミットです。
CHANGELOGへの追加はありませんでした。
Require active_support/testing/autorun.
railties/lib/rails/commands/test.rbの修正です。
minitestのautorunを実行するのに、minitest/autorunを直接requireしていたのを、Active Supportにあるautorunのラッパー(active_support/testing/autorun)を使用するよう修正しています。
Revise setting of run_with_rails_extension.
activesupport/lib/active_support/testing/autorun.rb、
railties/lib/rails/commands/test.rb、
railties/lib/rails/test_unit/minitest_plugin.rbの修正です。
test runner内のrun_with_rails_extensionの設定の見直しを行っています。
bin/rails test経由でテストを実行した場合は問題なかったのですが、rubyコマンド経由でテストを実行した場合(ex: ruby -Itest test/models/post_test.rb)、テスト対象のファイルが複数回requireされてしまう問題があった為、rubyコマンド経由で実行されかどうかを判別出来るようにし、rubyコマンド経由でのテストの実行の場合test runner内でテスト対象のファイルのrequireを行わないよう修正しています(rubyコマンド経由の場合、最初にテスト対象のファイルは読み込まれている為)。
fffffff, Add code missing in 29f0fbd
activesupport/lib/active_support/testing/autorun.rbの修正です。
先の対応で設定変更の対応が漏れている箇所があったのを修正しています。
Use autorun when running via Rake.
railties/lib/rails/test_unit/minitest_plugin.rbの修正です。
rakeコマンド経由でテストを実行した場合にもMinitest.after_runが実行されるよう、autorunを使用してテストを実行するよう修正しています。
Add info about a502703 to Rails 5 release notes
rails guideのRuby on Rails 5.0 Release Notesの修正です。
ActiveRecord::ConnectionAdapters::Column::TRUE_VALUESを削除した対応(Change the behavior of boolean columns to be closer to Ruby's semantics. · rails/rails@a502703)について、entryを追加しています。
Merge pull request #26579 from y-yagi/remove_unnecessary_rails_env_setting
railties/lib/rails/generators/rails/app/templates/test/test_helper.rb、
railties/lib/rails/generators/rails/plugin/templates/test/test_helper.rbの修正です。
test_helper.rb内でENV["RAILS_ENV"]を設定していたのを削除しています。ENV["RAILS_ENV"]はtest runner内でで設定され、test_helper.rbで個別に設定する必要は無い為。
[ci skip] Clarify Postgresql Documentation
activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rbのdocの修正です。
ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#executeメソッドのdoc内で、処理が成功した場合に返されるクラス名に誤りがあったのを修正、及びグラマー、フォーマットの修正等を行っています。
[ci skip] Update PG adapter documentation
activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rbのdocの修正です。
ActiveRecord::ConnectionAdapters::PostgreSQL::DatabaseStatements#executeメソッドのdoc内で、処理が失敗した場合に返されるクラス名に誤りがあったのを修正しています。
Use xor to avoid allocations in AR::Core#hash
activerecord/lib/active_record/core.rbの修正です。
AR::Core#hashメソッドでclass名とidのArrayのHashを返していたのを、xorした値のHashを返すよう修正しています。
def hash
if id
- [self.class, id].hash
+ self.class.hash ^ self.id.hash
else
Arrayのallocateが行われるのを防ぐ為との事です。