Problem in testing with separate validation of :attachment_file_name

Using: RSpec, Shoulda, Paperclip (including matchers)

Example Model

class Example < ActiveRecord::Base   has_attached_file :attachment

  validates_attachment_presence :attachment   validates_format_of :attachment_file_name, :with => /\.(png|jpe?g)$/ end

Example Test

require 'spec/helper'

describe Example do   it { should validate_attachment_presence(:attachment) }

  it { should validate_format_of(:attachment_file_name).           with('example.png') }

  it { should validate_format_of(:attachment_file_name).           not_with('example.zip').           with_message(/is invalid/) } end

This causes my validates_attachment_presence(:attachment) test to fail.

If I remove the validates_format_of :attachment_file_name line from my model, the presence test now passes, but, obviously, the format test fails.

I noticed that basically all validates_attachment_presence does is require attachment_file_name, but I can't seem to find any reason why it affects my format tests.

I am not sure if this is necessarily Paperclip issue (as apposed to perhaps a Shoulda one), but hopefully this is a good enough report to explain the issue.