summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/extension_set_unittest.cc
diff options
context:
space:
mode:
authordbeam@chromium.org <dbeam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-18 07:43:01 +0000
committerdbeam@chromium.org <dbeam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-18 07:43:01 +0000
commit7f4308d5da55597a0c2c74a5749ae6439082b18a (patch)
tree0b7ea28f453d56e3e1e6fa4eb16b550b0b1d3af6 /chrome/common/extensions/extension_set_unittest.cc
parent257b2c5198a848075c7f62f2619c027e76873b2d (diff)
downloadchromium_src-7f4308d5da55597a0c2c74a5749ae6439082b18a.zip
chromium_src-7f4308d5da55597a0c2c74a5749ae6439082b18a.tar.gz
chromium_src-7f4308d5da55597a0c2c74a5749ae6439082b18a.tar.bz2
[NTP4] Add ExtensionSet::AddAll and ExtensionService::GetAllInstalledExtensions.
R=aa@chromium.org TBR=estade@chromium.org TEST=ExtensionsSetTest.ExtensionSet passes and nothing breaks. BUG=97762 Review URL: http://codereview.chromium.org/9134003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118077 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/extension_set_unittest.cc')
-rw-r--r--chrome/common/extensions/extension_set_unittest.cc19
1 files changed, 18 insertions, 1 deletions
diff --git a/chrome/common/extensions/extension_set_unittest.cc b/chrome/common/extensions/extension_set_unittest.cc
index 56f2b5f..37e5559 100644
--- a/chrome/common/extensions/extension_set_unittest.cc
+++ b/chrome/common/extensions/extension_set_unittest.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// 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.
@@ -114,4 +114,21 @@ TEST(ExtensionSetTest, ExtensionSet) {
extensions.Remove(ext2->id());
EXPECT_EQ(2u, extensions.size());
EXPECT_FALSE(extensions.GetByID(ext2->id()));
+
+ // Make a union of a set with 3 more extensions (only 2 are new).
+ scoped_refptr<Extension> ext5(CreateTestExtension("d", "", ""));
+ scoped_refptr<Extension> ext6(CreateTestExtension("e", "", ""));
+ ASSERT_TRUE(ext5 && ext6);
+
+ scoped_ptr<ExtensionSet> to_add(new ExtensionSet());
+ to_add->Insert(ext3); // Already in |extensions|, should not affect size.
+ to_add->Insert(ext5);
+ to_add->Insert(ext6);
+
+ ASSERT_TRUE(extensions.Contains(ext3->id()));
+ ASSERT_TRUE(extensions.InsertAll(*to_add));
+ EXPECT_EQ(4u, extensions.size());
+
+ ASSERT_FALSE(extensions.InsertAll(*to_add)); // Re-adding same set no-ops.
+ EXPECT_EQ(4u, extensions.size());
}