extension_manifests_icons_unittest.cc revision f2477e01787aa58f445919b809d89e252beef54f
1// Copyright (c) 2013 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/memory/linked_ptr.h" 6#include "chrome/common/extensions/extension_constants.h" 7#include "chrome/common/extensions/extension_icon_set.h" 8#include "chrome/common/extensions/manifest_handlers/icons_handler.h" 9#include "chrome/common/extensions/manifest_tests/extension_manifest_test.h" 10#include "extensions/common/extension.h" 11#include "testing/gtest/include/gtest/gtest.h" 12 13namespace extensions { 14 15class IconsManifestTest : public ExtensionManifestTest { 16}; 17 18TEST_F(IconsManifestTest, NormalizeIconPaths) { 19 scoped_refptr<extensions::Extension> extension( 20 LoadAndExpectSuccess("normalize_icon_paths.json")); 21 const ExtensionIconSet& icons = IconsInfo::GetIcons(extension.get()); 22 23 EXPECT_EQ("16.png", icons.Get(extension_misc::EXTENSION_ICON_BITTY, 24 ExtensionIconSet::MATCH_EXACTLY)); 25 EXPECT_EQ("48.png", icons.Get(extension_misc::EXTENSION_ICON_MEDIUM, 26 ExtensionIconSet::MATCH_EXACTLY)); 27} 28 29TEST_F(IconsManifestTest, InvalidIconSizes) { 30 scoped_refptr<extensions::Extension> extension( 31 LoadAndExpectSuccess("init_ignored_icon_size.json")); 32 EXPECT_EQ("", 33 IconsInfo::GetIcons(extension.get()) 34 .Get(300, ExtensionIconSet::MATCH_EXACTLY)); 35} 36 37TEST_F(IconsManifestTest, ValidIconSizes) { 38 scoped_refptr<extensions::Extension> extension( 39 LoadAndExpectSuccess("init_valid_icon_size.json")); 40 const ExtensionIconSet& icons = IconsInfo::GetIcons(extension.get()); 41 42 EXPECT_EQ("16.png", icons.Get(extension_misc::EXTENSION_ICON_BITTY, 43 ExtensionIconSet::MATCH_EXACTLY)); 44 EXPECT_EQ("24.png", icons.Get(extension_misc::EXTENSION_ICON_SMALLISH, 45 ExtensionIconSet::MATCH_EXACTLY)); 46 EXPECT_EQ("32.png", icons.Get(extension_misc::EXTENSION_ICON_SMALL, 47 ExtensionIconSet::MATCH_EXACTLY)); 48 EXPECT_EQ("48.png", icons.Get(extension_misc::EXTENSION_ICON_MEDIUM, 49 ExtensionIconSet::MATCH_EXACTLY)); 50 EXPECT_EQ("128.png", icons.Get(extension_misc::EXTENSION_ICON_LARGE, 51 ExtensionIconSet::MATCH_EXACTLY)); 52 EXPECT_EQ("256.png", icons.Get(extension_misc::EXTENSION_ICON_EXTRA_LARGE, 53 ExtensionIconSet::MATCH_EXACTLY)); 54 EXPECT_EQ("512.png", icons.Get(extension_misc::EXTENSION_ICON_GIGANTOR, 55 ExtensionIconSet::MATCH_EXACTLY)); 56} 57 58} // namespace extensions 59