Buy with no promise
Buy with resolving promise
Buy with rejecting promise