My problem is that I want to mock my custom validation method that returns some data from DB ( list of ids - to check if given id is in my DB ).
So less talk, more code: in my Newsletter::Contract::Create class I have
validation do
  configure do
    config.messages_file = "config/error_messages.yml"
    def publisher_exists?(value)
      Publisher.where(id: value).present?
    end
  end
  required(:publisher_id).filled(:publisher_exists?)
end
And in test, I try to run
expect(Newsletter::Contract::Create).to receive(:publisher_exists?).and_return(true)
but obviously i receive
Newsletter::Contract::Create does not implement: publisher_exists?
So the question is what object calls for my custom validate methods, so I can mock it?;]
 
                        
So far what i understand is that there probably is some eval/anynoumus classes, so instead of mocking this method, i will stub AR that is used inside of method.
expect(Publisher).to receive_message_chain(:where, :present?).and_return(true)