Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Side by Side Diff: chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views_unittest.cc

Issue 2206693002: Improve settings override bubble to indicate policy installed extensions (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed failing tests ToolbarActionsBarBubbleViewsTest.TestClickLearnMoreLink and TestBubbleLayoutAct… Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h" 5 #include "chrome/browser/ui/views/toolbar/toolbar_actions_bar_bubble_views.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
11 #include "chrome/browser/ui/toolbar/test_toolbar_actions_bar_bubble_delegate.h" 11 #include "chrome/browser/ui/toolbar/test_toolbar_actions_bar_bubble_delegate.h"
12 #include "chrome/browser/ui/toolbar/toolbar_actions_bar_bubble_delegate.h"
13 #include "chrome/grit/generated_resources.h"
14 #include "components/grit/components_scaled_resources.h"
15 #include "ui/base/l10n/l10n_util.h"
12 #include "ui/events/event_utils.h" 16 #include "ui/events/event_utils.h"
13 #include "ui/events/test/event_generator.h" 17 #include "ui/events/test/event_generator.h"
14 #include "ui/views/controls/button/label_button.h" 18 #include "ui/views/controls/button/label_button.h"
15 #include "ui/views/controls/link.h" 19 #include "ui/views/controls/link.h"
16 #include "ui/views/test/test_widget_observer.h" 20 #include "ui/views/test/test_widget_observer.h"
17 #include "ui/views/test/views_test_base.h" 21 #include "ui/views/test/views_test_base.h"
18 #include "ui/views/widget/widget.h" 22 #include "ui/views/widget/widget.h"
19 #include "ui/views/window/dialog_client_view.h" 23 #include "ui/views/window/dialog_client_view.h"
20 24
21 class ToolbarActionsBarBubbleViewsTest : public views::ViewsTestBase { 25 class ToolbarActionsBarBubbleViewsTest : public views::ViewsTestBase {
26 public:
27 views::View* TestCreateExtraView() {
28 return (bubble_) ? bubble_->CreateExtraView() : nullptr;
29 }
30
22 protected: 31 protected:
23 ToolbarActionsBarBubbleViewsTest() {} 32 ToolbarActionsBarBubbleViewsTest() {}
24 ~ToolbarActionsBarBubbleViewsTest() override {} 33 ~ToolbarActionsBarBubbleViewsTest() override {}
25 34
26 void TearDown() override { 35 void TearDown() override {
27 anchor_widget_.reset(); 36 anchor_widget_.reset();
28 views::ViewsTestBase::TearDown(); 37 views::ViewsTestBase::TearDown();
29 } 38 }
30 39
31 std::unique_ptr<views::Widget> CreateAnchorWidget() { 40 std::unique_ptr<views::Widget> CreateAnchorWidget() {
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 EXPECT_FALSE(bubble()->item_list()); 127 EXPECT_FALSE(bubble()->item_list());
119 128
120 CloseBubble(); 129 CloseBubble();
121 } 130 }
122 131
123 TEST_F(ToolbarActionsBarBubbleViewsTest, 132 TEST_F(ToolbarActionsBarBubbleViewsTest,
124 TestBubbleLayoutActionDismissAndLearnMoreButton) { 133 TestBubbleLayoutActionDismissAndLearnMoreButton) {
125 TestToolbarActionsBarBubbleDelegate delegate(HeadingString(), BodyString(), 134 TestToolbarActionsBarBubbleDelegate delegate(HeadingString(), BodyString(),
126 ActionString()); 135 ActionString());
127 delegate.set_dismiss_button_text(DismissString()); 136 delegate.set_dismiss_button_text(DismissString());
128 delegate.set_learn_more_button_text(LearnMoreString()); 137
138 ToolbarActionsBarBubbleDelegate::ExtraViewInfo extra_view_info_linked_text;
139
140 extra_view_info_linked_text.text = LearnMoreString();
141 extra_view_info_linked_text.is_text_linked = true;
142 delegate.set_extra_view_info(extra_view_info_linked_text);
143
129 ShowBubble(&delegate); 144 ShowBubble(&delegate);
130 145
131 EXPECT_TRUE(bubble()->GetDialogClientView()->ok_button()); 146 EXPECT_TRUE(bubble()->GetDialogClientView()->ok_button());
132 EXPECT_EQ(ActionString(), 147 EXPECT_EQ(ActionString(),
133 bubble()->GetDialogClientView()->ok_button()->GetText()); 148 bubble()->GetDialogClientView()->ok_button()->GetText());
134 EXPECT_TRUE(bubble()->GetDialogClientView()->cancel_button()); 149 EXPECT_TRUE(bubble()->GetDialogClientView()->cancel_button());
135 EXPECT_EQ(DismissString(), 150 EXPECT_EQ(DismissString(),
136 bubble()->GetDialogClientView()->cancel_button()->GetText()); 151 bubble()->GetDialogClientView()->cancel_button()->GetText());
137 EXPECT_TRUE(bubble()->learn_more_button()); 152 EXPECT_TRUE(bubble()->learn_more_button());
138 EXPECT_EQ(LearnMoreString(), bubble()->learn_more_button()->text()); 153 EXPECT_EQ(LearnMoreString(), bubble()->learn_more_button()->text());
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 ShowBubble(&delegate); 268 ShowBubble(&delegate);
254 views::test::TestWidgetObserver bubble_observer(bubble_widget()); 269 views::test::TestWidgetObserver bubble_observer(bubble_widget());
255 270
256 EXPECT_FALSE(delegate.close_action()); 271 EXPECT_FALSE(delegate.close_action());
257 // Activate another widget. The bubble shouldn't close. 272 // Activate another widget. The bubble shouldn't close.
258 anchor_widget()->Activate(); 273 anchor_widget()->Activate();
259 base::RunLoop().RunUntilIdle(); 274 base::RunLoop().RunUntilIdle();
260 EXPECT_FALSE(delegate.close_action()); 275 EXPECT_FALSE(delegate.close_action());
261 CloseBubble(); 276 CloseBubble();
262 } 277 }
278
279 TEST_F(ToolbarActionsBarBubbleViewsTest, TestCreateExtraViewEmpty) {
280 TestToolbarActionsBarBubbleDelegate delegate(HeadingString(), BodyString(),
281 ActionString());
282 ToolbarActionsBarBubbleDelegate::ExtraViewInfo extra_view_info;
Devlin 2016/09/26 20:13:10 Don't we need to set this on the delegate?
catmullings 2016/10/06 18:24:19 Done.
283
284 ShowBubble(&delegate);
285
286 views::View* extra_view = TestCreateExtraView();
287 EXPECT_FALSE(extra_view);
288 CloseBubble();
289 }
290
291 TEST_F(ToolbarActionsBarBubbleViewsTest, TestCreateExtraViewIconOnly) {
292 TestToolbarActionsBarBubbleDelegate delegate(HeadingString(), BodyString(),
293 ActionString());
294 ToolbarActionsBarBubbleDelegate::ExtraViewInfo extra_view_info;
295
296 extra_view_info.resource_id = IDR_OMNIBOX_HTTPS_POLICY_WARNING;
297 delegate.set_extra_view_info(extra_view_info);
298 ShowBubble(&delegate);
299 std::unique_ptr<views::View> extra_view(TestCreateExtraView());
300 EXPECT_TRUE(extra_view);
301 EXPECT_EQ("ImageView", std::string(extra_view->GetClassName()));
302 CloseBubble();
303 }
304
305 TEST_F(ToolbarActionsBarBubbleViewsTest, TestCreateExtraViewLinkedTextOnly) {
306 TestToolbarActionsBarBubbleDelegate delegate(HeadingString(), BodyString(),
307 ActionString());
308 ToolbarActionsBarBubbleDelegate::ExtraViewInfo extra_view_info_linked_text;
309
310 extra_view_info_linked_text.text =
311 l10n_util::GetStringUTF16(IDS_EXTENSIONS_INSTALLED_BY_ADMIN);
312 extra_view_info_linked_text.is_text_linked = true;
313 delegate.set_extra_view_info(extra_view_info_linked_text);
314
315 ShowBubble(&delegate);
316
317 views::View* extra_view = TestCreateExtraView();
318 EXPECT_TRUE(extra_view);
319 EXPECT_EQ("Link", std::string(extra_view->GetClassName()));
320 CloseBubble();
321 }
322
323 TEST_F(ToolbarActionsBarBubbleViewsTest, TestCreateExtraViewLabelTextOnly) {
324 TestToolbarActionsBarBubbleDelegate delegate(HeadingString(), BodyString(),
325 ActionString());
326 ToolbarActionsBarBubbleDelegate::ExtraViewInfo extra_view_info;
327
328 extra_view_info.text =
329 l10n_util::GetStringUTF16(IDS_EXTENSIONS_INSTALLED_BY_ADMIN);
330 extra_view_info.is_text_linked = false;
331 delegate.set_extra_view_info(extra_view_info);
332
333 ShowBubble(&delegate);
334
335 views::View* extra_view = TestCreateExtraView();
336 EXPECT_TRUE(extra_view);
337 EXPECT_EQ("Label", std::string(extra_view->GetClassName()));
338 CloseBubble();
339 }
340
341 TEST_F(ToolbarActionsBarBubbleViewsTest, TestCreateExtraViewImageAndText) {
342 TestToolbarActionsBarBubbleDelegate delegate(HeadingString(), BodyString(),
343 ActionString());
344 ToolbarActionsBarBubbleDelegate::ExtraViewInfo extra_view_info;
345 extra_view_info.resource_id = IDR_OMNIBOX_HTTPS_POLICY_WARNING;
346 extra_view_info.text =
347 l10n_util::GetStringUTF16(IDS_EXTENSIONS_INSTALLED_BY_ADMIN);
348 extra_view_info.is_text_linked = false;
349 delegate.set_extra_view_info(extra_view_info);
350
351 ShowBubble(&delegate);
352
353 views::View* extra_view = TestCreateExtraView();
354 EXPECT_TRUE(extra_view);
355 EXPECT_EQ("View", std::string(extra_view->GetClassName()));
356 EXPECT_EQ(2, extra_view->child_count());
357 CloseBubble();
358 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698