config/initializers/devise.rb はこんな感じとする。
Devise.setup do |config| # 省略 config.reset_password_within = 30.minutes config.confirm_within = 30.days # 省略 endテストコードはこんな感じでかけた。 Recoverable では
reset_password_sent_at と reset_password_within.ago を比較している。ActiveSupport::Duration#agoまで遡ると初期値である Time.current に対して演算していたので、最初は Time.stub(:current, ... のようにしていた。しかし、Confirmable では、合算値を
Time.now と比較している。そのため、Time.current は通らないのでこのやり方ではだめだった。結局は
Time.now をスタブ化したらよかったわけだが、こういう同質的な処理は同じ書き方をしてほしいなーとおもった昼下がり。
0 件のコメント :
コメントを投稿