typo
test/unit 不具合修正中。
typo の元バージョンいくつだか忘れた。(release_2_0_0 らしい)
test/unit/comment_test.rb ん中の test_reject_article_age で Failure
1) Failure: test_reject_article_age(CommentTest) [./test/unit/comment_test.rb:69]: <false> is not true.
コードは以下。
def test_reject_article_age c = Comment.new c.author = "Old Spammer" c.body = "Old trackback body" c.article = @article3 assert ! c.save assert c.errors.invalid?('article_id') c.article = @article1 assert c.save assert c.errors.empty? end
二度目の c.save で c.save が false との事。うむむ、と唸りつつ app/models/comment.rb を見て validate がクサそう、とアタリを付ける。
app/models/comment.rb (の一部)
class Comment < ActiveRecord::Base belongs_to :article validates_presence_of :author, :body validates_against_spamdb :body, :url, :ip validates_age_of :article_id protected before_save :make_nofollow, :correct_url, :transform_body
# ってか、メソドが全部プロテクトですな。
validate_age_of って何だ、と思いつつプロジェクトん中を grep かけると lib/spam_protection.rb の中に validate が定義してあった。キッツいなー、勉強にはなりますが。
で、今からその validate を追い掛ける。