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

Side by Side Diff: chrome/browser/extensions/extension_icon_manager_unittest.cc

Issue 1871713002: Convert //chrome/browser/extensions from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase and fix header Created 4 years, 8 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/json/json_file_value_serializer.h" 5 #include "base/json/json_file_value_serializer.h"
6 #include "base/macros.h" 6 #include "base/macros.h"
7 #include "base/message_loop/message_loop.h" 7 #include "base/message_loop/message_loop.h"
8 #include "base/path_service.h" 8 #include "base/path_service.h"
9 #include "base/values.h" 9 #include "base/values.h"
10 #include "build/build_config.h" 10 #include "build/build_config.h"
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 // Returns the default icon that ExtensionIconManager gives when an extension 95 // Returns the default icon that ExtensionIconManager gives when an extension
96 // doesn't have an icon. 96 // doesn't have an icon.
97 SkBitmap GetDefaultIcon() { 97 SkBitmap GetDefaultIcon() {
98 std::string dummy_id = crx_file::id_util::GenerateId("whatever"); 98 std::string dummy_id = crx_file::id_util::GenerateId("whatever");
99 ExtensionIconManager manager; 99 ExtensionIconManager manager;
100 return manager.GetIcon(dummy_id); 100 return manager.GetIcon(dummy_id);
101 } 101 }
102 102
103 // Tests loading an icon for an extension, removing it, then re-loading it. 103 // Tests loading an icon for an extension, removing it, then re-loading it.
104 TEST_F(ExtensionIconManagerTest, LoadRemoveLoad) { 104 TEST_F(ExtensionIconManagerTest, LoadRemoveLoad) {
105 scoped_ptr<Profile> profile(new TestingProfile()); 105 std::unique_ptr<Profile> profile(new TestingProfile());
106 SkBitmap default_icon = GetDefaultIcon(); 106 SkBitmap default_icon = GetDefaultIcon();
107 107
108 base::FilePath test_dir; 108 base::FilePath test_dir;
109 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &test_dir)); 109 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &test_dir));
110 base::FilePath manifest_path = test_dir.AppendASCII( 110 base::FilePath manifest_path = test_dir.AppendASCII(
111 "extensions/image_loading_tracker/app.json"); 111 "extensions/image_loading_tracker/app.json");
112 112
113 JSONFileValueDeserializer deserializer(manifest_path); 113 JSONFileValueDeserializer deserializer(manifest_path);
114 scoped_ptr<base::DictionaryValue> manifest = 114 std::unique_ptr<base::DictionaryValue> manifest =
115 base::DictionaryValue::From(deserializer.Deserialize(NULL, NULL)); 115 base::DictionaryValue::From(deserializer.Deserialize(NULL, NULL));
116 ASSERT_TRUE(manifest.get() != NULL); 116 ASSERT_TRUE(manifest.get() != NULL);
117 117
118 std::string error; 118 std::string error;
119 scoped_refptr<Extension> extension(Extension::Create( 119 scoped_refptr<Extension> extension(Extension::Create(
120 manifest_path.DirName(), Manifest::INVALID_LOCATION, *manifest.get(), 120 manifest_path.DirName(), Manifest::INVALID_LOCATION, *manifest.get(),
121 Extension::NO_FLAGS, &error)); 121 Extension::NO_FLAGS, &error));
122 ASSERT_TRUE(extension.get()); 122 ASSERT_TRUE(extension.get());
123 TestIconManager icon_manager(this); 123 TestIconManager icon_manager(this);
124 124
(...skipping 12 matching lines...) Expand all
137 WaitForImageLoad(); 137 WaitForImageLoad();
138 SkBitmap second_icon = icon_manager.GetIcon(extension->id()); 138 SkBitmap second_icon = icon_manager.GetIcon(extension->id());
139 EXPECT_FALSE(gfx::BitmapsAreEqual(second_icon, default_icon)); 139 EXPECT_FALSE(gfx::BitmapsAreEqual(second_icon, default_icon));
140 140
141 EXPECT_TRUE(gfx::BitmapsAreEqual(first_icon, second_icon)); 141 EXPECT_TRUE(gfx::BitmapsAreEqual(first_icon, second_icon));
142 } 142 }
143 143
144 #if defined(OS_CHROMEOS) 144 #if defined(OS_CHROMEOS)
145 // Tests loading an icon for a component extension. 145 // Tests loading an icon for a component extension.
146 TEST_F(ExtensionIconManagerTest, LoadComponentExtensionResource) { 146 TEST_F(ExtensionIconManagerTest, LoadComponentExtensionResource) {
147 scoped_ptr<Profile> profile(new TestingProfile()); 147 std::unique_ptr<Profile> profile(new TestingProfile());
148 SkBitmap default_icon = GetDefaultIcon(); 148 SkBitmap default_icon = GetDefaultIcon();
149 149
150 base::FilePath test_dir; 150 base::FilePath test_dir;
151 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &test_dir)); 151 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &test_dir));
152 base::FilePath manifest_path = test_dir.AppendASCII( 152 base::FilePath manifest_path = test_dir.AppendASCII(
153 "extensions/file_manager/app.json"); 153 "extensions/file_manager/app.json");
154 154
155 JSONFileValueDeserializer deserializer(manifest_path); 155 JSONFileValueDeserializer deserializer(manifest_path);
156 scoped_ptr<base::DictionaryValue> manifest = 156 std::unique_ptr<base::DictionaryValue> manifest =
157 base::DictionaryValue::From(deserializer.Deserialize(NULL, NULL)); 157 base::DictionaryValue::From(deserializer.Deserialize(NULL, NULL));
158 ASSERT_TRUE(manifest.get() != NULL); 158 ASSERT_TRUE(manifest.get() != NULL);
159 159
160 std::string error; 160 std::string error;
161 scoped_refptr<Extension> extension(Extension::Create( 161 scoped_refptr<Extension> extension(Extension::Create(
162 manifest_path.DirName(), Manifest::COMPONENT, *manifest.get(), 162 manifest_path.DirName(), Manifest::COMPONENT, *manifest.get(),
163 Extension::NO_FLAGS, &error)); 163 Extension::NO_FLAGS, &error));
164 ASSERT_TRUE(extension.get()); 164 ASSERT_TRUE(extension.get());
165 165
166 TestIconManager icon_manager(this); 166 TestIconManager icon_manager(this);
167 // Load the icon and grab the bitmap. 167 // Load the icon and grab the bitmap.
168 icon_manager.LoadIcon(profile.get(), extension.get()); 168 icon_manager.LoadIcon(profile.get(), extension.get());
169 WaitForImageLoad(); 169 WaitForImageLoad();
170 SkBitmap first_icon = icon_manager.GetIcon(extension->id()); 170 SkBitmap first_icon = icon_manager.GetIcon(extension->id());
171 EXPECT_FALSE(gfx::BitmapsAreEqual(first_icon, default_icon)); 171 EXPECT_FALSE(gfx::BitmapsAreEqual(first_icon, default_icon));
172 172
173 // Remove the icon from the manager. 173 // Remove the icon from the manager.
174 icon_manager.RemoveIcon(extension->id()); 174 icon_manager.RemoveIcon(extension->id());
175 175
176 // Now re-load the icon - we should get the same result bitmap (and not the 176 // Now re-load the icon - we should get the same result bitmap (and not the
177 // default icon). 177 // default icon).
178 icon_manager.LoadIcon(profile.get(), extension.get()); 178 icon_manager.LoadIcon(profile.get(), extension.get());
179 WaitForImageLoad(); 179 WaitForImageLoad();
180 SkBitmap second_icon = icon_manager.GetIcon(extension->id()); 180 SkBitmap second_icon = icon_manager.GetIcon(extension->id());
181 EXPECT_FALSE(gfx::BitmapsAreEqual(second_icon, default_icon)); 181 EXPECT_FALSE(gfx::BitmapsAreEqual(second_icon, default_icon));
182 182
183 EXPECT_TRUE(gfx::BitmapsAreEqual(first_icon, second_icon)); 183 EXPECT_TRUE(gfx::BitmapsAreEqual(first_icon, second_icon));
184 } 184 }
185 #endif 185 #endif
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_icon_manager.cc ('k') | chrome/browser/extensions/extension_install_checker.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698