なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2015/10/01)

2015/10/01分のコミットです。

CHANGELOGへの追加はありませんでした。


only construct one request in an engine

railties/lib/rails/application.rbrailties/lib/rails/engine.rbの修正です。

Rails::Application#callRails::Engine#callそれぞれでActionDispatch::Requestインスタンス生成を行っていたのを、Rails::Application#build_requestを新規に作成し、そこでのみActionDispatch::Requestインスタンス生成を行うよう修正しています。


Add test case for text_field_tag

actionview/test/template/form_tag_helper_test.rbの修正です。

text_field_tagメソッドplaceholderオプションを指定した場合のテストを追加しています。


make sure exceptions are marshalable when returning test results https://github.com/rails/rails/commit/0ecb32c838b853c35d7939cacde9e5fe715419f9

activesupport/lib/active_support/testing/isolation.rbの修正です。

Forking#run_in_isolationメソッドで、処理の結果をMarshal.dumpする前に、エラーが起きてたら、エラー情報を先にMarshal.dumpするよう修正しています。

-            write.puts [Marshal.dump(self.dup)].pack("m")
+            begin
+              if error?
+                failures.map! { |e|
+                  begin
+                    Marshal.dump e
+                    e
+                  rescue TypeError
+                    ex = Exception.new e.message
+                    ex.set_backtrace e.backtrace
+                    Minitest::UnexpectedError.new ex
+                  end
+                }
+              end
+              result = Marshal.dump(self.dup)
+            end
+
+            write.puts [result].pack("m")

結果をまとめてMarshal.dumpする際に、marshalでエラーになるのを防ぐ為に、先に行うよう対応したとの事です。


Add test cases for checkbox_tag

actionview/test/template/form_tag_helper_test.rbの修正です。

check_box_tagメソッドdisabled: trueオプションを指定した場合のテスト、及びdefault checkがtrueの場合のテストを追加しています。