18ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen// Copyright (c) 2010 The Chromium Authors. All rights reserved. 28ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen// Use of this source code is governed by a BSD-style license that can be 38ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen// found in the LICENSE file. 48ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 58ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen#include "chrome/common/extensions/extension_icon_set.h" 68ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 78ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen#include "testing/gtest/include/gtest/gtest.h" 88ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 98ae428e0fb7feea16d79853f29447469a93bedffKristian MonsenTEST(ExtensionIconSet, Basic) { 108ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen ExtensionIconSet icons; 118ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(42, ExtensionIconSet::MATCH_EXACTLY)); 128ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(42, ExtensionIconSet::MATCH_BIGGER)); 138ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(42, ExtensionIconSet::MATCH_SMALLER)); 148ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_TRUE(icons.map().empty()); 158ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 168ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Add(42, "42.png"); 178ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("42.png", icons.Get(42, ExtensionIconSet::MATCH_EXACTLY)); 188ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("42.png", icons.Get(42, ExtensionIconSet::MATCH_BIGGER)); 198ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("42.png", icons.Get(42, ExtensionIconSet::MATCH_SMALLER)); 208ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("42.png", icons.Get(41, ExtensionIconSet::MATCH_BIGGER)); 218ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("42.png", icons.Get(43, ExtensionIconSet::MATCH_SMALLER)); 228ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(41, ExtensionIconSet::MATCH_SMALLER)); 238ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(43, ExtensionIconSet::MATCH_BIGGER)); 248ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 258ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Add(38, "38.png"); 268ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Add(40, "40.png"); 278ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Add(44, "44.png"); 288ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Add(46, "46.png"); 298ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 308ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(41, ExtensionIconSet::MATCH_EXACTLY)); 318ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("40.png", icons.Get(41, ExtensionIconSet::MATCH_SMALLER)); 328ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("42.png", icons.Get(41, ExtensionIconSet::MATCH_BIGGER)); 338ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(37, ExtensionIconSet::MATCH_SMALLER)); 348ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_EQ("", icons.Get(47, ExtensionIconSet::MATCH_BIGGER)); 358ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen} 368ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 378ae428e0fb7feea16d79853f29447469a93bedffKristian MonsenTEST(ExtensionIconSet, Values) { 388ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen ExtensionIconSet icons; 398ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_FALSE(icons.ContainsPath("foo")); 408ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 418ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Add(1, "foo"); 428ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Add(2, "bar"); 438ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 448ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_TRUE(icons.ContainsPath("foo")); 458ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_TRUE(icons.ContainsPath("bar")); 468ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_FALSE(icons.ContainsPath("baz")); 4772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen EXPECT_FALSE(icons.ContainsPath("")); 488ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen 498ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen icons.Clear(); 508ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen EXPECT_FALSE(icons.ContainsPath("foo")); 518ae428e0fb7feea16d79853f29447469a93bedffKristian Monsen} 52