| Index: chrome/browser/ui/intents/web_intent_picker_model_unittest.cc
|
| diff --git a/chrome/browser/ui/intents/web_intent_picker_model_unittest.cc b/chrome/browser/ui/intents/web_intent_picker_model_unittest.cc
|
| deleted file mode 100644
|
| index 9768be5168a7051e58bdf39d070cabb5c68af1ce..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/ui/intents/web_intent_picker_model_unittest.cc
|
| +++ /dev/null
|
| @@ -1,236 +0,0 @@
|
| -// 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.
|
| -
|
| -#include "base/utf_string_conversions.h"
|
| -#include "chrome/browser/ui/intents/web_intent_picker_model.h"
|
| -#include "chrome/browser/ui/intents/web_intent_picker_model_observer.h"
|
| -#include "testing/gmock/include/gmock/gmock.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -#include "ui/gfx/image/image.h"
|
| -#include "ui/gfx/image/image_unittest_util.h"
|
| -
|
| -namespace {
|
| -
|
| -const string16 kTitle1(ASCIIToUTF16("Foo"));
|
| -const string16 kTitle2(ASCIIToUTF16("Bar"));
|
| -const string16 kTitle3(ASCIIToUTF16("Baz"));
|
| -const string16 kTitle4(ASCIIToUTF16("Biff"));
|
| -const string16 kTitle5(ASCIIToUTF16("Max"));
|
| -const string16 kTitle6(ASCIIToUTF16("Lulz"));
|
| -const GURL kUrl1("http://www.example.com/foo");
|
| -const GURL kUrl2("http://www.example.com/bar");
|
| -const GURL kUrl3("http://www.example.com/baz");
|
| -const std::string kId1("nhkckhebbbncbkefhcpcgepcgfaclehe");
|
| -const std::string kId2("hcpcgepcgfaclehenhkckhebbbncbkef");
|
| -const std::string kId3("aclehenhkckhebbbncbkefhcpcgepcgf");
|
| -const std::string kId4("bclehenhkckhebbbncbkefhcpcgepcgf");
|
| -const std::string kId5("cclehenhkckhebbbncbkefhcpcgepcgf");
|
| -const std::string kId6("dclehenhkckhebbbncbkefhcpcgepcgf");
|
| -const webkit_glue::WebIntentServiceData::Disposition kWindowDisposition(
|
| - webkit_glue::WebIntentServiceData::DISPOSITION_WINDOW);
|
| -const webkit_glue::WebIntentServiceData::Disposition kInlineDisposition(
|
| - webkit_glue::WebIntentServiceData::DISPOSITION_INLINE);
|
| -
|
| -}
|
| -
|
| -class WebIntentPickerModelObserverMock : public WebIntentPickerModelObserver {
|
| - public:
|
| - MOCK_METHOD1(OnModelChanged, void(WebIntentPickerModel* model));
|
| - MOCK_METHOD2(OnFaviconChanged,
|
| - void(WebIntentPickerModel* model, size_t index));
|
| - MOCK_METHOD2(OnExtensionIconChanged,
|
| - void(WebIntentPickerModel* model,
|
| - const std::string& extension_id));
|
| - MOCK_METHOD2(OnInlineDisposition,
|
| - void(const string16& title, const GURL& url));
|
| -};
|
| -
|
| -class WebIntentPickerModelTest : public testing::Test {
|
| - public:
|
| - typedef WebIntentPickerModel::SuggestedExtension SuggestedExtension;
|
| - WebIntentPickerModelTest() {}
|
| -
|
| - virtual void SetUp() {
|
| - testing::Test::SetUp();
|
| - model_.set_observer(&observer_);
|
| - }
|
| -
|
| - WebIntentPickerModel model_;
|
| - WebIntentPickerModelObserverMock observer_;
|
| -};
|
| -
|
| -TEST_F(WebIntentPickerModelTest, AddInstalledService) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(2);
|
| -
|
| - EXPECT_EQ(0U, model_.GetInstalledServiceCount());
|
| -
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle2, kUrl2, kWindowDisposition);
|
| -
|
| - EXPECT_EQ(2U, model_.GetInstalledServiceCount());
|
| - EXPECT_EQ(kUrl1, model_.GetInstalledServiceAt(0).url);
|
| - EXPECT_EQ(kUrl2, model_.GetInstalledServiceAt(1).url);
|
| -}
|
| -
|
| -// Test that AddInstalledServices() is idempotent.
|
| -TEST_F(WebIntentPickerModelTest, AddInstalledServiceIsIdempotent) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(2);
|
| -
|
| - EXPECT_EQ(0U, model_.GetInstalledServiceCount());
|
| -
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle2, kUrl2, kWindowDisposition);
|
| -
|
| - EXPECT_EQ(2U, model_.GetInstalledServiceCount());
|
| - EXPECT_EQ(kUrl1, model_.GetInstalledServiceAt(0).url);
|
| - EXPECT_EQ(kUrl2, model_.GetInstalledServiceAt(1).url);
|
| -
|
| - model_.AddInstalledService(kTitle2, kUrl2, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| -
|
| - EXPECT_EQ(2U, model_.GetInstalledServiceCount());
|
| - EXPECT_EQ(kUrl1, model_.GetInstalledServiceAt(0).url);
|
| - EXPECT_EQ(kUrl2, model_.GetInstalledServiceAt(1).url);
|
| -}
|
| -
|
| -
|
| -TEST_F(WebIntentPickerModelTest, RemoveInstalledServiceAt) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(4);
|
| -
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle2, kUrl2, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle3, kUrl3, kWindowDisposition);
|
| -
|
| - EXPECT_EQ(3U, model_.GetInstalledServiceCount());
|
| -
|
| - model_.RemoveInstalledServiceAt(1);
|
| -
|
| - EXPECT_EQ(2U, model_.GetInstalledServiceCount());
|
| - EXPECT_EQ(kUrl1, model_.GetInstalledServiceAt(0).url);
|
| - EXPECT_EQ(kUrl3, model_.GetInstalledServiceAt(1).url);
|
| -}
|
| -
|
| -TEST_F(WebIntentPickerModelTest, Clear) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(testing::AtLeast(3));
|
| -
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle2, kUrl2, kWindowDisposition);
|
| -
|
| - EXPECT_EQ(2U, model_.GetInstalledServiceCount());
|
| -
|
| - model_.Clear();
|
| -
|
| - EXPECT_EQ(0U, model_.GetInstalledServiceCount());
|
| -}
|
| -
|
| -TEST_F(WebIntentPickerModelTest, GetInstalledServiceWithURL) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(2);
|
| -
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle2, kUrl2, kWindowDisposition);
|
| -
|
| - EXPECT_EQ(kTitle2, model_.GetInstalledServiceWithURL(kUrl2)->title);
|
| - EXPECT_EQ(NULL, model_.GetInstalledServiceWithURL(kUrl3));
|
| -}
|
| -
|
| -TEST_F(WebIntentPickerModelTest, UpdateFaviconForServiceWithURL) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(2);
|
| - EXPECT_CALL(observer_, OnFaviconChanged(&model_, 1U)).Times(1);
|
| -
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle2, kUrl2, kWindowDisposition);
|
| - gfx::Image image(gfx::test::CreateImage());
|
| - model_.UpdateFaviconForServiceWithURL(kUrl2, image);
|
| -
|
| - EXPECT_FALSE(gfx::test::IsEqual(
|
| - image, model_.GetInstalledServiceAt(0).favicon));
|
| - EXPECT_TRUE(gfx::test::IsEqual(
|
| - image, model_.GetInstalledServiceAt(1).favicon));
|
| -}
|
| -
|
| -TEST_F(WebIntentPickerModelTest, AddSuggestedExtensions) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(1);
|
| -
|
| - EXPECT_EQ(0U, model_.GetSuggestedExtensionCount());
|
| -
|
| - std::vector<WebIntentPickerModel::SuggestedExtension> suggestions;
|
| - suggestions.push_back(
|
| - WebIntentPickerModel::SuggestedExtension(kTitle1, kId1, 3.0));
|
| - suggestions.push_back(
|
| - WebIntentPickerModel::SuggestedExtension(kTitle2, kId2, 4.0));
|
| - model_.AddSuggestedExtensions(suggestions);
|
| -
|
| - EXPECT_EQ(2U, model_.GetSuggestedExtensionCount());
|
| - EXPECT_EQ(kId1, model_.GetSuggestedExtensionAt(0).id);
|
| - EXPECT_EQ(kId2, model_.GetSuggestedExtensionAt(1).id);
|
| -
|
| - EXPECT_EQ(string16(), model_.GetSuggestionsLinkText());
|
| -}
|
| -
|
| -TEST_F(WebIntentPickerModelTest, MaxSuggestedExtensions) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(1);
|
| -
|
| - std::vector<SuggestedExtension> suggestions;
|
| - suggestions.push_back(SuggestedExtension(kTitle1, kId1, 3.0));
|
| - suggestions.push_back(SuggestedExtension(kTitle2, kId2, 4.3));
|
| - suggestions.push_back(SuggestedExtension(kTitle3, kId3, 4.4));
|
| - suggestions.push_back(SuggestedExtension(kTitle4, kId4, 4.5));
|
| - suggestions.push_back(SuggestedExtension(kTitle5, kId5, 4.6));
|
| - suggestions.push_back(SuggestedExtension(kTitle6, kId6, 4.7));
|
| - model_.AddSuggestedExtensions(suggestions);
|
| -
|
| - // Max to show currently set to 5.
|
| - EXPECT_EQ(5U, model_.GetSuggestedExtensionCount());
|
| - EXPECT_NE(string16(), model_.GetSuggestionsLinkText());
|
| -}
|
| -
|
| -TEST_F(WebIntentPickerModelTest, SetSuggestedExtensionIconWithId) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(1);
|
| - EXPECT_CALL(observer_, OnExtensionIconChanged(&model_, kId2)).Times(1);
|
| -
|
| - std::vector<SuggestedExtension> suggestions;
|
| - suggestions.push_back(SuggestedExtension(kTitle1, kId1, 3.0));
|
| - suggestions.push_back(SuggestedExtension(kTitle2, kId2, 4.3));
|
| - model_.AddSuggestedExtensions(suggestions);
|
| -
|
| - gfx::Image image(gfx::test::CreateImage());
|
| - model_.SetSuggestedExtensionIconWithId(kId2, image);
|
| -
|
| - EXPECT_FALSE(gfx::test::IsEqual(
|
| - image, model_.GetSuggestedExtensionAt(0).icon));
|
| - EXPECT_TRUE(gfx::test::IsEqual(
|
| - image, model_.GetSuggestedExtensionAt(1).icon));
|
| -}
|
| -
|
| -TEST_F(WebIntentPickerModelTest, SetInlineDisposition) {
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(testing::AtLeast(3));
|
| - EXPECT_CALL(observer_, OnInlineDisposition(kTitle2, testing::_)).Times(1);
|
| -
|
| - EXPECT_FALSE(model_.IsInlineDisposition());
|
| - EXPECT_EQ(GURL::EmptyGURL(), model_.inline_disposition_url());
|
| -
|
| - model_.AddInstalledService(kTitle1, kUrl1, kWindowDisposition);
|
| - model_.AddInstalledService(kTitle2, kUrl2, kInlineDisposition);
|
| - model_.SetInlineDisposition(kUrl2);
|
| -
|
| - EXPECT_TRUE(model_.IsInlineDisposition());
|
| - EXPECT_EQ(kUrl2, model_.inline_disposition_url());
|
| -
|
| - model_.Clear();
|
| - EXPECT_FALSE(model_.IsInlineDisposition());
|
| - EXPECT_EQ(GURL::EmptyGURL(), model_.inline_disposition_url());
|
| -}
|
| -
|
| -
|
| -TEST_F(WebIntentPickerModelTest, WaitingForSuggestions) {
|
| - // Default status is that "waiting for suggestions".
|
| - EXPECT_TRUE(model_.IsWaitingForSuggestions());
|
| -
|
| - // "waiting" status can be toggled manually.
|
| - EXPECT_CALL(observer_, OnModelChanged(&model_)).Times(2);
|
| - model_.SetWaitingForSuggestions(false);
|
| - EXPECT_FALSE(model_.IsWaitingForSuggestions());
|
| - model_.SetWaitingForSuggestions(true);
|
| - EXPECT_TRUE(model_.IsWaitingForSuggestions());
|
| -}
|
|
|