title: Why is my conditional validation failing?
body: <p>I have a conditional validation in my Post model:</p>
  
  <pre><code>validates :title, :presence =&gt; true, :if =&gt; Proc.new { |post| post.post_type == "text" }
  </code></pre>
  
  <p>And I have the following spec in my <code>post_spec.rb</code> file:</p>
  
  <pre><code>it "should only require a title if the post type is text" do
    post = Post.new(@attr.merge(:title =&gt; "", :post_type =&gt; "text"))
    post.should_not be_valid
  
    post = Post.new(@attr.merge(:title =&gt; "", :post_type =&gt; "image"))
    post.should be_valid # This fails
  end
  </code></pre>
  
  <p>My question is: <strong>Why does the second test fail?</strong></p>