[promise] Simplify tests with utility functions

Add TestCase.prototype.isFulfilled and isRejected to check if a promise
is fulfilled or rejected respectively instead of checking case by case.
[promise] Do not use Promise as a function in tests