I'm speccing the behaviour of a Rails create action, where I'm using save! to catch failed saves. In the case of working save, I'm using the following stub:
@client.stub!(:save!).and_return(true) which works fine. However, in the negative case, @client.stub!(:save!).and_raise(ActiveRecord::RecordInvalid)The save! call in the controller doesn't seem to work. I get the following error:
ArgumentError in 'ClientsController POST /clients with invalid parameters should show new form again'
wrong number of arguments (0 for 1)/Users/jarkko/Sites/koulutusweb/app/controllers/clients_controller.rb: 41:in `create'
The line #41 consists only of @client.save!I'm at a loss seeing where the wrong number of arguments is really happening because save! certainly shouldn't assume any args. Moreover, both cases work fine in the real app, so it seems to me something funky is happening when stubbing the method.
Anyone else stumbled upon anything similar? Cheers, //jarkko -- Jarkko Laine http://jlaine.net http://dotherightthing.com http://www.railsecommerce.com http://odesign.fi
Description: S/MIME cryptographic signature
_______________________________________________ rspec-users mailing list email@example.com http://rubyforge.org/mailman/listinfo/rspec-users