2012-11-12 7 views
5

Sto provando ad usare RSpec mock e should_receive nel matcher personalizzato. Voglio rilevare l'errore causato dallo should_receive per restituire il valore corretto dal matcher e causare l'output del messaggio di errore personalizzato.rspec mock dovrebbe_receive in matchers personalizzati

Come fare? O forse dovrei cambiare il mio approccio?

risposta

9

La risposta è:

match do |obj| 
    # do some setup and mocks here 
    begin 
    RSpec::Mocks::verify # run mock verifications 
    true 
    rescue RSpec::Mocks::MockExpectationError => e 
    # here one can use #{e} to construct an error message 
    false 
    end 
end 

finalmente trovato here

+0

Questo super-awesome utile. Saluti. – thomasfedb