カテゴリ別 2003年 | 2004年 | 2005年 | 2006年 | 2007年 | 2008年
知り合いサイト: よんだもの / 暴想 / Linuxでやる夫 / 新宿Vipper / 僕だけが幸せになればいいのに。
ruby 1.8.7 pre2 で activerecord-2.0.2 のテストを実行すると割りと失敗してる件の続きです。
Edge Rails ならすでに 1.8.7 対応しているかもと思って試してみました。
1452 tests, 5139 assertions, 2 failures, 1 errors
1422 tests, 5086 assertions, 0 failures, 1 errors
1452 tests, 5139 assertions, 2 failures, 1 errors
1422 tests, 5086 assertions, 0 failures, 1 errors
失敗やエラーがあるのはまあ edge なのでしょうがないとして、1.8.6 でも 1.8.7 pre2 でも結果が変わりませんでした。もちろん以前の日記に書いたような 1.8.7 での仕様変更に伴うエラーもありません。
いまの Edge Rails は 2.1.0 になるのでしょうから、おそらく Ruby 1.8.7 は Rails 2.1.0 以上推奨ということになりますね。Rails ユーザが Ruby 1.8.7 にバージョンアップするのは Rails 2.1.0 がリリースされるまで待ち(どっちが先になりますかね)、既存の Rails アプリは Ruby 1.8.6 以下のままで動かすのが無難でしょう。
ついでに他のコンポーネントのテストも実行してみました。
ActionPack で落ちるのは[ruby-dev:34532] ruby_1_8でform_tagが動かないの件でしょうか。他は問題なさそうですね。
やはり、[ruby-dev:34532] ruby_1_8でform_tagが動かないの件でした。r15856 の変更を戻した ruby 1.8.7 pre2 で EdgeRails の ActionPack のテストを実行したところ、正常に終了しました。
1907 tests, 9146 assertions, 0 failures, 0 errors
[BUG] と出て落ちますし、ActionPack の修正で回避するよりも、Ruby 側を直した方がいいんじゃないですかね。
Ruby 1.8.7 preview3 でも結果は同じでした。
helper_method で定義されたヘルパーメソッドを呼ぶと落ちるみたいです。つまり、form_tag ではなくて、
% rails sample
% cd sample
% ruby18 ./script/generate controller sample index
% echo '<% protect_against_forgery? %>' >> app/views/sample/index.html.erb
% ruby -pi~ -e 'sub(/assert.*/){"get :index"}' test/functional/sample_controller_test.rb
% ruby18 test/functional/sample_controller_test.rb
で落ちます。protect_against_forgery? の代わりに form_authenticity_token でも同様。
しかし、これを最小コードに落とし込むのは結構面倒そうですね。。。
最近のコメント:
RSS
![]()
This work is licensed under a
Creative Commons License
(note: text only. w/o web design, citations, (re)distributed softwares).