Index: chrome/test/base/scoped_testing_local_state.h |
diff --git a/chrome/test/base/scoped_testing_local_state.h b/chrome/test/base/scoped_testing_local_state.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7c1cddaf5d9ae70fe3d21a765588313c66b6a5b7 |
--- /dev/null |
+++ b/chrome/test/base/scoped_testing_local_state.h |
@@ -0,0 +1,31 @@ |
+// Copyright (c) 2013 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_BASE_SCOPED_TESTING_LOCAL_STATE_H_ |
+#define CHROME_TEST_BASE_SCOPED_TESTING_LOCAL_STATE_H_ |
+ |
+#include "base/basictypes.h" |
+#include "chrome/test/base/testing_pref_service.h" |
+ |
+class TestingBrowserProcess; |
+ |
+// Helper class to temporarily set up a |local_state| in the global |
+// TestingBrowserProcess (for most unit tests it's NULL). |
+class ScopedTestingLocalState { |
+ public: |
+ explicit ScopedTestingLocalState(TestingBrowserProcess* browser_process); |
+ ~ScopedTestingLocalState(); |
+ |
+ TestingPrefServiceSimple* Get() { |
+ return &local_state_; |
+ } |
+ |
+ private: |
+ TestingBrowserProcess* browser_process_; |
+ TestingPrefServiceSimple local_state_; |
+ |
+ DISALLOW_COPY_AND_ASSIGN(ScopedTestingLocalState); |
+}; |
+ |
+#endif // CHROME_TEST_BASE_SCOPED_TESTING_LOCAL_STATE_H_ |