testAsyncMulti currently has the limitation that the `expect` callback has to be called at the top level inside the test step function, you can't nest calls to `expect` inside one another.  Since the tests didn't need the multiple steps of testAsyncMulti anyway, it seemed simpler to just extract the polling code.