rails:3343
From: Kazuhiro NISHIYAMA <zn@m...>
Date: Sat, 12 Dec 2009 07:39:20 +0900
Subject: [rails:3343] Re: テスト時や development 環境の時のみシステム時刻を強制したい
西山和広です。 At Fri, 11 Dec 2009 12:09:19 +0900, naopontan wrote: > > テスト実行時や development 環境の時のみ、システム時刻を特定の日付に出来ないでしょうか? > 具体的には Date.today や Time.now 等をコールすると 2009-11-10 を返すという事です。 > > テストファイル(yml)に様々な属性の日付や時刻を埋め込んでいるので、例えば > 「今日通ったテストが明日は通らなくなる」といった事態になってしまいます。 > > それとも、フィクスチャには > birthday = <%= 10.years.ago.to_s(:db) %> > 等の様に全ての日時関連情報は相対的に記述するしかないのでしょうか? 以前 loginsugar というのを使ったときは test/mocks/test/clock.rb で テスト用の Clock を定義していました。 http://loginsugar.rubyforge.org/svn/tags/0.9.5/test/mocks/test/clock.rb test 以外では lib/clock.rb を使うようです。 これは eval じゃなくて Time.at(*params) を使った方がいいと思いますが。 http://loginsugar.rubyforge.org/svn/tags/0.9.5/lib/clock.rb -- |ZnZ(ゼット エヌ ゼット) |西山和広(Kazuhiro NISHIYAMA) -- 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... ]