AllReady.Providers.ExternalUserInformationProviders.Providers.GoogleExternalUserInformationProvider.GetExternalUserInformation C# (CSharp) Method

GetExternalUserInformation() public method

public GetExternalUserInformation ( Microsoft.AspNetCore.Identity.ExternalLoginInfo externalLoginInfo ) : Task
externalLoginInfo Microsoft.AspNetCore.Identity.ExternalLoginInfo
return Task
        public Task<ExternalUserInformation> GetExternalUserInformation(ExternalLoginInfo externalLoginInfo)
        {
            var externalUserInformation = new ExternalUserInformation
            {
                Email = externalLoginInfo.Principal.FindFirstValue(ClaimTypes.Email),
                FirstName = externalLoginInfo.Principal.FindFirstValue(ClaimTypes.GivenName),
                LastName = externalLoginInfo.Principal.FindFirstValue(ClaimTypes.Surname)
            };

            return Task.FromResult(externalUserInformation);
        }
    }

Usage Example

        public async Task ReturnCorrectExternalLoginInfoWhenClaimsAreNotPopulated()
        {
            var sut = new GoogleExternalUserInformationProvider();
            var result = await sut.GetExternalUserInformation(new ExternalLoginInfo(new ClaimsPrincipal(), null, null, null));

            Assert.Null(result.Email);
            Assert.Null(result.FirstName);
            Assert.Null(result.LastName);
        }
All Usage Examples Of AllReady.Providers.ExternalUserInformationProviders.Providers.GoogleExternalUserInformationProvider::GetExternalUserInformation
GoogleExternalUserInformationProvider