Timecopを使わなくても時間を止められた話
テストで時間を止めたい時、Timecopを使わないと止められないと思っていましたが、Rails4.1以降は標準のActiveSupport::Testing::TimeHelpers
でも止められると最近知りました。
- リポジトリ: travisjeffery/timecop
1. Timecopを使った場合
- 1ヶ月前の時刻で固定する。
Timecop.freeze(Time.current.prev_month)
2. ActiveSupport::Testing::TimeHelpers
を使った場合
1ヶ月前の時刻で固定する。
travel_to(Time.current.prev_month)
元の時刻に戻す
travel_back
現在時刻で固定する
freeze_time
おたより発掘
やばい。知らなかった
Rails: Timecopを使わなくても時間を止められた話 https://t.co/oDvd8b1jyP
— しいたけ (@shitake4) December 27, 2018
travel_toでもよかったのだった
Rails: Timecopを使わなくても時間を止められた話 https://t.co/tvVm7YrvTg
— (Ryutaro Yamakawa|ボトムズ) (@ryuchan_00) December 26, 2018