We should test an async fail case too, for completeness