call resolve/reject on the parent promise