It's using the `yield_with_args` matcher rather than attempting to verify that it yielded in a homegrown way.  The old way was problematic because the expectation was inside the block, which means that if the method didn't yield to the block, it could wrongly pass.