7
RSpecと時間を比較する際の問題
Ruby on Rails 4とrspec-rails gem 2.14を使用しています。私のオブジェクトの場合updated_at、コントローラーアクションの実行後に現在の時間とオブジェクト属性を比較したいのですが、スペックが渡されないため困っています。つまり、以下はスペックコードです。 it "updates updated_at attribute" do Timecop.freeze patch :update @article.reload expect(@article.updated_at).to eq(Time.now) end 上記の仕様を実行すると、次のエラーが発生します。 Failure/Error: expect(@article.updated_at).to eq(Time.now) expected: 2013-12-05 14:42:20 UTC got: Thu, 05 Dec 2013 08:42:20 CST -06:00 (compared using ==) スペックを合格させるにはどうすればよいですか? 注:私は以下も試しました(utc追加に注意してください): it "updates updated_at attribute" do Timecop.freeze patch :update @article.reload expect(@article.updated_at.utc).to eq(Time.now) …