| Index: chrome/browser/prefs/incognito_mode_prefs_unittest.cc
|
| diff --git a/chrome/browser/prefs/incognito_mode_prefs_unittest.cc b/chrome/browser/prefs/incognito_mode_prefs_unittest.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..32419098e001126c571e43346f86460389ddb311
|
| --- /dev/null
|
| +++ b/chrome/browser/prefs/incognito_mode_prefs_unittest.cc
|
| @@ -0,0 +1,67 @@
|
| +// Copyright (c) 2011 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/prefs/incognito_mode_prefs.h"
|
| +
|
| +#include "chrome/common/pref_names.h"
|
| +#include "chrome/test/testing_pref_service.h"
|
| +#include "testing/gtest/include/gtest/gtest.h"
|
| +
|
| +class IncognitoModePrefsTest : public testing::Test {
|
| + protected:
|
| + virtual void SetUp() {
|
| + prefs_.reset(new TestingPrefService());
|
| + IncognitoModePrefs::RegisterUserPrefs(prefs_.get());
|
| + }
|
| +
|
| + scoped_ptr<TestingPrefService> prefs_;
|
| +};
|
| +
|
| +TEST_F(IncognitoModePrefsTest, IntToAvailability) {
|
| + ASSERT_EQ(0, IncognitoModePrefs::ENABLED);
|
| + ASSERT_EQ(1, IncognitoModePrefs::DISABLED);
|
| + ASSERT_EQ(2, IncognitoModePrefs::FORCED);
|
| +
|
| + IncognitoModePrefs::Availability incognito;
|
| + EXPECT_TRUE(IncognitoModePrefs::IntToAvailability(0, &incognito));
|
| + EXPECT_EQ(IncognitoModePrefs::ENABLED, incognito);
|
| + EXPECT_TRUE(IncognitoModePrefs::IntToAvailability(1, &incognito));
|
| + EXPECT_EQ(IncognitoModePrefs::DISABLED, incognito);
|
| + EXPECT_TRUE(IncognitoModePrefs::IntToAvailability(2, &incognito));
|
| + EXPECT_EQ(IncognitoModePrefs::FORCED, incognito);
|
| +
|
| + EXPECT_FALSE(IncognitoModePrefs::IntToAvailability(10, &incognito));
|
| + EXPECT_EQ(IncognitoModePrefs::ENABLED, incognito);
|
| + EXPECT_FALSE(IncognitoModePrefs::IntToAvailability(-1, &incognito));
|
| + EXPECT_EQ(IncognitoModePrefs::ENABLED, incognito);
|
| +}
|
| +
|
| +TEST_F(IncognitoModePrefsTest, GetAvailability) {
|
| + prefs_->SetUserPref(prefs::kIncognitoModeAvailability,
|
| + Value::CreateIntegerValue(IncognitoModePrefs::ENABLED));
|
| + EXPECT_EQ(IncognitoModePrefs::ENABLED,
|
| + IncognitoModePrefs::GetAvailability(prefs_.get()));
|
| +
|
| + prefs_->SetUserPref(prefs::kIncognitoModeAvailability,
|
| + Value::CreateIntegerValue(IncognitoModePrefs::DISABLED));
|
| + EXPECT_EQ(IncognitoModePrefs::DISABLED,
|
| + IncognitoModePrefs::GetAvailability(prefs_.get()));
|
| +
|
| + prefs_->SetUserPref(prefs::kIncognitoModeAvailability,
|
| + Value::CreateIntegerValue(IncognitoModePrefs::FORCED));
|
| + EXPECT_EQ(IncognitoModePrefs::FORCED,
|
| + IncognitoModePrefs::GetAvailability(prefs_.get()));
|
| +}
|
| +
|
| +typedef IncognitoModePrefsTest IncognitoModePrefsDeathTest;
|
| +
|
| +TEST_F(IncognitoModePrefsDeathTest, GetAvailabilityBadValue) {
|
| + prefs_->SetUserPref(prefs::kIncognitoModeAvailability,
|
| + Value::CreateIntegerValue(-1));
|
| + EXPECT_DEBUG_DEATH({
|
| + IncognitoModePrefs::Availability availability =
|
| + IncognitoModePrefs::GetAvailability(prefs_.get());
|
| + EXPECT_EQ(IncognitoModePrefs::ENABLED, availability);
|
| + }, "");
|
| +}
|
|
|