#include "chrome/browser/profiles/profile_downloader.h"
#include "base/functional/bind.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "base/test/task_environment.h"
#include "chrome/browser/profiles/profile_downloader_delegate.h"
#include "chrome/browser/signin/identity_manager_factory.h"
#include "chrome/browser/signin/identity_test_environment_profile_adaptor.h"
#include "chrome/browser/signin/test_signin_client_builder.h"
#include "chrome/test/base/testing_profile.h"
#include "components/signin/public/base/test_signin_client.h"
#include "components/signin/public/identity_manager/account_info.h"
#include "components/signin/public/identity_manager/identity_manager.h"
#include "components/signin/public/identity_manager/identity_test_environment.h"
#include "services/network/test/test_url_loader_factory.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
const char kTestEmail[] = …;
const char kTestHostedDomain[] = …;
const char kTestFullName[] = …;
const char kTestGivenName[] = …;
const char kTestLocale[] = …;
const char kTestValidPictureURL[] = …;
const char kTestInvalidPictureURL[] = …;
}
class ProfileDownloaderTest
: public testing::Test,
public ProfileDownloaderDelegate,
public signin::IdentityManager::DiagnosticsObserver { … };
TEST_F(ProfileDownloaderTest, FetchAccessToken) { … }
TEST_F(ProfileDownloaderTest, AccountInfoReady) { … }
TEST_F(ProfileDownloaderTest, AccountInfoNotReady) { … }
TEST_F(ProfileDownloaderTest, AccountInfoNoPictureDoesNotCrash) { … }
TEST_F(ProfileDownloaderTest, AccountInfoInvalidPictureURLDoesNotCrash) { … }