improve tests, ensure async calls are async always