rails:3333
From: okkez <okkez000@g...>
Date: Fri, 11 Dec 2009 14:48:52 +0900
Subject: [rails:3333] Re: テスト時や development 環境の時のみシステム時刻を強制したい
okkez です。 テスト時のみ特定のメソッドの挙動を変える場合はなんかそういうライブラリを使うのがいいです。 mocha とか rr とか kagemusha とか。 mocha か kagemusha がわかりやすいと思います。 2009年12月11日14:43 naopontan <naopontan@g...>: > naopontan です。 > > 再定義はどこにするのが妥当ですか? > > 例えば config/environment.rb に以下の記述をしてみました。 > require 'date' > class Date > def self.today > RAILS_ENV == 'production' ? Date.today : Date.new(2009,10,1) > end > end > > #ただ、これだと production 環境で実行したら「SystemStackError: stack level too deep」 > #が出てしまいました。 > #(エラーが出ないように、本当の Date.today をコールするにはどうしたら良いですか?) > > このような実装を Time でもオーバーライドで対応していけば良いですか? > > ちなみに rails 2.1.2 です。 > > production の場合だけ上書きすればいいと思うのですが。 -- okkez okkez000@g... -- ML: rails@r... 使い方: http://QuickML.com/
3330 2009-12-11 04:09 [naopontan@g... ] テスト時や development 環境の時のみシステム時刻を強制したい 3331 2009-12-11 04:27 ┣[fuj@r... ] 3332 2009-12-11 06:43 ┃┗[naopontan@g... ] -> 3333 2009-12-11 06:48 ┃ ┣[okkez000@g... ] 3335 2009-12-11 06:55 ┃ ┃┣[okkez000@g... ] 3339 2009-12-11 07:22 ┃ ┃┗[naopontan@g... ] 3334 2009-12-11 06:52 ┃ ┣[fuj@r... ] 3338 2009-12-11 07:18 ┃ ┃┗[naopontan@g... ] 3341 2009-12-11 10:08 ┃ ┃ ┗[fuj@r... ] 3342 2009-12-11 10:53 ┃ ┃ ┗[naopontan@g... ] 3336 2009-12-11 07:09 ┃ ┣[shigi@s... ] 3337 2009-12-11 07:13 ┃ ┗[kawaji@g... ] 3340 2009-12-11 07:20 ┃ ┗[naopontan@g... ] 3343 2009-12-11 23:39 ┗[zn@m... ]