Fix oauth linking and tests
Only get provider email if user has no email