blob: dd47126febb46e54fdbeafbb80143fc23ec9b60f [file]
// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ios/web_view/internal/signin/web_view_gaia_auth_fetcher.h"
#import "google_apis/gaia/gaia_auth_consumer.h"
#import "testing/gtest/include/gtest/gtest.h"
#import "testing/gtest_mac.h"
#import "testing/platform_test.h"
namespace ios_web_view {
class TestGaiaAuthConsumer : public GaiaAuthConsumer {
public:
void OnListAccountsSuccess(const std::string& data) override {
list_accounts_success_called_ = true;
}
void OnListAccountsFailure(const GoogleServiceAuthError& error) override {
list_accounts_failure_called_ = true;
}
bool list_accounts_success_called_ = false;
bool list_accounts_failure_called_ = false;
};
using WebViewGaiaAuthFetcherTest = PlatformTest;
// Tests ListAccounts fails as expected.
TEST_F(WebViewGaiaAuthFetcherTest, ListAccounts) {
TestGaiaAuthConsumer consumer;
WebViewGaiaAuthFetcher fetcher(&consumer, gaia::GaiaSource::kChrome,
/*url_loader_factory=*/nullptr);
fetcher.StartListAccounts();
EXPECT_FALSE(consumer.list_accounts_success_called_);
EXPECT_TRUE(consumer.list_accounts_failure_called_);
}
} // namespace ios_web_view