Testing what failsintermediate
Forget one await and you are asserting on a Promise rather than a value, and the test passes whatever the code does — which is why the failure path is where most untested bugs live.
Testing the throw. And the forgotten await that makes every test pass.
Your suite passes a correct loadUser and fails four that each break one part of the contract.
Published in full, before you start — every point is one of these and there is nothing else. Each one runs your code; it is not a search for keywords.
Forget one await and you are asserting on a Promise rather than a value, and the test passes whatever the code does — which is why the failure path is where most untested bugs live.