Commit 9761cac4 authored by Bret Sepulveda's avatar Bret Sepulveda Committed by Commit Bot

Convert ToolbarActionsBarUnitTest tests for ExtensionsToolbarMenu.

This patch rewrites all the tests in ToolbarActionsBarUnitTest that are
relevant to the new UI into ExtensionsMenuViewUnitTest:
* BasicToolbarActionsBarTest is converted to
  PinnedExtensionAppearsInToolbar and ReorderPinnedExtensions. Since
  ExtensionsToolbarContainer does not shrink to fit available space,
  that part of the test has not been converted.
* ToolbarActionsReorderOnPrefChange is converted to
  PinnedExtensionsReorderOnPrefChange.
* TestHighlightMode is not converted because highlight mode is not
  yet supported on the new UI.
* The relevant part of TestActionFrameBounds is converted to
  PinnedExtensionLayout.
* TestStartAndEndIndexes is not converted because
  ExtensionsToolbarContainer cannot be manually shrunk.
* TestNeedsOverflow is not converted because there is no "overflow"
  container in the new UI.
* ReuploadExtensionFailed is converted and split into two tests:
  ReloadExtension and ReloadExtensionFailed.

This patch also disables the kExtensionsToolbarMenu feature for the
ToolbarActionsBarUnitTest suite, so they will now pass when the feature
is enabled by default.

