Yeah, here we don't throw but reject.

Probably should put it in promise constructor. Then we'll just throw