読者です 読者をやめる 読者になる 読者になる

(define -ayalog '())

括弧に魅せられて道を外した名前のないプログラマ

テストがある日突然コケた

Rails

割とよくあr…ってたまるかぁぁぁぁぁぁ><

今朝の話。昨日まで通っていたテストが今日突然コケた。
最初は意味が分からなかった。
分からなかったんだけど、調べたらどうもmodelのバリデーションでコケていることが判明した。

理由:日付の大小とかでバリデーションかけているのにも関わらず、比較する日付のうち片方がDate.todayを元に日付の算出を行っていて、もう片方はDate.newで固定の日付をいれていたので当然のようにエラーが出た。

つまり、テスト実行日に依存するテストなわけ。基準はひとつでなければならないのに、日付の基準が複数あったためにエラーになるというマジカル。朝からさすがに焦った。