 Chromium Code Reviews
 Chromium Code Reviews Issue 10696181:
  Added unit test for ServiceProcessPrefs  (Closed) 
  Base URL: http://git.chromium.org/chromium/src.git@master
    
  
    Issue 10696181:
  Added unit test for ServiceProcessPrefs  (Closed) 
  Base URL: http://git.chromium.org/chromium/src.git@master| Index: chrome/service/service_process_prefs_unittest.cc | 
| diff --git a/chrome/service/service_process_prefs_unittest.cc b/chrome/service/service_process_prefs_unittest.cc | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..edfac5e6968b4b415c1eb91c10dd882f2b8a72a5 | 
| --- /dev/null | 
| +++ b/chrome/service/service_process_prefs_unittest.cc | 
| @@ -0,0 +1,51 @@ | 
| +// 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/service/service_process.h" | 
| + | 
| +#include "base/file_util.h" | 
| 
Albert Bodenhamer
2012/07/11 23:26:52
Do you need file_util or path_service? Or chrome_p
 | 
| +#include "base/path_service.h" | 
| +#include "base/scoped_temp_dir.h" | 
| +#include "chrome/common/chrome_paths.h" | 
| +#include "chrome/service/service_process_prefs.h" | 
| +#include "testing/gmock/include/gmock/gmock.h" | 
| +#include "testing/gtest/include/gtest/gtest.h" | 
| + | 
| +class ServiceProcessPrefsTest : public testing::Test { | 
| + protected: | 
| + virtual void SetUp() { | 
| + message_loop_proxy_ = base::MessageLoopProxy::current(); | 
| + | 
| + ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); | 
| + | 
| + prefs_.reset(new ServiceProcessPrefs( | 
| + temp_dir_.path().AppendASCII("service_process_prefs.txt"), | 
| + message_loop_proxy_.get())); | 
| + } | 
| + | 
| + // The path to temporary directory used to contain the test operations. | 
| + ScopedTempDir temp_dir_; | 
| + // A message loop that we can use as the file thread message loop. | 
| + MessageLoop message_loop_; | 
| + scoped_refptr<base::MessageLoopProxy> message_loop_proxy_; | 
| + scoped_ptr<ServiceProcessPrefs> prefs_; | 
| +}; | 
| + | 
| +// Test ability to retrieve prefs | 
| +TEST_F(ServiceProcessPrefsTest, RetrievePrefs) { | 
| + prefs_->SetBoolean("testb", true); | 
| + prefs_->SetString("tests", "testvalue"); | 
| + prefs_->WritePrefs(); | 
| + MessageLoop::current()->RunAllPending(); | 
| + prefs_->SetBoolean("testb", false); // overwrite | 
| + prefs_->SetString("tests", ""); // overwrite | 
| + prefs_->ReadPrefs(); | 
| + bool testb; | 
| + prefs_->GetBoolean("testb", &testb); | 
| + EXPECT_EQ(testb, true); | 
| + std::string tests; | 
| + prefs_->GetString("tests", &tests); | 
| + EXPECT_EQ(tests, "testvalue"); | 
| +} | 
| + |