#Throw this in spec helper def block_should(matcher, &block) block.should matcher end def block_should_not(matcher, &block) block.should_not matcher end #Use it like this block_should change(Thing, :count).by(-1) do @thing.destroy end #Which is just a little cleaner version of this lambda do @thing.destroy end.should change(Thing, :count).by(1)