OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 <stddef.h> | 5 #include <stddef.h> |
6 | 6 |
7 #include "base/auto_reset.h" | 7 #include "base/auto_reset.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "chrome/browser/content_settings/host_content_settings_map_factory.h" | 10 #include "chrome/browser/content_settings/host_content_settings_map_factory.h" |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 CONTENT_SETTINGS_TYPE_GEOLOCATION)); | 49 CONTENT_SETTINGS_TYPE_GEOLOCATION)); |
50 const ContentSettingBubbleModel::BubbleContent& bubble_content = | 50 const ContentSettingBubbleModel::BubbleContent& bubble_content = |
51 content_setting_bubble_model->bubble_content(); | 51 content_setting_bubble_model->bubble_content(); |
52 EXPECT_TRUE(bubble_content.title.empty()); | 52 EXPECT_TRUE(bubble_content.title.empty()); |
53 EXPECT_TRUE(bubble_content.radio_group.radio_items.empty()); | 53 EXPECT_TRUE(bubble_content.radio_group.radio_items.empty()); |
54 EXPECT_TRUE(bubble_content.list_items.empty()); | 54 EXPECT_TRUE(bubble_content.list_items.empty()); |
55 EXPECT_EQ(expected_domains, bubble_content.domain_lists.size()); | 55 EXPECT_EQ(expected_domains, bubble_content.domain_lists.size()); |
56 EXPECT_NE(expect_clear_link || expect_reload_hint, | 56 EXPECT_NE(expect_clear_link || expect_reload_hint, |
57 bubble_content.custom_link.empty()); | 57 bubble_content.custom_link.empty()); |
58 EXPECT_EQ(expect_clear_link, bubble_content.custom_link_enabled); | 58 EXPECT_EQ(expect_clear_link, bubble_content.custom_link_enabled); |
59 EXPECT_FALSE(bubble_content.manage_link.empty()); | 59 EXPECT_FALSE(bubble_content.manage_text.empty()); |
60 } | 60 } |
61 | 61 |
62 std::string GetDefaultAudioDevice() { | 62 std::string GetDefaultAudioDevice() { |
63 PrefService* prefs = profile()->GetPrefs(); | 63 PrefService* prefs = profile()->GetPrefs(); |
64 return prefs->GetString(prefs::kDefaultAudioCaptureDevice); | 64 return prefs->GetString(prefs::kDefaultAudioCaptureDevice); |
65 } | 65 } |
66 | 66 |
67 std::string GetDefaultVideoDevice() { | 67 std::string GetDefaultVideoDevice() { |
68 PrefService* prefs = profile()->GetPrefs(); | 68 PrefService* prefs = profile()->GetPrefs(); |
69 return prefs->GetString(prefs::kDefaultVideoCaptureDevice); | 69 return prefs->GetString(prefs::kDefaultVideoCaptureDevice); |
70 } | 70 } |
71 }; | 71 }; |
72 | 72 |
73 TEST_F(ContentSettingBubbleModelTest, ImageRadios) { | 73 TEST_F(ContentSettingBubbleModelTest, ImageRadios) { |
74 TabSpecificContentSettings* content_settings = | 74 TabSpecificContentSettings* content_settings = |
75 TabSpecificContentSettings::FromWebContents(web_contents()); | 75 TabSpecificContentSettings::FromWebContents(web_contents()); |
76 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES); | 76 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_IMAGES); |
77 | 77 |
78 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model( | 78 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model( |
79 ContentSettingBubbleModel::CreateContentSettingBubbleModel( | 79 ContentSettingBubbleModel::CreateContentSettingBubbleModel( |
80 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_IMAGES)); | 80 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_IMAGES)); |
81 const ContentSettingBubbleModel::BubbleContent& bubble_content = | 81 const ContentSettingBubbleModel::BubbleContent& bubble_content = |
82 content_setting_bubble_model->bubble_content(); | 82 content_setting_bubble_model->bubble_content(); |
83 EXPECT_FALSE(bubble_content.title.empty()); | 83 EXPECT_FALSE(bubble_content.title.empty()); |
84 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); | 84 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); |
85 EXPECT_EQ(0, bubble_content.radio_group.default_item); | 85 EXPECT_EQ(0, bubble_content.radio_group.default_item); |
86 EXPECT_TRUE(bubble_content.custom_link.empty()); | 86 EXPECT_TRUE(bubble_content.custom_link.empty()); |
87 EXPECT_FALSE(bubble_content.manage_link.empty()); | 87 EXPECT_FALSE(bubble_content.manage_text.empty()); |
88 } | 88 } |
89 | 89 |
90 TEST_F(ContentSettingBubbleModelTest, Cookies) { | 90 TEST_F(ContentSettingBubbleModelTest, Cookies) { |
91 TabSpecificContentSettings* content_settings = | 91 TabSpecificContentSettings* content_settings = |
92 TabSpecificContentSettings::FromWebContents(web_contents()); | 92 TabSpecificContentSettings::FromWebContents(web_contents()); |
93 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES); | 93 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES); |
94 | 94 |
95 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model( | 95 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model( |
96 ContentSettingBubbleModel::CreateContentSettingBubbleModel( | 96 ContentSettingBubbleModel::CreateContentSettingBubbleModel( |
97 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_COOKIES)); | 97 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_COOKIES)); |
98 const ContentSettingBubbleModel::BubbleContent& bubble_content = | 98 const ContentSettingBubbleModel::BubbleContent& bubble_content = |
99 content_setting_bubble_model->bubble_content(); | 99 content_setting_bubble_model->bubble_content(); |
100 base::string16 title = bubble_content.title; | 100 base::string16 title = bubble_content.title; |
101 EXPECT_FALSE(title.empty()); | 101 EXPECT_FALSE(title.empty()); |
102 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size()); | 102 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size()); |
103 EXPECT_FALSE(bubble_content.custom_link.empty()); | 103 EXPECT_FALSE(bubble_content.custom_link.empty()); |
104 EXPECT_TRUE(bubble_content.custom_link_enabled); | 104 EXPECT_TRUE(bubble_content.custom_link_enabled); |
105 EXPECT_FALSE(bubble_content.manage_link.empty()); | 105 EXPECT_FALSE(bubble_content.manage_text.empty()); |
106 | 106 |
107 content_settings->ClearCookieSpecificContentSettings(); | 107 content_settings->ClearCookieSpecificContentSettings(); |
108 content_settings->OnContentAllowed(CONTENT_SETTINGS_TYPE_COOKIES); | 108 content_settings->OnContentAllowed(CONTENT_SETTINGS_TYPE_COOKIES); |
109 content_setting_bubble_model.reset( | 109 content_setting_bubble_model.reset( |
110 ContentSettingBubbleModel::CreateContentSettingBubbleModel( | 110 ContentSettingBubbleModel::CreateContentSettingBubbleModel( |
111 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_COOKIES)); | 111 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_COOKIES)); |
112 const ContentSettingBubbleModel::BubbleContent& bubble_content_2 = | 112 const ContentSettingBubbleModel::BubbleContent& bubble_content_2 = |
113 content_setting_bubble_model->bubble_content(); | 113 content_setting_bubble_model->bubble_content(); |
114 | 114 |
115 EXPECT_FALSE(bubble_content_2.title.empty()); | 115 EXPECT_FALSE(bubble_content_2.title.empty()); |
116 EXPECT_NE(title, bubble_content_2.title); | 116 EXPECT_NE(title, bubble_content_2.title); |
117 ASSERT_EQ(2U, bubble_content_2.radio_group.radio_items.size()); | 117 ASSERT_EQ(2U, bubble_content_2.radio_group.radio_items.size()); |
118 EXPECT_EQ(bubble_content_2.radio_group.radio_items[0], | 118 EXPECT_EQ(bubble_content_2.radio_group.radio_items[0], |
119 l10n_util::GetStringUTF8(IDS_ALLOWED_COOKIES_NO_ACTION)); | 119 l10n_util::GetStringUTF8(IDS_ALLOWED_COOKIES_NO_ACTION)); |
120 EXPECT_EQ(bubble_content_2.radio_group.radio_items[1], | 120 EXPECT_EQ(bubble_content_2.radio_group.radio_items[1], |
121 l10n_util::GetStringFUTF8( | 121 l10n_util::GetStringFUTF8( |
122 IDS_ALLOWED_COOKIES_BLOCK, | 122 IDS_ALLOWED_COOKIES_BLOCK, |
123 url_formatter::FormatUrlForSecurityDisplay( | 123 url_formatter::FormatUrlForSecurityDisplay( |
124 web_contents()->GetURL()))); | 124 web_contents()->GetURL()))); |
125 EXPECT_FALSE(bubble_content_2.custom_link.empty()); | 125 EXPECT_FALSE(bubble_content_2.custom_link.empty()); |
126 EXPECT_TRUE(bubble_content_2.custom_link_enabled); | 126 EXPECT_TRUE(bubble_content_2.custom_link_enabled); |
127 EXPECT_FALSE(bubble_content_2.manage_link.empty()); | 127 EXPECT_FALSE(bubble_content_2.manage_text.empty()); |
128 } | 128 } |
129 | 129 |
130 TEST_F(ContentSettingBubbleModelTest, MediastreamMicAndCamera) { | 130 TEST_F(ContentSettingBubbleModelTest, MediastreamMicAndCamera) { |
131 // Required to break dependency on BrowserMainLoop. | 131 // Required to break dependency on BrowserMainLoop. |
132 MediaCaptureDevicesDispatcher::GetInstance()-> | 132 MediaCaptureDevicesDispatcher::GetInstance()-> |
133 DisableDeviceEnumerationForTesting(); | 133 DisableDeviceEnumerationForTesting(); |
134 | 134 |
135 TabSpecificContentSettings* content_settings = | 135 TabSpecificContentSettings* content_settings = |
136 TabSpecificContentSettings::FromWebContents(web_contents()); | 136 TabSpecificContentSettings::FromWebContents(web_contents()); |
137 std::string request_host = "google.com"; | 137 std::string request_host = "google.com"; |
(...skipping 19 matching lines...) Expand all Loading... |
157 EXPECT_EQ(bubble_content.radio_group.radio_items[0], | 157 EXPECT_EQ(bubble_content.radio_group.radio_items[0], |
158 l10n_util::GetStringFUTF8( | 158 l10n_util::GetStringFUTF8( |
159 IDS_ALLOWED_MEDIASTREAM_MIC_AND_CAMERA_NO_ACTION, | 159 IDS_ALLOWED_MEDIASTREAM_MIC_AND_CAMERA_NO_ACTION, |
160 url_formatter::FormatUrlForSecurityDisplay(security_origin))); | 160 url_formatter::FormatUrlForSecurityDisplay(security_origin))); |
161 EXPECT_EQ(bubble_content.radio_group.radio_items[1], | 161 EXPECT_EQ(bubble_content.radio_group.radio_items[1], |
162 l10n_util::GetStringUTF8( | 162 l10n_util::GetStringUTF8( |
163 IDS_ALLOWED_MEDIASTREAM_MIC_AND_CAMERA_BLOCK)); | 163 IDS_ALLOWED_MEDIASTREAM_MIC_AND_CAMERA_BLOCK)); |
164 EXPECT_EQ(0, bubble_content.radio_group.default_item); | 164 EXPECT_EQ(0, bubble_content.radio_group.default_item); |
165 EXPECT_TRUE(bubble_content.custom_link.empty()); | 165 EXPECT_TRUE(bubble_content.custom_link.empty()); |
166 EXPECT_FALSE(bubble_content.custom_link_enabled); | 166 EXPECT_FALSE(bubble_content.custom_link_enabled); |
167 EXPECT_FALSE(bubble_content.manage_link.empty()); | 167 EXPECT_FALSE(bubble_content.manage_text.empty()); |
168 EXPECT_EQ(2U, bubble_content.media_menus.size()); | 168 EXPECT_EQ(2U, bubble_content.media_menus.size()); |
169 } | 169 } |
170 | 170 |
171 TEST_F(ContentSettingBubbleModelTest, BlockedMediastreamMicAndCamera) { | 171 TEST_F(ContentSettingBubbleModelTest, BlockedMediastreamMicAndCamera) { |
172 // Required to break dependency on BrowserMainLoop. | 172 // Required to break dependency on BrowserMainLoop. |
173 MediaCaptureDevicesDispatcher::GetInstance()-> | 173 MediaCaptureDevicesDispatcher::GetInstance()-> |
174 DisableDeviceEnumerationForTesting(); | 174 DisableDeviceEnumerationForTesting(); |
175 | 175 |
176 WebContentsTester::For(web_contents())-> | 176 WebContentsTester::For(web_contents())-> |
177 NavigateAndCommit(GURL("https://www.example.com")); | 177 NavigateAndCommit(GURL("https://www.example.com")); |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
516 EXPECT_EQ(bubble_content.radio_group.radio_items[0], | 516 EXPECT_EQ(bubble_content.radio_group.radio_items[0], |
517 l10n_util::GetStringFUTF8( | 517 l10n_util::GetStringFUTF8( |
518 IDS_ALLOWED_MEDIASTREAM_MIC_NO_ACTION, | 518 IDS_ALLOWED_MEDIASTREAM_MIC_NO_ACTION, |
519 url_formatter::FormatUrlForSecurityDisplay(security_origin))); | 519 url_formatter::FormatUrlForSecurityDisplay(security_origin))); |
520 EXPECT_EQ(bubble_content.radio_group.radio_items[1], | 520 EXPECT_EQ(bubble_content.radio_group.radio_items[1], |
521 l10n_util::GetStringUTF8( | 521 l10n_util::GetStringUTF8( |
522 IDS_ALLOWED_MEDIASTREAM_MIC_BLOCK)); | 522 IDS_ALLOWED_MEDIASTREAM_MIC_BLOCK)); |
523 EXPECT_EQ(0, bubble_content.radio_group.default_item); | 523 EXPECT_EQ(0, bubble_content.radio_group.default_item); |
524 EXPECT_TRUE(bubble_content.custom_link.empty()); | 524 EXPECT_TRUE(bubble_content.custom_link.empty()); |
525 EXPECT_FALSE(bubble_content.custom_link_enabled); | 525 EXPECT_FALSE(bubble_content.custom_link_enabled); |
526 EXPECT_FALSE(bubble_content.manage_link.empty()); | 526 EXPECT_FALSE(bubble_content.manage_text.empty()); |
527 EXPECT_EQ(1U, bubble_content.media_menus.size()); | 527 EXPECT_EQ(1U, bubble_content.media_menus.size()); |
528 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, | 528 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, |
529 bubble_content.media_menus.begin()->first); | 529 bubble_content.media_menus.begin()->first); |
530 | 530 |
531 // Change the microphone access. | 531 // Change the microphone access. |
532 microphone_camera_state |= TabSpecificContentSettings::MICROPHONE_BLOCKED; | 532 microphone_camera_state |= TabSpecificContentSettings::MICROPHONE_BLOCKED; |
533 content_settings->OnMediaStreamPermissionSet(security_origin, | 533 content_settings->OnMediaStreamPermissionSet(security_origin, |
534 microphone_camera_state, | 534 microphone_camera_state, |
535 GetDefaultAudioDevice(), | 535 GetDefaultAudioDevice(), |
536 std::string(), | 536 std::string(), |
(...skipping 10 matching lines...) Expand all Loading... |
547 EXPECT_EQ(new_bubble_content.radio_group.radio_items[0], | 547 EXPECT_EQ(new_bubble_content.radio_group.radio_items[0], |
548 l10n_util::GetStringFUTF8( | 548 l10n_util::GetStringFUTF8( |
549 IDS_BLOCKED_MEDIASTREAM_MIC_ASK, | 549 IDS_BLOCKED_MEDIASTREAM_MIC_ASK, |
550 url_formatter::FormatUrlForSecurityDisplay(security_origin))); | 550 url_formatter::FormatUrlForSecurityDisplay(security_origin))); |
551 EXPECT_EQ(new_bubble_content.radio_group.radio_items[1], | 551 EXPECT_EQ(new_bubble_content.radio_group.radio_items[1], |
552 l10n_util::GetStringUTF8( | 552 l10n_util::GetStringUTF8( |
553 IDS_BLOCKED_MEDIASTREAM_MIC_NO_ACTION)); | 553 IDS_BLOCKED_MEDIASTREAM_MIC_NO_ACTION)); |
554 EXPECT_EQ(1, new_bubble_content.radio_group.default_item); | 554 EXPECT_EQ(1, new_bubble_content.radio_group.default_item); |
555 EXPECT_TRUE(new_bubble_content.custom_link.empty()); | 555 EXPECT_TRUE(new_bubble_content.custom_link.empty()); |
556 EXPECT_FALSE(new_bubble_content.custom_link_enabled); | 556 EXPECT_FALSE(new_bubble_content.custom_link_enabled); |
557 EXPECT_FALSE(new_bubble_content.manage_link.empty()); | 557 EXPECT_FALSE(new_bubble_content.manage_text.empty()); |
558 EXPECT_EQ(1U, new_bubble_content.media_menus.size()); | 558 EXPECT_EQ(1U, new_bubble_content.media_menus.size()); |
559 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, | 559 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, |
560 new_bubble_content.media_menus.begin()->first); | 560 new_bubble_content.media_menus.begin()->first); |
561 } | 561 } |
562 | 562 |
563 TEST_F(ContentSettingBubbleModelTest, MediastreamCamera) { | 563 TEST_F(ContentSettingBubbleModelTest, MediastreamCamera) { |
564 // Required to break dependency on BrowserMainLoop. | 564 // Required to break dependency on BrowserMainLoop. |
565 MediaCaptureDevicesDispatcher::GetInstance()-> | 565 MediaCaptureDevicesDispatcher::GetInstance()-> |
566 DisableDeviceEnumerationForTesting(); | 566 DisableDeviceEnumerationForTesting(); |
567 | 567 |
(...skipping 21 matching lines...) Expand all Loading... |
589 EXPECT_EQ(bubble_content.radio_group.radio_items[0], | 589 EXPECT_EQ(bubble_content.radio_group.radio_items[0], |
590 l10n_util::GetStringFUTF8( | 590 l10n_util::GetStringFUTF8( |
591 IDS_ALLOWED_MEDIASTREAM_CAMERA_NO_ACTION, | 591 IDS_ALLOWED_MEDIASTREAM_CAMERA_NO_ACTION, |
592 url_formatter::FormatUrlForSecurityDisplay(security_origin))); | 592 url_formatter::FormatUrlForSecurityDisplay(security_origin))); |
593 EXPECT_EQ(bubble_content.radio_group.radio_items[1], | 593 EXPECT_EQ(bubble_content.radio_group.radio_items[1], |
594 l10n_util::GetStringUTF8( | 594 l10n_util::GetStringUTF8( |
595 IDS_ALLOWED_MEDIASTREAM_CAMERA_BLOCK)); | 595 IDS_ALLOWED_MEDIASTREAM_CAMERA_BLOCK)); |
596 EXPECT_EQ(0, bubble_content.radio_group.default_item); | 596 EXPECT_EQ(0, bubble_content.radio_group.default_item); |
597 EXPECT_TRUE(bubble_content.custom_link.empty()); | 597 EXPECT_TRUE(bubble_content.custom_link.empty()); |
598 EXPECT_FALSE(bubble_content.custom_link_enabled); | 598 EXPECT_FALSE(bubble_content.custom_link_enabled); |
599 EXPECT_FALSE(bubble_content.manage_link.empty()); | 599 EXPECT_FALSE(bubble_content.manage_text.empty()); |
600 EXPECT_EQ(1U, bubble_content.media_menus.size()); | 600 EXPECT_EQ(1U, bubble_content.media_menus.size()); |
601 EXPECT_EQ(content::MEDIA_DEVICE_VIDEO_CAPTURE, | 601 EXPECT_EQ(content::MEDIA_DEVICE_VIDEO_CAPTURE, |
602 bubble_content.media_menus.begin()->first); | 602 bubble_content.media_menus.begin()->first); |
603 | 603 |
604 // Change the camera access. | 604 // Change the camera access. |
605 microphone_camera_state |= TabSpecificContentSettings::CAMERA_BLOCKED; | 605 microphone_camera_state |= TabSpecificContentSettings::CAMERA_BLOCKED; |
606 content_settings->OnMediaStreamPermissionSet(security_origin, | 606 content_settings->OnMediaStreamPermissionSet(security_origin, |
607 microphone_camera_state, | 607 microphone_camera_state, |
608 std::string(), | 608 std::string(), |
609 GetDefaultVideoDevice(), | 609 GetDefaultVideoDevice(), |
(...skipping 10 matching lines...) Expand all Loading... |
620 EXPECT_EQ(new_bubble_content.radio_group.radio_items[0], | 620 EXPECT_EQ(new_bubble_content.radio_group.radio_items[0], |
621 l10n_util::GetStringFUTF8( | 621 l10n_util::GetStringFUTF8( |
622 IDS_BLOCKED_MEDIASTREAM_CAMERA_ASK, | 622 IDS_BLOCKED_MEDIASTREAM_CAMERA_ASK, |
623 url_formatter::FormatUrlForSecurityDisplay(security_origin))); | 623 url_formatter::FormatUrlForSecurityDisplay(security_origin))); |
624 EXPECT_EQ(new_bubble_content.radio_group.radio_items[1], | 624 EXPECT_EQ(new_bubble_content.radio_group.radio_items[1], |
625 l10n_util::GetStringUTF8( | 625 l10n_util::GetStringUTF8( |
626 IDS_BLOCKED_MEDIASTREAM_CAMERA_NO_ACTION)); | 626 IDS_BLOCKED_MEDIASTREAM_CAMERA_NO_ACTION)); |
627 EXPECT_EQ(1, new_bubble_content.radio_group.default_item); | 627 EXPECT_EQ(1, new_bubble_content.radio_group.default_item); |
628 EXPECT_TRUE(new_bubble_content.custom_link.empty()); | 628 EXPECT_TRUE(new_bubble_content.custom_link.empty()); |
629 EXPECT_FALSE(new_bubble_content.custom_link_enabled); | 629 EXPECT_FALSE(new_bubble_content.custom_link_enabled); |
630 EXPECT_FALSE(new_bubble_content.manage_link.empty()); | 630 EXPECT_FALSE(new_bubble_content.manage_text.empty()); |
631 EXPECT_EQ(1U, new_bubble_content.media_menus.size()); | 631 EXPECT_EQ(1U, new_bubble_content.media_menus.size()); |
632 EXPECT_EQ(content::MEDIA_DEVICE_VIDEO_CAPTURE, | 632 EXPECT_EQ(content::MEDIA_DEVICE_VIDEO_CAPTURE, |
633 new_bubble_content.media_menus.begin()->first); | 633 new_bubble_content.media_menus.begin()->first); |
634 } | 634 } |
635 | 635 |
636 TEST_F(ContentSettingBubbleModelTest, AccumulateMediastreamMicAndCamera) { | 636 TEST_F(ContentSettingBubbleModelTest, AccumulateMediastreamMicAndCamera) { |
637 // Required to break dependency on BrowserMainLoop. | 637 // Required to break dependency on BrowserMainLoop. |
638 MediaCaptureDevicesDispatcher::GetInstance()-> | 638 MediaCaptureDevicesDispatcher::GetInstance()-> |
639 DisableDeviceEnumerationForTesting(); | 639 DisableDeviceEnumerationForTesting(); |
640 | 640 |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
714 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_PLUGINS)); | 714 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_PLUGINS)); |
715 const ContentSettingBubbleModel::BubbleContent& bubble_content = | 715 const ContentSettingBubbleModel::BubbleContent& bubble_content = |
716 content_setting_bubble_model->bubble_content(); | 716 content_setting_bubble_model->bubble_content(); |
717 EXPECT_FALSE(bubble_content.title.empty()); | 717 EXPECT_FALSE(bubble_content.title.empty()); |
718 ASSERT_EQ(1U, bubble_content.list_items.size()); | 718 ASSERT_EQ(1U, bubble_content.list_items.size()); |
719 EXPECT_EQ(plugin_name, | 719 EXPECT_EQ(plugin_name, |
720 base::ASCIIToUTF16(bubble_content.list_items[0].title)); | 720 base::ASCIIToUTF16(bubble_content.list_items[0].title)); |
721 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); | 721 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); |
722 EXPECT_FALSE(bubble_content.custom_link.empty()); | 722 EXPECT_FALSE(bubble_content.custom_link.empty()); |
723 EXPECT_TRUE(bubble_content.custom_link_enabled); | 723 EXPECT_TRUE(bubble_content.custom_link_enabled); |
724 EXPECT_FALSE(bubble_content.manage_link.empty()); | 724 EXPECT_FALSE(bubble_content.manage_text.empty()); |
725 EXPECT_FALSE(bubble_content.learn_more_link.empty()); | 725 EXPECT_FALSE(bubble_content.learn_more_link.empty()); |
726 } | 726 } |
727 | 727 |
728 TEST_F(ContentSettingBubbleModelTest, PepperBroker) { | 728 TEST_F(ContentSettingBubbleModelTest, PepperBroker) { |
729 TabSpecificContentSettings* content_settings = | 729 TabSpecificContentSettings* content_settings = |
730 TabSpecificContentSettings::FromWebContents(web_contents()); | 730 TabSpecificContentSettings::FromWebContents(web_contents()); |
731 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_PPAPI_BROKER); | 731 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_PPAPI_BROKER); |
732 | 732 |
733 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model( | 733 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model( |
734 ContentSettingBubbleModel::CreateContentSettingBubbleModel( | 734 ContentSettingBubbleModel::CreateContentSettingBubbleModel( |
735 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_PPAPI_BROKER)); | 735 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_PPAPI_BROKER)); |
736 const ContentSettingBubbleModel::BubbleContent& bubble_content = | 736 const ContentSettingBubbleModel::BubbleContent& bubble_content = |
737 content_setting_bubble_model->bubble_content(); | 737 content_setting_bubble_model->bubble_content(); |
738 | 738 |
739 base::string16 title = bubble_content.title; | 739 base::string16 title = bubble_content.title; |
740 EXPECT_FALSE(title.empty()); | 740 EXPECT_FALSE(title.empty()); |
741 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size()); | 741 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size()); |
742 std::string radio1 = bubble_content.radio_group.radio_items[0]; | 742 std::string radio1 = bubble_content.radio_group.radio_items[0]; |
743 std::string radio2 = bubble_content.radio_group.radio_items[1]; | 743 std::string radio2 = bubble_content.radio_group.radio_items[1]; |
744 EXPECT_FALSE(bubble_content.custom_link_enabled); | 744 EXPECT_FALSE(bubble_content.custom_link_enabled); |
745 EXPECT_FALSE(bubble_content.manage_link.empty()); | 745 EXPECT_FALSE(bubble_content.manage_text.empty()); |
746 | 746 |
747 content_settings->ClearBlockedContentSettingsExceptForCookies(); | 747 content_settings->ClearBlockedContentSettingsExceptForCookies(); |
748 content_settings->OnContentAllowed(CONTENT_SETTINGS_TYPE_PPAPI_BROKER); | 748 content_settings->OnContentAllowed(CONTENT_SETTINGS_TYPE_PPAPI_BROKER); |
749 content_setting_bubble_model.reset( | 749 content_setting_bubble_model.reset( |
750 ContentSettingBubbleModel::CreateContentSettingBubbleModel( | 750 ContentSettingBubbleModel::CreateContentSettingBubbleModel( |
751 NULL, web_contents(), profile(), | 751 NULL, web_contents(), profile(), |
752 CONTENT_SETTINGS_TYPE_PPAPI_BROKER)); | 752 CONTENT_SETTINGS_TYPE_PPAPI_BROKER)); |
753 const ContentSettingBubbleModel::BubbleContent& bubble_content_2 = | 753 const ContentSettingBubbleModel::BubbleContent& bubble_content_2 = |
754 content_setting_bubble_model->bubble_content(); | 754 content_setting_bubble_model->bubble_content(); |
755 | 755 |
756 EXPECT_FALSE(bubble_content_2.title.empty()); | 756 EXPECT_FALSE(bubble_content_2.title.empty()); |
757 EXPECT_NE(title, bubble_content_2.title); | 757 EXPECT_NE(title, bubble_content_2.title); |
758 ASSERT_EQ(2U, bubble_content_2.radio_group.radio_items.size()); | 758 ASSERT_EQ(2U, bubble_content_2.radio_group.radio_items.size()); |
759 EXPECT_NE(radio1, bubble_content_2.radio_group.radio_items[0]); | 759 EXPECT_NE(radio1, bubble_content_2.radio_group.radio_items[0]); |
760 EXPECT_NE(radio2, bubble_content_2.radio_group.radio_items[1]); | 760 EXPECT_NE(radio2, bubble_content_2.radio_group.radio_items[1]); |
761 EXPECT_FALSE(bubble_content_2.custom_link_enabled); | 761 EXPECT_FALSE(bubble_content_2.custom_link_enabled); |
762 EXPECT_FALSE(bubble_content_2.manage_link.empty()); | 762 EXPECT_FALSE(bubble_content_2.manage_text.empty()); |
763 } | 763 } |
764 | 764 |
765 TEST_F(ContentSettingBubbleModelTest, Geolocation) { | 765 TEST_F(ContentSettingBubbleModelTest, Geolocation) { |
766 const GURL page_url("http://toplevel.example/"); | 766 const GURL page_url("http://toplevel.example/"); |
767 const GURL frame1_url("http://host1.example/"); | 767 const GURL frame1_url("http://host1.example/"); |
768 const GURL frame2_url("http://host2.example:999/"); | 768 const GURL frame2_url("http://host2.example:999/"); |
769 | 769 |
770 NavigateAndCommit(page_url); | 770 NavigateAndCommit(page_url); |
771 TabSpecificContentSettings* content_settings = | 771 TabSpecificContentSettings* content_settings = |
772 TabSpecificContentSettings::FromWebContents(web_contents()); | 772 TabSpecificContentSettings::FromWebContents(web_contents()); |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
824 NULL, web_contents(), profile(), NULL); | 824 NULL, web_contents(), profile(), NULL); |
825 | 825 |
826 const ContentSettingBubbleModel::BubbleContent& bubble_content = | 826 const ContentSettingBubbleModel::BubbleContent& bubble_content = |
827 content_setting_bubble_model.bubble_content(); | 827 content_setting_bubble_model.bubble_content(); |
828 EXPECT_FALSE(bubble_content.title.empty()); | 828 EXPECT_FALSE(bubble_content.title.empty()); |
829 EXPECT_FALSE(bubble_content.radio_group.radio_items.empty()); | 829 EXPECT_FALSE(bubble_content.radio_group.radio_items.empty()); |
830 EXPECT_TRUE(bubble_content.list_items.empty()); | 830 EXPECT_TRUE(bubble_content.list_items.empty()); |
831 EXPECT_TRUE(bubble_content.domain_lists.empty()); | 831 EXPECT_TRUE(bubble_content.domain_lists.empty()); |
832 EXPECT_TRUE(bubble_content.custom_link.empty()); | 832 EXPECT_TRUE(bubble_content.custom_link.empty()); |
833 EXPECT_FALSE(bubble_content.custom_link_enabled); | 833 EXPECT_FALSE(bubble_content.custom_link_enabled); |
834 EXPECT_FALSE(bubble_content.manage_link.empty()); | 834 EXPECT_FALSE(bubble_content.manage_text.empty()); |
835 } | 835 } |
836 | 836 |
837 class FakeDelegate : public ProtocolHandlerRegistry::Delegate { | 837 class FakeDelegate : public ProtocolHandlerRegistry::Delegate { |
838 public: | 838 public: |
839 void RegisterExternalHandler(const std::string& protocol) override { | 839 void RegisterExternalHandler(const std::string& protocol) override { |
840 // Overrides in order to not register the handler with the | 840 // Overrides in order to not register the handler with the |
841 // ChildProcessSecurityPolicy. That has persistent and unalterable | 841 // ChildProcessSecurityPolicy. That has persistent and unalterable |
842 // side effects on other tests. | 842 // side effects on other tests. |
843 } | 843 } |
844 | 844 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
930 bubble_content.title, | 930 bubble_content.title, |
931 l10n_util::GetStringUTF16(IDS_FILTERED_DECEPTIVE_CONTENT_PROMPT_TITLE)); | 931 l10n_util::GetStringUTF16(IDS_FILTERED_DECEPTIVE_CONTENT_PROMPT_TITLE)); |
932 EXPECT_EQ(bubble_content.message, | 932 EXPECT_EQ(bubble_content.message, |
933 l10n_util::GetStringUTF16( | 933 l10n_util::GetStringUTF16( |
934 IDS_FILTERED_DECEPTIVE_CONTENT_PROMPT_EXPLANATION)); | 934 IDS_FILTERED_DECEPTIVE_CONTENT_PROMPT_EXPLANATION)); |
935 EXPECT_EQ(0U, bubble_content.radio_group.radio_items.size()); | 935 EXPECT_EQ(0U, bubble_content.radio_group.radio_items.size()); |
936 EXPECT_EQ(0, bubble_content.radio_group.default_item); | 936 EXPECT_EQ(0, bubble_content.radio_group.default_item); |
937 EXPECT_TRUE(bubble_content.custom_link.empty()); | 937 EXPECT_TRUE(bubble_content.custom_link.empty()); |
938 EXPECT_FALSE(bubble_content.custom_link_enabled); | 938 EXPECT_FALSE(bubble_content.custom_link_enabled); |
939 EXPECT_EQ( | 939 EXPECT_EQ( |
940 bubble_content.manage_link, | 940 bubble_content.manage_text, |
941 l10n_util::GetStringUTF8(IDS_FILTERED_DECEPTIVE_CONTENT_PROMPT_RELOAD)); | 941 l10n_util::GetStringUTF8(IDS_FILTERED_DECEPTIVE_CONTENT_PROMPT_RELOAD)); |
942 EXPECT_EQ(0U, bubble_content.media_menus.size()); | 942 EXPECT_EQ(0U, bubble_content.media_menus.size()); |
943 } | 943 } |
OLD | NEW |