Index: chrome/browser/ui/views/browser_actions_container_browsertest.cc |
diff --git a/chrome/browser/ui/views/browser_actions_container_browsertest.cc b/chrome/browser/ui/views/browser_actions_container_browsertest.cc |
deleted file mode 100644 |
index 5f2b4860e426ac6f4a726891832e686012168f92..0000000000000000000000000000000000000000 |
--- a/chrome/browser/ui/views/browser_actions_container_browsertest.cc |
+++ /dev/null |
@@ -1,189 +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 "chrome/browser/ui/views/browser_actions_container.h" |
- |
-#include "chrome/browser/chrome_notification_types.h" |
-#include "chrome/browser/extensions/api/extension_action/extension_action_api.h" |
-#include "chrome/browser/extensions/browser_action_test_util.h" |
-#include "chrome/browser/extensions/extension_browsertest.h" |
-#include "chrome/browser/extensions/extension_service.h" |
-#include "content/public/test/test_utils.h" |
- |
-using extensions::Extension; |
- |
-class BrowserActionsContainerTest : public ExtensionBrowserTest { |
- public: |
- BrowserActionsContainerTest() { |
- } |
- virtual ~BrowserActionsContainerTest() {} |
- |
- virtual void SetUpOnMainThread() OVERRIDE { |
- browser_actions_bar_.reset(new BrowserActionTestUtil(browser())); |
- } |
- |
- BrowserActionTestUtil* browser_actions_bar() { |
- return browser_actions_bar_.get(); |
- } |
- |
- // Make sure extension with index |extension_index| has an icon. |
- void EnsureExtensionHasIcon(int extension_index) { |
- if (!browser_actions_bar_->HasIcon(extension_index)) { |
- // The icon is loaded asynchronously and a notification is then sent to |
- // observers. So we wait on it. |
- ExtensionAction* browser_action = |
- browser_actions_bar_->GetExtensionAction(extension_index); |
- |
- content::WindowedNotificationObserver observer( |
- chrome::NOTIFICATION_EXTENSION_BROWSER_ACTION_UPDATED, |
- content::Source<ExtensionAction>(browser_action)); |
- observer.Wait(); |
- } |
- EXPECT_TRUE(browser_actions_bar()->HasIcon(extension_index)); |
- } |
- |
- private: |
- scoped_ptr<BrowserActionTestUtil> browser_actions_bar_; |
-}; |
- |
-// Test the basic functionality. |
-// http://crbug.com/120770 |
-#if defined(OS_WIN) |
-IN_PROC_BROWSER_TEST_F(BrowserActionsContainerTest, DISABLED_Basic) { |
-#else |
-IN_PROC_BROWSER_TEST_F(BrowserActionsContainerTest, Basic) { |
-#endif |
- BrowserActionsContainer::disable_animations_during_testing_ = true; |
- |
- // Load an extension with no browser action. |
- ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("api_test") |
- .AppendASCII("browser_action") |
- .AppendASCII("none"))); |
- // This extension should not be in the model (has no browser action). |
- EXPECT_EQ(0, browser_actions_bar()->NumberOfBrowserActions()); |
- |
- // Load an extension with a browser action. |
- ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("api_test") |
- .AppendASCII("browser_action") |
- .AppendASCII("basics"))); |
- EXPECT_EQ(1, browser_actions_bar()->NumberOfBrowserActions()); |
- EnsureExtensionHasIcon(0); |
- |
- // Unload the extension. |
- std::string id = browser_actions_bar()->GetExtensionId(0); |
- UnloadExtension(id); |
- EXPECT_EQ(0, browser_actions_bar()->NumberOfBrowserActions()); |
-} |
- |
-IN_PROC_BROWSER_TEST_F(BrowserActionsContainerTest, Visibility) { |
- BrowserActionsContainer::disable_animations_during_testing_ = true; |
- |
- // Load extension A (contains browser action). |
- ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("api_test") |
- .AppendASCII("browser_action") |
- .AppendASCII("basics"))); |
- EXPECT_EQ(1, browser_actions_bar()->NumberOfBrowserActions()); |
- EnsureExtensionHasIcon(0); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- std::string idA = browser_actions_bar()->GetExtensionId(0); |
- |
- // Load extension B (contains browser action). |
- ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("api_test") |
- .AppendASCII("browser_action") |
- .AppendASCII("add_popup"))); |
- EXPECT_EQ(2, browser_actions_bar()->NumberOfBrowserActions()); |
- EnsureExtensionHasIcon(0); |
- EXPECT_EQ(2, browser_actions_bar()->VisibleBrowserActions()); |
- std::string idB = browser_actions_bar()->GetExtensionId(1); |
- |
- EXPECT_NE(idA, idB); |
- |
- // Load extension C (contains browser action). |
- ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("api_test") |
- .AppendASCII("browser_action") |
- .AppendASCII("remove_popup"))); |
- EXPECT_EQ(3, browser_actions_bar()->NumberOfBrowserActions()); |
- EnsureExtensionHasIcon(2); |
- EXPECT_EQ(3, browser_actions_bar()->VisibleBrowserActions()); |
- std::string idC = browser_actions_bar()->GetExtensionId(2); |
- |
- // Change container to show only one action, rest in overflow: A, [B, C]. |
- browser_actions_bar()->SetIconVisibilityCount(1); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- |
- // Disable extension A (should disappear). State becomes: B [C]. |
- DisableExtension(idA); |
- EXPECT_EQ(2, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idB, browser_actions_bar()->GetExtensionId(0)); |
- |
- // Enable A again. A should get its spot in the same location and the bar |
- // should not grow (chevron is showing). For details: http://crbug.com/35349. |
- // State becomes: A, [B, C]. |
- EnableExtension(idA); |
- EXPECT_EQ(3, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idA, browser_actions_bar()->GetExtensionId(0)); |
- |
- // Disable C (in overflow). State becomes: A, [B]. |
- DisableExtension(idC); |
- EXPECT_EQ(2, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idA, browser_actions_bar()->GetExtensionId(0)); |
- |
- // Enable C again. State becomes: A, [B, C]. |
- EnableExtension(idC); |
- EXPECT_EQ(3, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idA, browser_actions_bar()->GetExtensionId(0)); |
- |
- // Now we have 3 extensions. Make sure they are all visible. State: A, B, C. |
- browser_actions_bar()->SetIconVisibilityCount(3); |
- EXPECT_EQ(3, browser_actions_bar()->VisibleBrowserActions()); |
- |
- // Disable extension A (should disappear). State becomes: B, C. |
- DisableExtension(idA); |
- EXPECT_EQ(2, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(2, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idB, browser_actions_bar()->GetExtensionId(0)); |
- |
- // Disable extension B (should disappear). State becomes: C. |
- DisableExtension(idB); |
- EXPECT_EQ(1, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idC, browser_actions_bar()->GetExtensionId(0)); |
- |
- // Enable B. State becomes: B, C. |
- EnableExtension(idB); |
- EXPECT_EQ(2, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(2, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idB, browser_actions_bar()->GetExtensionId(0)); |
- |
- // Enable A. State becomes: A, B, C. |
- EnableExtension(idA); |
- EXPECT_EQ(3, browser_actions_bar()->NumberOfBrowserActions()); |
- EXPECT_EQ(3, browser_actions_bar()->VisibleBrowserActions()); |
- EXPECT_EQ(idA, browser_actions_bar()->GetExtensionId(0)); |
-} |
- |
-IN_PROC_BROWSER_TEST_F(BrowserActionsContainerTest, ForceHide) { |
- BrowserActionsContainer::disable_animations_during_testing_ = true; |
- |
- // Load extension A (contains browser action). |
- ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("api_test") |
- .AppendASCII("browser_action") |
- .AppendASCII("basics"))); |
- EXPECT_EQ(1, browser_actions_bar()->NumberOfBrowserActions()); |
- EnsureExtensionHasIcon(0); |
- EXPECT_EQ(1, browser_actions_bar()->VisibleBrowserActions()); |
- std::string idA = browser_actions_bar()->GetExtensionId(0); |
- |
- // Force hide this browser action. |
- extensions::ExtensionActionAPI::SetBrowserActionVisibility( |
- extensions::ExtensionSystem::Get(browser()->profile())-> |
- extension_service()->extension_prefs(), |
- idA, |
- false); |
- EXPECT_EQ(0, browser_actions_bar()->VisibleBrowserActions()); |
-} |