| Index: chrome/browser/sync/internal_api/js_sync_manager_observer_unittest.cc
|
| diff --git a/chrome/browser/sync/internal_api/js_sync_manager_observer_unittest.cc b/chrome/browser/sync/internal_api/js_sync_manager_observer_unittest.cc
|
| deleted file mode 100644
|
| index ac65e571392184a6d18dace6e61756d3b748d9bc..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/sync/internal_api/js_sync_manager_observer_unittest.cc
|
| +++ /dev/null
|
| @@ -1,221 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "chrome/browser/sync/internal_api/js_sync_manager_observer.h"
|
| -
|
| -#include "base/basictypes.h"
|
| -#include "base/location.h"
|
| -#include "base/message_loop.h"
|
| -#include "base/values.h"
|
| -#include "sync/js/js_event_details.h"
|
| -#include "sync/js/js_test_util.h"
|
| -#include "sync/protocol/sync_protocol_error.h"
|
| -#include "sync/sessions/session_state.h"
|
| -#include "sync/syncable/model_type.h"
|
| -#include "sync/util/weak_handle.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -namespace browser_sync {
|
| -namespace {
|
| -
|
| -using ::testing::InSequence;
|
| -using ::testing::StrictMock;
|
| -
|
| -class JsSyncManagerObserverTest : public testing::Test {
|
| - protected:
|
| - JsSyncManagerObserverTest() {
|
| - js_sync_manager_observer_.SetJsEventHandler(
|
| - mock_js_event_handler_.AsWeakHandle());
|
| - }
|
| -
|
| - private:
|
| - // This must be destroyed after the member variables below in order
|
| - // for WeakHandles to be destroyed properly.
|
| - MessageLoop message_loop_;
|
| -
|
| - protected:
|
| - StrictMock<MockJsEventHandler> mock_js_event_handler_;
|
| - JsSyncManagerObserver js_sync_manager_observer_;
|
| -
|
| - void PumpLoop() {
|
| - message_loop_.RunAllPending();
|
| - }
|
| -};
|
| -
|
| -TEST_F(JsSyncManagerObserverTest, NoArgNotifiations) {
|
| - InSequence dummy;
|
| -
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onInitializationComplete",
|
| - HasDetails(JsEventDetails())));
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onStopSyncingPermanently",
|
| - HasDetails(JsEventDetails())));
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onClearServerDataSucceeded",
|
| - HasDetails(JsEventDetails())));
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onClearServerDataFailed",
|
| - HasDetails(JsEventDetails())));
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onEncryptionComplete",
|
| - HasDetails(JsEventDetails())));
|
| -
|
| - js_sync_manager_observer_.OnInitializationComplete(WeakHandle<JsBackend>(),
|
| - true);
|
| - js_sync_manager_observer_.OnStopSyncingPermanently();
|
| - js_sync_manager_observer_.OnClearServerDataSucceeded();
|
| - js_sync_manager_observer_.OnClearServerDataFailed();
|
| - js_sync_manager_observer_.OnEncryptionComplete();
|
| - PumpLoop();
|
| -}
|
| -
|
| -TEST_F(JsSyncManagerObserverTest, OnSyncCycleCompleted) {
|
| - std::string download_progress_markers[syncable::MODEL_TYPE_COUNT];
|
| - sessions::SyncSessionSnapshot snapshot(sessions::SyncerStatus(),
|
| - sessions::ErrorCounters(),
|
| - 100,
|
| - false,
|
| - syncable::ModelTypeSet(),
|
| - download_progress_markers,
|
| - false,
|
| - true,
|
| - 100,
|
| - 8,
|
| - 5,
|
| - 2,
|
| - 7,
|
| - false,
|
| - sessions::SyncSourceInfo(),
|
| - false,
|
| - 0,
|
| - base::Time::Now(),
|
| - false);
|
| - DictionaryValue expected_details;
|
| - expected_details.Set("snapshot", snapshot.ToValue());
|
| -
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onSyncCycleCompleted",
|
| - HasDetailsAsDictionary(expected_details)));
|
| -
|
| - js_sync_manager_observer_.OnSyncCycleCompleted(&snapshot);
|
| - PumpLoop();
|
| -}
|
| -
|
| -TEST_F(JsSyncManagerObserverTest, OnActionableError) {
|
| - browser_sync::SyncProtocolError sync_error;
|
| - sync_error.action = browser_sync::CLEAR_USER_DATA_AND_RESYNC;
|
| - sync_error.error_type = browser_sync::TRANSIENT_ERROR;
|
| - DictionaryValue expected_details;
|
| - expected_details.Set("syncError", sync_error.ToValue());
|
| -
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onActionableError",
|
| - HasDetailsAsDictionary(expected_details)));
|
| -
|
| - js_sync_manager_observer_.OnActionableError(sync_error);
|
| - PumpLoop();
|
| -}
|
| -
|
| -
|
| -TEST_F(JsSyncManagerObserverTest, OnConnectionStatusChange) {
|
| - const sync_api::ConnectionStatus kStatus =
|
| - sync_api::CONNECTION_AUTH_ERROR;
|
| - DictionaryValue expected_details;
|
| - expected_details.SetString("status",
|
| - sync_api::ConnectionStatusToString(kStatus));
|
| -
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onConnectionStatusChange",
|
| - HasDetailsAsDictionary(expected_details)));
|
| -
|
| - js_sync_manager_observer_.OnConnectionStatusChange(kStatus);
|
| - PumpLoop();
|
| -}
|
| -
|
| -TEST_F(JsSyncManagerObserverTest, OnPassphraseRequired) {
|
| - InSequence dummy;
|
| -
|
| - DictionaryValue reason_passphrase_not_required_details;
|
| - DictionaryValue reason_encryption_details;
|
| - DictionaryValue reason_decryption_details;
|
| -
|
| - reason_passphrase_not_required_details.SetString(
|
| - "reason",
|
| - sync_api::PassphraseRequiredReasonToString(
|
| - sync_api::REASON_PASSPHRASE_NOT_REQUIRED));
|
| - reason_encryption_details.SetString(
|
| - "reason",
|
| - sync_api::PassphraseRequiredReasonToString(sync_api::REASON_ENCRYPTION));
|
| - reason_decryption_details.SetString(
|
| - "reason",
|
| - sync_api::PassphraseRequiredReasonToString(sync_api::REASON_DECRYPTION));
|
| -
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onPassphraseRequired",
|
| - HasDetailsAsDictionary(
|
| - reason_passphrase_not_required_details)));
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onPassphraseRequired",
|
| - HasDetailsAsDictionary(reason_encryption_details)));
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onPassphraseRequired",
|
| - HasDetailsAsDictionary(reason_decryption_details)));
|
| -
|
| - js_sync_manager_observer_.OnPassphraseRequired(
|
| - sync_api::REASON_PASSPHRASE_NOT_REQUIRED,
|
| - sync_pb::EncryptedData());
|
| - js_sync_manager_observer_.OnPassphraseRequired(sync_api::REASON_ENCRYPTION,
|
| - sync_pb::EncryptedData());
|
| - js_sync_manager_observer_.OnPassphraseRequired(sync_api::REASON_DECRYPTION,
|
| - sync_pb::EncryptedData());
|
| - PumpLoop();
|
| -}
|
| -
|
| -TEST_F(JsSyncManagerObserverTest, SensitiveNotifiations) {
|
| - DictionaryValue redacted_token_details;
|
| - redacted_token_details.SetString("token", "<redacted>");
|
| - DictionaryValue redacted_bootstrap_token_details;
|
| - redacted_bootstrap_token_details.SetString("bootstrapToken", "<redacted>");
|
| -
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onUpdatedToken",
|
| - HasDetailsAsDictionary(redacted_token_details)));
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent(
|
| - "OnBootstrapTokenUpdated",
|
| - HasDetailsAsDictionary(redacted_bootstrap_token_details)));
|
| -
|
| - js_sync_manager_observer_.OnUpdatedToken("sensitive_token");
|
| - js_sync_manager_observer_.OnBootstrapTokenUpdated("sensitive_token");
|
| - PumpLoop();
|
| -}
|
| -
|
| -TEST_F(JsSyncManagerObserverTest, OnEncryptedTypesChanged) {
|
| - DictionaryValue expected_details;
|
| - ListValue* encrypted_type_values = new ListValue();
|
| - const bool encrypt_everything = false;
|
| - expected_details.Set("encryptedTypes", encrypted_type_values);
|
| - expected_details.SetBoolean("encryptEverything", encrypt_everything);
|
| - syncable::ModelTypeSet encrypted_types;
|
| -
|
| - for (int i = syncable::FIRST_REAL_MODEL_TYPE;
|
| - i < syncable::MODEL_TYPE_COUNT; ++i) {
|
| - syncable::ModelType type = syncable::ModelTypeFromInt(i);
|
| - encrypted_types.Put(type);
|
| - encrypted_type_values->Append(Value::CreateStringValue(
|
| - syncable::ModelTypeToString(type)));
|
| - }
|
| -
|
| - EXPECT_CALL(mock_js_event_handler_,
|
| - HandleJsEvent("onEncryptedTypesChanged",
|
| - HasDetailsAsDictionary(expected_details)));
|
| -
|
| - js_sync_manager_observer_.OnEncryptedTypesChanged(
|
| - encrypted_types, encrypt_everything);
|
| - PumpLoop();
|
| -}
|
| -
|
| -} // namespace
|
| -} // namespace browser_sync
|
|
|