Skip to content

Commit

Permalink
Added unit test for ServiceProcessPrefs
Browse files Browse the repository at this point in the history
Just added a unit test to ServiceProcessPrefs.
TEST=ServiceProcessPrefsTest.RetrievePrefs


Review URL: https://chromiumcodereview.appspot.com/10696181

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146400 0039d316-1c4b-4281-b951-d872f2087c98
  • Loading branch information
mniknami@chromium.org committed Jul 12, 2012
1 parent 06186a3 commit 1d21932
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 0 deletions.
1 change: 1 addition & 0 deletions chrome/chrome_tests.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -2009,6 +2009,7 @@
'service/cloud_print/cloud_print_token_store_unittest.cc',
'service/cloud_print/cloud_print_url_fetcher_unittest.cc',
'service/service_process_unittest.cc',
'service/service_process_prefs_unittest.cc',
'test/base/browser_with_test_window_test.cc',
'test/base/browser_with_test_window_test.h',
'test/base/chrome_render_view_test.cc',
Expand Down
50 changes: 50 additions & 0 deletions chrome/service/service_process_prefs_unittest.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
// 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 <string>

#include "base/message_loop.h"
#include "base/message_loop_proxy.h"
#include "base/scoped_temp_dir.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");
}

0 comments on commit 1d21932

Please sign in to comment.