Bug: 984654
Change-Id: I287efbbe916354d7572ec0ea684cce86777213f5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1930816
Commit-Queue: Bret Sepulveda <bsep@chromium.org>
Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#719138}
parent 8a0ae33c
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include "chrome/browser/ui/toolbar/toolbar_action_view_controller.h" #include "chrome/browser/ui/toolbar/toolbar_action_view_controller.h"
#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h" #include "chrome/browser/ui/toolbar/toolbar_actions_bar.h"
#include "chrome/browser/ui/toolbar/toolbar_actions_bar_delegate.h" #include "chrome/browser/ui/toolbar/toolbar_actions_bar_delegate.h"
#include "chrome/browser/ui/ui_features.h"
#include "chrome/common/pref_names.h" #include "chrome/common/pref_names.h"
#include "chrome/test/base/scoped_testing_local_state.h" #include "chrome/test/base/scoped_testing_local_state.h"
#include "chrome/test/base/testing_browser_process.h" #include "chrome/test/base/testing_browser_process.h"
...@@ -143,7 +144,10 @@ class ToolbarActionErrorTestObserver ...@@ -143,7 +144,10 @@ class ToolbarActionErrorTestObserver
} // namespace } // namespace
ToolbarActionsBarUnitTest::ToolbarActionsBarUnitTest() ToolbarActionsBarUnitTest::ToolbarActionsBarUnitTest()
: toolbar_model_(nullptr) {} : toolbar_model_(nullptr) {
// The ToolbarActionsBar is not used when kExtensionsToolbarMenu is enabled.
feature_list_.InitAndDisableFeature(features::kExtensionsToolbarMenu);
}
ToolbarActionsBarUnitTest::~ToolbarActionsBarUnitTest() {} ToolbarActionsBarUnitTest::~ToolbarActionsBarUnitTest() {}
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include <memory> #include <memory>
#include "base/macros.h" #include "base/macros.h"
#include "base/test/scoped_feature_list.h"
#include "chrome/browser/ui/extensions/browser_action_test_util.h" #include "chrome/browser/ui/extensions/browser_action_test_util.h"
#include "chrome/test/base/browser_with_test_window_test.h" #include "chrome/test/base/browser_with_test_window_test.h"
#include "extensions/common/extension_builder.h" #include "extensions/common/extension_builder.h"
...@@ -92,6 +93,8 @@ class ToolbarActionsBarUnitTest : public BrowserWithTestWindowTest, ...@@ -92,6 +93,8 @@ class ToolbarActionsBarUnitTest : public BrowserWithTestWindowTest,
} }
private: private:
base::test::ScopedFeatureList feature_list_;
// The associated ToolbarActionsModel (owned by the keyed service setup). // The associated ToolbarActionsModel (owned by the keyed service setup).
ToolbarActionsModel* toolbar_model_; ToolbarActionsModel* toolbar_model_;
......
...@@ -53,6 +53,13 @@ class ExtensionsToolbarContainer : public ToolbarIconContainerView, ...@@ -53,6 +53,13 @@ class ExtensionsToolbarContainer : public ToolbarIconContainerView,
// ToolbarIconContainerView: // ToolbarIconContainerView:
void UpdateAllIcons() override; void UpdateAllIcons() override;
bool GetDropFormats(int* formats,
std::set<ui::ClipboardFormatType>* format_types) override;
bool AreDropTypesRequired() override;
bool CanDrop(const ui::OSExchangeData& data) override;
int OnDragUpdated(const ui::DropTargetEvent& event) override;
void OnDragExited() override;
int OnPerformDrop(const ui::DropTargetEvent& event) override;
// ExtensionsContainer: // ExtensionsContainer:
ToolbarActionViewController* GetActionForId( ToolbarActionViewController* GetActionForId(
...@@ -72,6 +79,20 @@ class ExtensionsToolbarContainer : public ToolbarIconContainerView, ...@@ -72,6 +79,20 @@ class ExtensionsToolbarContainer : public ToolbarIconContainerView,
void ShowToolbarActionBubbleAsync( void ShowToolbarActionBubbleAsync(
std::unique_ptr<ToolbarActionsBarBubbleDelegate> bubble) override; std::unique_ptr<ToolbarActionsBarBubbleDelegate> bubble) override;
// ToolbarActionView::Delegate:
content::WebContents* GetCurrentWebContents() override;
bool ShownInsideMenu() const override;
void OnToolbarActionViewDragDone() override;
views::LabelButton* GetOverflowReferenceView() const override;
gfx::Size GetToolbarActionSize() override;
void WriteDragDataForView(View* sender,
const gfx::Point& press_pt,
ui::OSExchangeData* data) override;
int GetDragOperationsForView(View* sender, const gfx::Point& p) override;
bool CanStartDragForView(View* sender,
const gfx::Point& press_pt,
const gfx::Point& p) override;
ToolbarActionView* GetViewForId(const std::string& id); ToolbarActionView* GetViewForId(const std::string& id);
void ShowActiveBubble( void ShowActiveBubble(
...@@ -121,29 +142,6 @@ class ExtensionsToolbarContainer : public ToolbarIconContainerView, ...@@ -121,29 +142,6 @@ class ExtensionsToolbarContainer : public ToolbarIconContainerView,
void OnToolbarModelInitialized() override; void OnToolbarModelInitialized() override;
void OnToolbarPinnedActionsChanged() override; void OnToolbarPinnedActionsChanged() override;
// ToolbarActionView::Delegate:
content::WebContents* GetCurrentWebContents() override;
bool ShownInsideMenu() const override;
void OnToolbarActionViewDragDone() override;
views::LabelButton* GetOverflowReferenceView() const override;
gfx::Size GetToolbarActionSize() override;
void WriteDragDataForView(View* sender,
const gfx::Point& press_pt,
ui::OSExchangeData* data) override;
int GetDragOperationsForView(View* sender, const gfx::Point& p) override;
bool CanStartDragForView(View* sender,
const gfx::Point& press_pt,
const gfx::Point& p) override;
// views::View:
bool GetDropFormats(int* formats,
std::set<ui::ClipboardFormatType>* format_types) override;
bool AreDropTypesRequired() override;
bool CanDrop(const ui::OSExchangeData& data) override;
int OnDragUpdated(const ui::DropTargetEvent& event) override;
void OnDragExited() override;
int OnPerformDrop(const ui::DropTargetEvent& event) override;
// views::WidgetObserver: // views::WidgetObserver:
void OnWidgetClosing(views::Widget* widget) override; void OnWidgetClosing(views::Widget* widget) override;
void OnWidgetDestroying(views::Widget* widget) override; void OnWidgetDestroying(views::Widget* widget) override;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment