Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4263)

Unified Diff: chrome/browser/sync/sync_ui_util_unittest.cc

Issue 8613001: Revert 110905 - Adding parameter to GetStatusLabels to indicate if links are acceptable, as some ... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/sync/sync_ui_util.cc ('k') | chrome/browser/ui/webui/options/personal_options_handler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/sync/sync_ui_util_unittest.cc
===================================================================
--- chrome/browser/sync/sync_ui_util_unittest.cc (revision 110908)
+++ chrome/browser/sync/sync_ui_util_unittest.cc (working copy)
@@ -2,7 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include <set>
#include "base/basictypes.h"
#include "base/utf_string_conversions.h"
#include "chrome/browser/sync/profile_sync_service_mock.h"
@@ -13,23 +12,9 @@
#include "testing/gtest/include/gtest/gtest.h"
using ::testing::Return;
-using ::testing::ReturnRef;
using ::testing::NiceMock;
using content::BrowserThread;
-// A number of distinct states of the ProfileSyncService can be generated for
-// tests.
-enum DistinctState {
- STATUS_CASE_SETUP_IN_PROGRESS,
- STATUS_CASE_SETUP_ERROR,
- STATUS_CASE_AUTHENTICATING,
- STATUS_CASE_AUTH_ERROR,
- STATUS_CASE_PROTOCOL_ERROR,
- STATUS_CASE_PASSPHRASE_ERROR,
- STATUS_CASE_SYNCED,
- NUMBER_OF_STATUS_CASES
-};
-
namespace {
// Utility function to test that GetStatusLabelsForSyncGlobalError returns
@@ -38,9 +23,11 @@
GoogleServiceAuthError::State error_state,
bool is_signed_in,
bool is_error) {
+ GoogleServiceAuthError auth_error(error_state);
+ service->UpdateAuthErrorState(auth_error);
+
EXPECT_CALL(*service, HasSyncSetupCompleted())
.WillRepeatedly(Return(is_signed_in));
-
if (error_state == GoogleServiceAuthError::SERVICE_UNAVAILABLE) {
EXPECT_CALL(*service, GetAuthenticatedUsername())
.WillRepeatedly(Return(UTF8ToUTF16("")));
@@ -49,9 +36,6 @@
.WillRepeatedly(Return(UTF8ToUTF16("foo")));
}
- GoogleServiceAuthError auth_error(error_state);
- EXPECT_CALL(*service, GetAuthError()).WillRepeatedly(ReturnRef(auth_error));
-
string16 label1, label2, label3;
sync_ui_util::GetStatusLabelsForSyncGlobalError(
service, &label1, &label2, &label3);
@@ -79,9 +63,6 @@
EXPECT_CALL(service, QueryDetailedSyncStatus())
.WillOnce(Return(status));
- GoogleServiceAuthError auth_error(GoogleServiceAuthError::NONE);
- EXPECT_CALL(service, GetAuthError()).WillOnce(ReturnRef(auth_error));
-
EXPECT_CALL(service, unrecoverable_error_detected())
.WillOnce(Return(true));
@@ -144,185 +125,3 @@
&service, table[i].error_state, false, false);
}
}
-// Loads a ProfileSyncServiceMock to emulate one of a number of distinct cases
-// in order to perform tests on the generated messages.
-void GetDistinctCase(ProfileSyncServiceMock& service,
- GoogleServiceAuthError** auth_error,
- int caseNumber) {
- // Auth Error object is returned by reference in mock and needs to stay in
- // scope throughout test, so it is owned by calling method. However it is
- // immutable so can only be allocated in this method.
- switch (caseNumber) {
- case STATUS_CASE_SETUP_IN_PROGRESS: {
- EXPECT_CALL(service, HasSyncSetupCompleted())
- .WillOnce(Return(false));
- EXPECT_CALL(service, SetupInProgress())
- .WillOnce(Return(true));
- browser_sync::SyncBackendHost::Status status;
- status.summary = browser_sync::SyncBackendHost::Status::READY;
- EXPECT_CALL(service, QueryDetailedSyncStatus())
- .WillOnce(Return(status));
- *auth_error = new GoogleServiceAuthError(GoogleServiceAuthError::NONE);
- EXPECT_CALL(service, GetAuthError())
- .WillOnce(ReturnRef(**auth_error));
- EXPECT_CALL(service, UIShouldDepictAuthInProgress())
- .WillOnce(Return(false));
- return;
- }
- case STATUS_CASE_SETUP_ERROR: {
- EXPECT_CALL(service, HasSyncSetupCompleted())
- .WillOnce(Return(false));
- EXPECT_CALL(service, SetupInProgress())
- .WillOnce(Return(false));
- EXPECT_CALL(service, unrecoverable_error_detected())
- .WillOnce(Return(true));
- browser_sync::SyncBackendHost::Status status;
- status.summary = browser_sync::SyncBackendHost::Status::READY;
- EXPECT_CALL(service, QueryDetailedSyncStatus())
- .WillOnce(Return(status));
- return;
- }
- case STATUS_CASE_AUTHENTICATING: {
- EXPECT_CALL(service, HasSyncSetupCompleted())
- .WillOnce(Return(true));
- browser_sync::SyncBackendHost::Status status;
- status.summary = browser_sync::SyncBackendHost::Status::READY;
- EXPECT_CALL(service, QueryDetailedSyncStatus())
- .WillOnce(Return(status));
- EXPECT_CALL(service, UIShouldDepictAuthInProgress())
- .WillOnce(Return(true));
- *auth_error = new GoogleServiceAuthError(GoogleServiceAuthError::NONE);
- EXPECT_CALL(service, GetAuthError())
- .WillOnce(ReturnRef(**auth_error));
- return;
- }
- case STATUS_CASE_AUTH_ERROR: {
- EXPECT_CALL(service, HasSyncSetupCompleted())
- .WillOnce(Return(true));
- browser_sync::SyncBackendHost::Status status;
- status.summary = browser_sync::SyncBackendHost::Status::READY;
- EXPECT_CALL(service, QueryDetailedSyncStatus())
- .WillOnce(Return(status));
- *auth_error = new GoogleServiceAuthError(
- GoogleServiceAuthError::SERVICE_UNAVAILABLE);
- EXPECT_CALL(service, GetAuthenticatedUsername())
- .WillOnce(Return(ASCIIToUTF16("")));
- EXPECT_CALL(service, GetAuthError())
- .WillOnce(ReturnRef(**auth_error));
- EXPECT_CALL(service, UIShouldDepictAuthInProgress())
- .WillOnce(Return(false));
- return;
- }
- case STATUS_CASE_PROTOCOL_ERROR: {
- EXPECT_CALL(service, HasSyncSetupCompleted())
- .WillOnce(Return(true));
- browser_sync::SyncProtocolError protocolError;
- protocolError.action = browser_sync::STOP_AND_RESTART_SYNC;
- browser_sync::SyncBackendHost::Status status;
- status.summary = browser_sync::SyncBackendHost::Status::READY;
- status.sync_protocol_error = protocolError;
- EXPECT_CALL(service, QueryDetailedSyncStatus())
- .WillOnce(Return(status));
- *auth_error = new GoogleServiceAuthError(GoogleServiceAuthError::NONE);
- EXPECT_CALL(service, GetAuthError())
- .WillOnce(ReturnRef(**auth_error));
- EXPECT_CALL(service, UIShouldDepictAuthInProgress())
- .WillOnce(Return(false));
- return;
- }
- case STATUS_CASE_PASSPHRASE_ERROR: {
- EXPECT_CALL(service, HasSyncSetupCompleted())
- .WillOnce(Return(true));
- browser_sync::SyncBackendHost::Status status;
- status.summary = browser_sync::SyncBackendHost::Status::READY;
- EXPECT_CALL(service, QueryDetailedSyncStatus())
- .WillOnce(Return(status));
- *auth_error = new GoogleServiceAuthError(GoogleServiceAuthError::NONE);
- EXPECT_CALL(service, GetAuthError())
- .WillOnce(ReturnRef(**auth_error));
- EXPECT_CALL(service, GetAuthenticatedUsername())
- .WillOnce(Return(ASCIIToUTF16("example@example.com")));
- EXPECT_CALL(service, UIShouldDepictAuthInProgress())
- .WillOnce(Return(false));
- EXPECT_CALL(service, IsPassphraseRequired())
- .WillOnce(Return(true));
- EXPECT_CALL(service, IsPassphraseRequiredForDecryption())
- .WillOnce(Return(true));
- return;
- }
- case STATUS_CASE_SYNCED: {
- EXPECT_CALL(service, HasSyncSetupCompleted())
- .WillOnce(Return(true));
- browser_sync::SyncBackendHost::Status status;
- status.summary = browser_sync::SyncBackendHost::Status::READY;
- EXPECT_CALL(service, QueryDetailedSyncStatus())
- .WillOnce(Return(status));
- *auth_error = new GoogleServiceAuthError(GoogleServiceAuthError::NONE);
- EXPECT_CALL(service, GetAuthError())
- .WillOnce(ReturnRef(**auth_error));
- EXPECT_CALL(service, GetAuthenticatedUsername())
- .WillOnce(Return(ASCIIToUTF16("example@example.com")));
- EXPECT_CALL(service, UIShouldDepictAuthInProgress())
- .WillOnce(Return(false));
- EXPECT_CALL(service, IsPassphraseRequired())
- .WillOnce(Return(false));
- return;
- }
- default:
- NOTREACHED();
- }
-}
-
-// This test ensures that a each distinctive ProfileSyncService statuses
-// will return a unique combination of status and link messages from
-// GetStatusLabels().
-TEST(SyncUIUtilTest, DistinctCasesReportUniqueMessageSets) {
- ProfileSyncServiceMock service;
-
- std::set<string16> messages;
- for (int idx = 0; idx != NUMBER_OF_STATUS_CASES; idx++) {
- ProfileSyncServiceMock service;
- GoogleServiceAuthError* auth_error = NULL;
- GetDistinctCase(service, &auth_error, idx);
- string16 status_label;
- string16 link_label;
- sync_ui_util::GetStatusLabels(&service,
- sync_ui_util::WITH_HTML,
- &status_label,
- &link_label);
- // If the status and link message combination is already present in the set
- // of messages already seen, this is a duplicate rather than a unique
- // message, and the test has failed.
- string16 combined_label =
- status_label + string16(ASCIIToUTF16("#")) + link_label;
- EXPECT_TRUE(messages.find(combined_label) == messages.end());
- messages.insert(combined_label);
- if (auth_error)
- delete auth_error;
- }
-}
-
-// This test ensures that the html_links parameter on GetStatusLabels() is
-// honored.
-TEST(SyncUIUtilTest, HtmlNotIncludedInStatusIfNotRequested) {
- ProfileSyncServiceMock service;
- for (int idx = 0; idx != NUMBER_OF_STATUS_CASES; idx++) {
- ProfileSyncServiceMock service;
- GoogleServiceAuthError* auth_error = NULL;
- GetDistinctCase(service, &auth_error, idx);
- string16 status_label;
- string16 link_label;
- sync_ui_util::GetStatusLabels(&service,
- sync_ui_util::PLAIN_TEXT,
- &status_label,
- &link_label);
- // Ensures a search for string 'href' (found in links, not a string to be
- // found in an English language message) fails when links are excluded from
- // the status label.
- EXPECT_EQ(status_label.find(string16(ASCIIToUTF16("href"))),
- string16::npos);
- if (auth_error) {
- delete auth_error;
- }
- }
-}
« no previous file with comments | « chrome/browser/sync/sync_ui_util.cc ('k') | chrome/browser/ui/webui/options/personal_options_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698