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

Side by Side Diff: chrome/browser/extensions/api/extension_action/browser_action_unittest.cc

Issue 1537473003: Change extension icon load errors to warnings (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: ultimate weirdness Created 5 years 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
« no previous file with comments | « no previous file | chrome/browser/extensions/extension_action_manager_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/files/file_util.h"
6 #include "chrome/browser/extensions/extension_service_test_with_install.h"
7 #include "chrome/common/extensions/api/extension_action/action_info.h"
8
9 namespace extensions {
10 namespace {
11
12 class BrowserActionUnitTest : public ExtensionServiceTestWithInstall {
13 };
14
15 TEST_F(BrowserActionUnitTest, MultiIcons) {
16 InitializeEmptyExtensionService();
17 base::FilePath path =
18 data_dir().AppendASCII("api_test/browser_action/multi_icons");
19 ASSERT_TRUE(base::PathExists(path));
20
21 const Extension* extension = PackAndInstallCRX(path, INSTALL_NEW);
22
23 EXPECT_EQ(0U, extension->install_warnings().size());
24 const ActionInfo* browser_action_info =
25 ActionInfo::GetBrowserActionInfo(extension);
26 ASSERT_TRUE(browser_action_info);
27
28 const ExtensionIconSet& icons = browser_action_info->default_icon;
29
30 // Extension can provide arbitrary sizes.
31 EXPECT_EQ(4u, icons.map().size());
32 EXPECT_EQ("icon19.png", icons.Get(19, ExtensionIconSet::MATCH_EXACTLY));
33 EXPECT_EQ("icon24.png", icons.Get(24, ExtensionIconSet::MATCH_EXACTLY));
34 EXPECT_EQ("icon24.png", icons.Get(31, ExtensionIconSet::MATCH_EXACTLY));
Devlin 2015/12/19 01:43:19 This looks a little weird, even though it's correc
Evan Stade 2015/12/19 01:49:58 I could do that but I thought we were going for ul
Devlin 2015/12/19 02:06:11 Unittests are cheap. EXPECT_EQs in a unittest are
35 EXPECT_EQ("icon38.png", icons.Get(38, ExtensionIconSet::MATCH_EXACTLY));
36 }
37
38 TEST_F(BrowserActionUnitTest, MissingIconInWebstoreCrx) {
39 InitializeEmptyExtensionService();
40 base::FilePath path =
41 data_dir().AppendASCII("api_test/browser_action/missing_icon");
42 ASSERT_TRUE(base::PathExists(path));
43
44 const Extension* extension = PackAndInstallCRX(path, INSTALL_NEW);
45
46 ASSERT_EQ(1U, extension->install_warnings().size());
47 EXPECT_EQ("Could not load extension icon 'icon19.png'.",
48 extension->install_warnings().front().message);
49 const ActionInfo* browser_action_info =
50 ActionInfo::GetBrowserActionInfo(extension);
51 ASSERT_TRUE(browser_action_info);
52
53 const ExtensionIconSet& icons = browser_action_info->default_icon;
54
55 EXPECT_EQ(2u, icons.map().size());
56 EXPECT_EQ("icon24.png", icons.Get(24, ExtensionIconSet::MATCH_EXACTLY));
57 EXPECT_EQ("icon38.png", icons.Get(38, ExtensionIconSet::MATCH_EXACTLY));
58 }
59
60 TEST_F(BrowserActionUnitTest, MissingIconInCommandLine) {
61 InitializeEmptyExtensionService();
62 base::FilePath path =
63 data_dir().AppendASCII("api_test/browser_action/missing_icon");
64 ASSERT_TRUE(base::PathExists(path));
65
66 PackAndInstallCRXWithLocation(path, Manifest::COMMAND_LINE, INSTALL_FAILED);
67 }
68
69 } // namespace
70 } // namespace extensions
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/extensions/extension_action_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698