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

Unified Diff: chrome/browser/background/background_application_list_model_unittest.cc

Issue 1018643003: Removing chrome.pushMessaging API (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Updates to documentation per kalman's comments Created 5 years, 9 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
Index: chrome/browser/background/background_application_list_model_unittest.cc
diff --git a/chrome/browser/background/background_application_list_model_unittest.cc b/chrome/browser/background/background_application_list_model_unittest.cc
index cac265f836ad7f9f3f6a0a550adfb3ce8fd301c3..b4bc0ccbade4a645c25875e21b41872d99da0df7 100644
--- a/chrome/browser/background/background_application_list_model_unittest.cc
+++ b/chrome/browser/background/background_application_list_model_unittest.cc
@@ -69,15 +69,11 @@ enum PushMessagingOption {
};
// Returns a barebones test Extension object with the specified |name|. The
-// returned extension will include background permission iff
-// |background_permission| is true and pushMessaging permission if requested
-// by |push_messaging| value. Also the extension may have a specific id set
-// to test the case when it has a pushMessaging permission but is not
-// considered a background app based on a whitelist.
-static scoped_refptr<Extension> CreateExtensionBase(
+// returned extension will include background permission if
+// |background_permission| is true.
+static scoped_refptr<Extension> CreateExtension(
const std::string& name,
- bool background_permission,
- PushMessagingOption push_messaging) {
+ bool background_permission) {
base::DictionaryValue manifest;
manifest.SetString(extensions::manifest_keys::kVersion, "1.0.0.0");
manifest.SetString(extensions::manifest_keys::kName, name);
@@ -86,33 +82,16 @@ static scoped_refptr<Extension> CreateExtensionBase(
if (background_permission) {
permissions->Append(new base::StringValue("background"));
}
- if (push_messaging == PUSH_MESSAGING_PERMISSION ||
- push_messaging == PUSH_MESSAGING_BUT_NOT_BACKGROUND) {
- permissions->Append(new base::StringValue("pushMessaging"));
- }
std::string error;
scoped_refptr<Extension> extension;
- // There is a whitelist for extensions that have pushMessaging permission but
- // are not considered a background app. Create a test extension with a known
- // test id if needed.
- if (push_messaging == PUSH_MESSAGING_BUT_NOT_BACKGROUND) {
- extension = Extension::Create(
- bogus_file_pathname(name),
- extensions::Manifest::INVALID_LOCATION,
- manifest,
- Extension::NO_FLAGS,
- "aaaabbbbccccddddeeeeffffgggghhhh",
- &error);
- } else {
- extension = Extension::Create(
- bogus_file_pathname(name),
- extensions::Manifest::INVALID_LOCATION,
- manifest,
- Extension::NO_FLAGS,
- &error);
- }
+ extension = Extension::Create(
+ bogus_file_pathname(name),
+ extensions::Manifest::INVALID_LOCATION,
+ manifest,
+ Extension::NO_FLAGS,
+ &error);
// Cannot ASSERT_* here because that attempts an illegitimate return.
// Cannot EXPECT_NE here because that assumes non-pointers unlike EXPECT_EQ
@@ -120,11 +99,6 @@ static scoped_refptr<Extension> CreateExtensionBase(
return extension;
}
-static scoped_refptr<Extension> CreateExtension(const std::string& name,
- bool background_permission) {
- return CreateExtensionBase(name, background_permission, NO_PUSH_MESSAGING);
-}
-
namespace {
std::string GenerateUniqueExtensionName() {
static int uniqueness = 0;
@@ -254,84 +228,6 @@ TEST_F(BackgroundApplicationListModelTest, MAYBE_ExplicitTest) {
ASSERT_EQ(0U, model->size());
}
-// Verifies that pushMessaging also triggers background detection, except
-// when extension is in a whitelist.
-TEST_F(BackgroundApplicationListModelTest, PushMessagingTest) {
- InitializeAndLoadEmptyExtensionService();
- ASSERT_TRUE(service()->is_ready());
- ASSERT_TRUE(registry()->enabled_extensions().is_empty());
- scoped_ptr<BackgroundApplicationListModel> model(
- new BackgroundApplicationListModel(profile_.get()));
- ASSERT_EQ(0U, model->size());
-
- scoped_refptr<Extension> ext1 = CreateExtension("alpha", false);
- scoped_refptr<Extension> ext2 =
- CreateExtensionBase("charlie", false, PUSH_MESSAGING_BUT_NOT_BACKGROUND);
- scoped_refptr<Extension> bgapp1 =
- CreateExtensionBase("bravo", false, PUSH_MESSAGING_PERMISSION);
- scoped_refptr<Extension> bgapp2 =
- CreateExtensionBase("delta", true, PUSH_MESSAGING_PERMISSION);
- scoped_refptr<Extension> bgapp3 =
- CreateExtensionBase("echo", true, PUSH_MESSAGING_BUT_NOT_BACKGROUND);
- ASSERT_EQ(0U, registry()->enabled_extensions().size());
- ASSERT_EQ(0U, model->size());
-
- // Add alternating Extensions and Background Apps
- ASSERT_FALSE(IsBackgroundApp(*ext1.get()));
- service()->AddExtension(ext1.get());
- ASSERT_EQ(1U, registry()->enabled_extensions().size());
- ASSERT_EQ(0U, model->size());
- ASSERT_TRUE(IsBackgroundApp(*bgapp1.get()));
- service()->AddExtension(bgapp1.get());
- ASSERT_EQ(2U, registry()->enabled_extensions().size());
- ASSERT_EQ(1U, model->size());
- ASSERT_FALSE(IsBackgroundApp(*ext2.get()));
- service()->AddExtension(ext2.get());
- ASSERT_EQ(3U, registry()->enabled_extensions().size());
- ASSERT_EQ(1U, model->size());
- ASSERT_TRUE(IsBackgroundApp(*bgapp2.get()));
- service()->AddExtension(bgapp2.get());
- ASSERT_EQ(4U, registry()->enabled_extensions().size());
- ASSERT_EQ(2U, model->size());
- // Need to remove ext2 because it uses same id as bgapp3.
- ASSERT_FALSE(IsBackgroundApp(*ext2.get()));
- service()->UninstallExtension(ext2->id(),
- extensions::UNINSTALL_REASON_FOR_TESTING,
- base::Bind(&base::DoNothing), NULL);
- ASSERT_EQ(3U, registry()->enabled_extensions().size());
- ASSERT_EQ(2U, model->size());
- ASSERT_TRUE(IsBackgroundApp(*bgapp3.get()));
- service()->AddExtension(bgapp3.get());
- ASSERT_EQ(4U, registry()->enabled_extensions().size());
- ASSERT_EQ(3U, model->size());
-
- // Remove in FIFO order.
- ASSERT_FALSE(IsBackgroundApp(*ext1.get()));
- service()->UninstallExtension(ext1->id(),
- extensions::UNINSTALL_REASON_FOR_TESTING,
- base::Bind(&base::DoNothing), NULL);
- ASSERT_EQ(3U, registry()->enabled_extensions().size());
- ASSERT_EQ(3U, model->size());
- ASSERT_TRUE(IsBackgroundApp(*bgapp1.get()));
- service()->UninstallExtension(bgapp1->id(),
- extensions::UNINSTALL_REASON_FOR_TESTING,
- base::Bind(&base::DoNothing), NULL);
- ASSERT_EQ(2U, registry()->enabled_extensions().size());
- ASSERT_EQ(2U, model->size());
- ASSERT_TRUE(IsBackgroundApp(*bgapp2.get()));
- service()->UninstallExtension(bgapp2->id(),
- extensions::UNINSTALL_REASON_FOR_TESTING,
- base::Bind(&base::DoNothing), NULL);
- ASSERT_EQ(1U, registry()->enabled_extensions().size());
- ASSERT_EQ(1U, model->size());
- ASSERT_TRUE(IsBackgroundApp(*bgapp3.get()));
- service()->UninstallExtension(bgapp3->id(),
- extensions::UNINSTALL_REASON_FOR_TESTING,
- base::Bind(&base::DoNothing), NULL);
- ASSERT_EQ(0U, registry()->enabled_extensions().size());
- ASSERT_EQ(0U, model->size());
-}
-
// Verifies that an ephemeral app cannot trigger background mode.
TEST_F(BackgroundApplicationListModelTest, EphemeralAppTest) {
InitializeAndLoadEmptyExtensionService();
@@ -341,36 +237,21 @@ TEST_F(BackgroundApplicationListModelTest, EphemeralAppTest) {
new BackgroundApplicationListModel(profile_.get()));
ASSERT_EQ(0U, model->size());
- scoped_refptr<Extension> installed =
- CreateExtensionBase("installed", false, PUSH_MESSAGING_PERMISSION);
- scoped_refptr<Extension> ephemeral =
- CreateExtensionBase("ephemeral", false, PUSH_MESSAGING_PERMISSION);
scoped_refptr<Extension> background = CreateExtension("background", true);
- // Installed app with push messaging permissions can trigger background mode.
- ASSERT_TRUE(IsBackgroundApp(*installed.get()));
- service()->AddExtension(installed.get());
- ASSERT_EQ(1U, registry()->enabled_extensions().size());
- ASSERT_EQ(1U, model->size());
- // An ephemeral app with push messaging permissions should not trigger
- // background mode.
- AddEphemeralApp(ephemeral.get(), service());
- ASSERT_FALSE(IsBackgroundApp(*ephemeral.get()));
- ASSERT_EQ(2U, registry()->enabled_extensions().size());
- ASSERT_EQ(1U, model->size());
// An ephemeral app with the background permission should not trigger
// background mode.
AddEphemeralApp(background.get(), service());
ASSERT_FALSE(IsBackgroundApp(*background.get()));
- ASSERT_EQ(3U, registry()->enabled_extensions().size());
- ASSERT_EQ(1U, model->size());
+ ASSERT_EQ(1U, registry()->enabled_extensions().size());
+ ASSERT_EQ(0U, model->size());
// If the ephemeral app becomes promoted to an installed app, it can now
// trigger background mode.
- service()->PromoteEphemeralApp(ephemeral.get(), false /*from sync*/);
- ASSERT_TRUE(IsBackgroundApp(*ephemeral.get()));
- ASSERT_EQ(3U, registry()->enabled_extensions().size());
- ASSERT_EQ(2U, model->size());
+ service()->PromoteEphemeralApp(background.get(), false /*from sync*/);
+ ASSERT_TRUE(IsBackgroundApp(*background.get()));
+ ASSERT_EQ(1U, registry()->enabled_extensions().size());
+ ASSERT_EQ(1U, model->size());
}
// With minimal test logic, verifies behavior with dynamic permissions.

Powered by Google App Engine
This is Rietveld 408576698