Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(700)

Unified Diff: chrome/browser/extensions/apps_promo_unittest.cc

Issue 10827102: Delete dead AppsPromo code (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: . Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/extensions/apps_promo.cc ('k') | chrome/browser/extensions/extension_service.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/extensions/apps_promo_unittest.cc
diff --git a/chrome/browser/extensions/apps_promo_unittest.cc b/chrome/browser/extensions/apps_promo_unittest.cc
deleted file mode 100644
index fab605e1d98d2a6a537469ccf5475848693e9e1f..0000000000000000000000000000000000000000
--- a/chrome/browser/extensions/apps_promo_unittest.cc
+++ /dev/null
@@ -1,223 +0,0 @@
-// 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 "base/logging.h"
-#include "chrome/browser/browser_process.h"
-#include "chrome/browser/extensions/apps_promo.h"
-#include "chrome/browser/prefs/browser_prefs.h"
-#include "chrome/common/extensions/extension.h"
-#include "chrome/common/pref_names.h"
-#include "chrome/test/base/testing_browser_process.h"
-#include "chrome/test/base/testing_pref_service.h"
-#include "googleurl/src/gurl.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace {
-
-const char kPromoId[] = "23123123";
-const char kPromoHeader[] = "Get great apps!";
-const char kPromoButton[] = "Click for apps!";
-const char kPromoLink[] = "http://apps.com";
-const char kPromoLogo[] = "chrome://theme/IDR_WEBSTORE_ICON";
-const char kPromoExpire[] = "No thanks.";
-const int kPromoUserGroup =
- AppsPromo::USERS_NEW | AppsPromo::USERS_EXISTING;
-
-} // namespace
-
-class ExtensionAppsPromo : public testing::Test {
- public:
- TestingPrefService* prefs() { return &prefs_; }
- AppsPromo* apps_promo() { return &apps_promo_; }
-
- protected:
- explicit ExtensionAppsPromo();
-
- // testing::Test
- virtual void SetUp();
-
- private:
- TestingPrefService prefs_;
- ScopedTestingLocalState local_state_;
- AppsPromo apps_promo_;
-};
-
-ExtensionAppsPromo::ExtensionAppsPromo()
- : local_state_(static_cast<TestingBrowserProcess*>(g_browser_process)),
- apps_promo_(&prefs_) {
-}
-
-void ExtensionAppsPromo::SetUp() {
- chrome::RegisterUserPrefs(&prefs_);
-}
-
-// TODO(dpolukhin): On Chrome OS all apps are installed via external extensions,
-// and the web store promo is never shown.
-#if !defined(OS_CHROMEOS)
-
-TEST_F(ExtensionAppsPromo, HappyPath) {
- const extensions::ExtensionIdSet& default_app_ids =
- apps_promo()->old_default_apps();
-
- EXPECT_GT(default_app_ids.size(), 0u);
-
- // The promo counter should default to the max, since we only use the counter
- // if they were installed from older versions of Chrome.
- EXPECT_EQ(AppsPromo::kDefaultAppsCounterMax + 1,
- apps_promo()->GetPromoCounter());
-
- // The app launcher and promo should not be shown if there are no extensions
- // installed and no promo is set.
- extensions::ExtensionIdSet installed_ids;
- bool promo_just_expired = false;
- EXPECT_FALSE(AppsPromo::IsPromoSupportedForLocale());
- EXPECT_FALSE(apps_promo()->ShouldShowAppLauncher(installed_ids));
- EXPECT_FALSE(apps_promo()->ShouldShowPromo(installed_ids,
- &promo_just_expired));
- EXPECT_FALSE(promo_just_expired);
-
- // Make sure the web store can be supported even when the promo is not active.
- AppsPromo::SetWebStoreSupportedForLocale(true);
- EXPECT_FALSE(AppsPromo::IsPromoSupportedForLocale());
- EXPECT_TRUE(apps_promo()->ShouldShowAppLauncher(installed_ids));
- EXPECT_FALSE(apps_promo()->ShouldShowPromo(installed_ids,
- &promo_just_expired));
-
- // We should be able to disable the web store as well.
- AppsPromo::SetWebStoreSupportedForLocale(false);
- EXPECT_FALSE(AppsPromo::IsPromoSupportedForLocale());
- EXPECT_FALSE(apps_promo()->ShouldShowAppLauncher(installed_ids));
- EXPECT_FALSE(apps_promo()->ShouldShowPromo(installed_ids,
- &promo_just_expired));
-
- // Once the promo is set, we show both the promo and app launcher.
- AppsPromo::PromoData promo_data(kPromoId, kPromoHeader, kPromoButton,
- GURL(kPromoLink), kPromoExpire, GURL(""),
- kPromoUserGroup);
- AppsPromo::SetPromo(promo_data);
- AppsPromo::SetWebStoreSupportedForLocale(true);
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
- EXPECT_TRUE(apps_promo()->ShouldShowAppLauncher(installed_ids));
- EXPECT_TRUE(apps_promo()->ShouldShowPromo(installed_ids,
- &promo_just_expired));
- EXPECT_FALSE(promo_just_expired);
-
- // Now install an app and the promo should not be shown.
- installed_ids.insert(*(default_app_ids.begin()));
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
- EXPECT_TRUE(apps_promo()->ShouldShowAppLauncher(installed_ids));
- EXPECT_FALSE(apps_promo()->ShouldShowPromo(installed_ids,
- &promo_just_expired));
- EXPECT_FALSE(promo_just_expired);
-
- // Even if the user installs the exact set of default apps, we still don't
- // show the promo.
- installed_ids = default_app_ids;
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
- EXPECT_TRUE(apps_promo()->ShouldShowAppLauncher(installed_ids));
- EXPECT_FALSE(apps_promo()->ShouldShowPromo(installed_ids,
- &promo_just_expired));
- EXPECT_FALSE(promo_just_expired);
-
- // If the user then uninstalls the apps, the app launcher should remain
- // and the promo should return.
- installed_ids.clear();
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
- EXPECT_TRUE(apps_promo()->ShouldShowAppLauncher(installed_ids));
- EXPECT_TRUE(apps_promo()->ShouldShowPromo(installed_ids,
- &promo_just_expired));
- EXPECT_FALSE(promo_just_expired);
-}
-
-// Tests get and set of promo content.
-TEST_F(ExtensionAppsPromo, PromoPrefs) {
- // Store a promo....
- AppsPromo::PromoData promo_data(kPromoId, kPromoHeader, kPromoButton,
- GURL(kPromoLink), kPromoExpire, GURL(""),
- kPromoUserGroup);
- AppsPromo::SetPromo(promo_data);
-
- // ... then make sure AppsPromo can access it.
- AppsPromo::PromoData actual_data = AppsPromo::GetPromo();
- EXPECT_EQ(kPromoId, actual_data.id);
- EXPECT_EQ(kPromoHeader, actual_data.header);
- EXPECT_EQ(kPromoButton, actual_data.button);
- EXPECT_EQ(GURL(kPromoLink), actual_data.link);
- EXPECT_EQ(kPromoExpire, actual_data.expire);
- EXPECT_EQ(kPromoUserGroup, actual_data.user_group);
- // The promo logo should be the default value.
- EXPECT_EQ(GURL(kPromoLogo), actual_data.logo);
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
-
- AppsPromo::ClearPromo();
- actual_data = AppsPromo::GetPromo();
- EXPECT_EQ("", actual_data.id);
- EXPECT_EQ("", actual_data.header);
- EXPECT_EQ("", actual_data.button);
- EXPECT_EQ(GURL(""), actual_data.link);
- EXPECT_EQ("", actual_data.expire);
- EXPECT_EQ(AppsPromo::USERS_NONE, actual_data.user_group);
- EXPECT_EQ(GURL(kPromoLogo), actual_data.logo);
- EXPECT_FALSE(AppsPromo::IsPromoSupportedForLocale());
-
- // Make sure we can set the logo to something other than the default.
- std::string promo_logo = "data:image/png;base64,iVBORw0kGgoAAAN";
- promo_data.logo = GURL(promo_logo);
- AppsPromo::SetPromo(promo_data);
- EXPECT_EQ(GURL(promo_logo), AppsPromo::GetPromo().logo);
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
-
- // Verify that the default is returned instead of HTTP or HTTPS URLs.
- promo_data.logo = GURL("http://google.com/logo.png");
- AppsPromo::SetPromo(promo_data);
- EXPECT_EQ(GURL(kPromoLogo), AppsPromo::GetPromo().logo);
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
-
- promo_data.logo = GURL("https://google.com/logo.png");
- AppsPromo::SetPromo(promo_data);
- EXPECT_EQ(GURL(kPromoLogo), AppsPromo::GetPromo().logo);
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
-
- // Try an invalid URL.
- promo_data.logo = GURL("sldkfjlsdn");
- AppsPromo::SetPromo(promo_data);
- EXPECT_EQ(GURL(kPromoLogo), AppsPromo::GetPromo().logo);
- EXPECT_TRUE(AppsPromo::IsPromoSupportedForLocale());
-
- // Try the web store supported flag.
- EXPECT_FALSE(AppsPromo::IsWebStoreSupportedForLocale());
- AppsPromo::SetWebStoreSupportedForLocale(true);
- EXPECT_TRUE(AppsPromo::IsWebStoreSupportedForLocale());
- AppsPromo::SetWebStoreSupportedForLocale(false);
- EXPECT_FALSE(AppsPromo::IsWebStoreSupportedForLocale());
-
- // Try setting and getting the source logo URL.
- GURL expected_source("https://www.google.com/images/test.png");
- AppsPromo::SetSourcePromoLogoURL(expected_source);
- EXPECT_EQ(expected_source, AppsPromo::GetSourcePromoLogoURL());
-}
-
-TEST_F(ExtensionAppsPromo, PromoHiddenByPref) {
- prefs()->SetInteger(prefs::kAppsPromoCounter, 0);
- prefs()->SetBoolean(prefs::kDefaultAppsInstalled, true);
-
- // When the "hide" pref is false, the promo should still appear.
- prefs()->SetBoolean(prefs::kNtpHideWebStorePromo, false);
- AppsPromo::PromoData promo_data(
- kPromoId, kPromoHeader, kPromoButton, GURL(kPromoLink), kPromoExpire,
- GURL(""), AppsPromo::USERS_NEW | AppsPromo::USERS_EXISTING);
- AppsPromo::SetPromo(promo_data);
- bool just_expired;
- bool show_promo = apps_promo()->ShouldShowPromo(
- apps_promo()->old_default_apps(), &just_expired);
- EXPECT_TRUE(show_promo);
-
- // When the "hide" pref is true, the promo should NOT appear.
- prefs()->SetBoolean(prefs::kNtpHideWebStorePromo, true);
- show_promo = apps_promo()->ShouldShowPromo(
- apps_promo()->old_default_apps(), &just_expired);
- EXPECT_FALSE(show_promo);
-}
-
-#endif // OS_CHROMEOS
« no previous file with comments | « chrome/browser/extensions/apps_promo.cc ('k') | chrome/browser/extensions/extension_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698