summaryrefslogtreecommitdiffstats
path: root/chrome/test
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/test')
-rw-r--r--chrome/test/sync/engine/syncer_command_test.h3
-rw-r--r--chrome/test/sync/sessions/test_scoped_session_event_listener.h36
2 files changed, 38 insertions, 1 deletions
diff --git a/chrome/test/sync/engine/syncer_command_test.h b/chrome/test/sync/engine/syncer_command_test.h
index 02ea57d..faeb4b5 100644
--- a/chrome/test/sync/engine/syncer_command_test.h
+++ b/chrome/test/sync/engine/syncer_command_test.h
@@ -94,7 +94,8 @@ class SyncerCommandTestWithParam : public testing::TestWithParam<T>,
void ResetContext() {
context_.reset(new sessions::SyncSessionContext(
- mock_server_.get(), syncdb_->manager(), registrar()));
+ mock_server_.get(), syncdb_->manager(), registrar(),
+ std::vector<SyncEngineEventListener*>()));
context_->set_account_name(syncdb_->name());
ClearSession();
}
diff --git a/chrome/test/sync/sessions/test_scoped_session_event_listener.h b/chrome/test/sync/sessions/test_scoped_session_event_listener.h
new file mode 100644
index 0000000..9ede09b
--- /dev/null
+++ b/chrome/test/sync/sessions/test_scoped_session_event_listener.h
@@ -0,0 +1,36 @@
+// Copyright (c) 2010 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.
+
+#ifndef CHROME_TEST_SYNC_SESSIONS_TEST_SCOPED_SESSION_EVENT_LISTENER_H_
+#define CHROME_TEST_SYNC_SESSIONS_TEST_SCOPED_SESSION_EVENT_LISTENER_H_
+#pragma once
+
+#include "chrome/browser/sync/sessions/sync_session_context.h"
+
+namespace browser_sync {
+namespace sessions {
+
+// Installs a SyncEventListener to a given session context for the lifetime of
+// the TestScopedSessionEventListener.
+class TestScopedSessionEventListener {
+ public:
+ TestScopedSessionEventListener(
+ SyncSessionContext* context,
+ SyncEngineEventListener* listener)
+ : context_(context), listener_(listener) {
+ context->listeners_.AddObserver(listener);
+ }
+ ~TestScopedSessionEventListener() {
+ context_->listeners_.RemoveObserver(listener_);
+ }
+ private:
+ SyncSessionContext* context_;
+ SyncEngineEventListener* listener_;
+ DISALLOW_COPY_AND_ASSIGN(TestScopedSessionEventListener);
+};
+
+} // namespace sessions
+} // namespace browser_sync
+
+#endif // CHROME_TEST_SYNC_SESSIONS_TEST_SCOPED_SESSION_EVENT_LISTENER_H_