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

Side by Side Diff: chrome/browser/ui/content_settings/content_setting_bubble_model_unittest.cc

Issue 1865213004: Convert //chrome/browser/ui from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 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 (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 25 matching lines...) Expand all
36 protected: 36 protected:
37 void SetUp() override { 37 void SetUp() override {
38 ChromeRenderViewHostTestHarness::SetUp(); 38 ChromeRenderViewHostTestHarness::SetUp();
39 TabSpecificContentSettings::CreateForWebContents(web_contents()); 39 TabSpecificContentSettings::CreateForWebContents(web_contents());
40 InfoBarService::CreateForWebContents(web_contents()); 40 InfoBarService::CreateForWebContents(web_contents());
41 } 41 }
42 42
43 void CheckGeolocationBubble(size_t expected_domains, 43 void CheckGeolocationBubble(size_t expected_domains,
44 bool expect_clear_link, 44 bool expect_clear_link,
45 bool expect_reload_hint) { 45 bool expect_reload_hint) {
46 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 46 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
47 ContentSettingBubbleModel::CreateContentSettingBubbleModel( 47 ContentSettingBubbleModel::CreateContentSettingBubbleModel(
48 NULL, web_contents(), profile(), 48 NULL, web_contents(), profile(),
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,
(...skipping 11 matching lines...) Expand all
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 scoped_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(), 80 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_IMAGES));
81 CONTENT_SETTINGS_TYPE_IMAGES));
82 const ContentSettingBubbleModel::BubbleContent& bubble_content = 81 const ContentSettingBubbleModel::BubbleContent& bubble_content =
83 content_setting_bubble_model->bubble_content(); 82 content_setting_bubble_model->bubble_content();
84 EXPECT_FALSE(bubble_content.title.empty()); 83 EXPECT_FALSE(bubble_content.title.empty());
85 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); 84 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size());
86 EXPECT_EQ(0, bubble_content.radio_group.default_item); 85 EXPECT_EQ(0, bubble_content.radio_group.default_item);
87 EXPECT_TRUE(bubble_content.custom_link.empty()); 86 EXPECT_TRUE(bubble_content.custom_link.empty());
88 EXPECT_FALSE(bubble_content.manage_link.empty()); 87 EXPECT_FALSE(bubble_content.manage_link.empty());
89 } 88 }
90 89
91 TEST_F(ContentSettingBubbleModelTest, Cookies) { 90 TEST_F(ContentSettingBubbleModelTest, Cookies) {
92 TabSpecificContentSettings* content_settings = 91 TabSpecificContentSettings* content_settings =
93 TabSpecificContentSettings::FromWebContents(web_contents()); 92 TabSpecificContentSettings::FromWebContents(web_contents());
94 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES); 93 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_COOKIES);
95 94
96 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 95 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
97 ContentSettingBubbleModel::CreateContentSettingBubbleModel( 96 ContentSettingBubbleModel::CreateContentSettingBubbleModel(
98 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_COOKIES)); 97 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_COOKIES));
99 const ContentSettingBubbleModel::BubbleContent& bubble_content = 98 const ContentSettingBubbleModel::BubbleContent& bubble_content =
100 content_setting_bubble_model->bubble_content(); 99 content_setting_bubble_model->bubble_content();
101 std::string title = bubble_content.title; 100 std::string title = bubble_content.title;
102 EXPECT_FALSE(title.empty()); 101 EXPECT_FALSE(title.empty());
103 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size()); 102 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size());
104 EXPECT_FALSE(bubble_content.custom_link.empty()); 103 EXPECT_FALSE(bubble_content.custom_link.empty());
105 EXPECT_TRUE(bubble_content.custom_link_enabled); 104 EXPECT_TRUE(bubble_content.custom_link_enabled);
106 EXPECT_FALSE(bubble_content.manage_link.empty()); 105 EXPECT_FALSE(bubble_content.manage_link.empty());
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state = 139 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state =
141 TabSpecificContentSettings::MICROPHONE_ACCESSED | 140 TabSpecificContentSettings::MICROPHONE_ACCESSED |
142 TabSpecificContentSettings::CAMERA_ACCESSED; 141 TabSpecificContentSettings::CAMERA_ACCESSED;
143 content_settings->OnMediaStreamPermissionSet(security_origin, 142 content_settings->OnMediaStreamPermissionSet(security_origin,
144 microphone_camera_state, 143 microphone_camera_state,
145 GetDefaultAudioDevice(), 144 GetDefaultAudioDevice(),
146 GetDefaultVideoDevice(), 145 GetDefaultVideoDevice(),
147 std::string(), 146 std::string(),
148 std::string()); 147 std::string());
149 148
150 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 149 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
151 new ContentSettingMediaStreamBubbleModel( 150 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
152 nullptr, web_contents(), profile())); 151 profile()));
153 const ContentSettingBubbleModel::BubbleContent& bubble_content = 152 const ContentSettingBubbleModel::BubbleContent& bubble_content =
154 content_setting_bubble_model->bubble_content(); 153 content_setting_bubble_model->bubble_content();
155 EXPECT_EQ(bubble_content.title, 154 EXPECT_EQ(bubble_content.title,
156 l10n_util::GetStringUTF8(IDS_MICROPHONE_CAMERA_ALLOWED)); 155 l10n_util::GetStringUTF8(IDS_MICROPHONE_CAMERA_ALLOWED));
157 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); 156 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size());
158 EXPECT_EQ(bubble_content.radio_group.radio_items[0], 157 EXPECT_EQ(bubble_content.radio_group.radio_items[0],
159 l10n_util::GetStringFUTF8( 158 l10n_util::GetStringFUTF8(
160 IDS_ALLOWED_MEDIASTREAM_MIC_AND_CAMERA_NO_ACTION, 159 IDS_ALLOWED_MEDIASTREAM_MIC_AND_CAMERA_NO_ACTION,
161 url_formatter::FormatUrlForSecurityDisplay(security_origin))); 160 url_formatter::FormatUrlForSecurityDisplay(security_origin)));
162 EXPECT_EQ(bubble_content.radio_group.radio_items[1], 161 EXPECT_EQ(bubble_content.radio_group.radio_items[1],
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 TabSpecificContentSettings::MICROPHONE_BLOCKED | 194 TabSpecificContentSettings::MICROPHONE_BLOCKED |
196 TabSpecificContentSettings::CAMERA_ACCESSED | 195 TabSpecificContentSettings::CAMERA_ACCESSED |
197 TabSpecificContentSettings::CAMERA_BLOCKED; 196 TabSpecificContentSettings::CAMERA_BLOCKED;
198 content_settings->OnMediaStreamPermissionSet(url, 197 content_settings->OnMediaStreamPermissionSet(url,
199 microphone_camera_state, 198 microphone_camera_state,
200 GetDefaultAudioDevice(), 199 GetDefaultAudioDevice(),
201 GetDefaultVideoDevice(), 200 GetDefaultVideoDevice(),
202 std::string(), 201 std::string(),
203 std::string()); 202 std::string());
204 { 203 {
205 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 204 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
206 new ContentSettingMediaStreamBubbleModel( 205 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
207 nullptr, web_contents(), profile())); 206 profile()));
208 const ContentSettingBubbleModel::BubbleContent& bubble_content = 207 const ContentSettingBubbleModel::BubbleContent& bubble_content =
209 content_setting_bubble_model->bubble_content(); 208 content_setting_bubble_model->bubble_content();
210 // Test if the correct radio item is selected for the blocked mediastream 209 // Test if the correct radio item is selected for the blocked mediastream
211 // setting. 210 // setting.
212 EXPECT_EQ(1, bubble_content.radio_group.default_item); 211 EXPECT_EQ(1, bubble_content.radio_group.default_item);
213 } 212 }
214 213
215 // Test that the media settings where not changed. 214 // Test that the media settings where not changed.
216 EXPECT_EQ(CONTENT_SETTING_BLOCK, 215 EXPECT_EQ(CONTENT_SETTING_BLOCK,
217 host_content_settings_map->GetContentSetting( 216 host_content_settings_map->GetContentSetting(
218 url, 217 url,
219 url, 218 url,
220 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, 219 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
221 std::string())); 220 std::string()));
222 EXPECT_EQ(CONTENT_SETTING_BLOCK, 221 EXPECT_EQ(CONTENT_SETTING_BLOCK,
223 host_content_settings_map->GetContentSetting( 222 host_content_settings_map->GetContentSetting(
224 url, 223 url,
225 url, 224 url,
226 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, 225 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA,
227 std::string())); 226 std::string()));
228 227
229 { 228 {
230 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 229 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
231 new ContentSettingMediaStreamBubbleModel( 230 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
232 nullptr, web_contents(), profile())); 231 profile()));
233 // Change the radio setting. 232 // Change the radio setting.
234 content_setting_bubble_model->OnRadioClicked(0); 233 content_setting_bubble_model->OnRadioClicked(0);
235 } 234 }
236 // Test that the media setting were change correctly. 235 // Test that the media setting were change correctly.
237 EXPECT_EQ(CONTENT_SETTING_ALLOW, 236 EXPECT_EQ(CONTENT_SETTING_ALLOW,
238 host_content_settings_map->GetContentSetting( 237 host_content_settings_map->GetContentSetting(
239 url, 238 url,
240 url, 239 url,
241 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, 240 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
242 std::string())); 241 std::string()));
(...skipping 28 matching lines...) Expand all
271 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state = 270 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state =
272 TabSpecificContentSettings::MICROPHONE_ACCESSED | 271 TabSpecificContentSettings::MICROPHONE_ACCESSED |
273 TabSpecificContentSettings::MICROPHONE_BLOCKED; 272 TabSpecificContentSettings::MICROPHONE_BLOCKED;
274 content_settings->OnMediaStreamPermissionSet(url, 273 content_settings->OnMediaStreamPermissionSet(url,
275 microphone_camera_state, 274 microphone_camera_state,
276 GetDefaultAudioDevice(), 275 GetDefaultAudioDevice(),
277 std::string(), 276 std::string(),
278 std::string(), 277 std::string(),
279 std::string()); 278 std::string());
280 { 279 {
281 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 280 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
282 new ContentSettingMediaStreamBubbleModel( 281 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
283 nullptr, web_contents(), profile())); 282 profile()));
284 const ContentSettingBubbleModel::BubbleContent& bubble_content = 283 const ContentSettingBubbleModel::BubbleContent& bubble_content =
285 content_setting_bubble_model->bubble_content(); 284 content_setting_bubble_model->bubble_content();
286 // Test if the correct radio item is selected for the blocked mediastream 285 // Test if the correct radio item is selected for the blocked mediastream
287 // setting. 286 // setting.
288 EXPECT_EQ(1, bubble_content.radio_group.default_item); 287 EXPECT_EQ(1, bubble_content.radio_group.default_item);
289 // Change the radio setting. 288 // Change the radio setting.
290 content_setting_bubble_model->OnRadioClicked(0); 289 content_setting_bubble_model->OnRadioClicked(0);
291 } 290 }
292 // Test that the setting was changed. 291 // Test that the setting was changed.
293 EXPECT_EQ(CONTENT_SETTING_ALLOW, 292 EXPECT_EQ(CONTENT_SETTING_ALLOW,
294 host_content_settings_map->GetContentSetting( 293 host_content_settings_map->GetContentSetting(
295 url, 294 url,
296 url, 295 url,
297 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, 296 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
298 std::string())); 297 std::string()));
299 298
300 { 299 {
301 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 300 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
302 new ContentSettingMediaStreamBubbleModel( 301 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
303 nullptr, web_contents(), profile())); 302 profile()));
304 const ContentSettingBubbleModel::BubbleContent& bubble_content = 303 const ContentSettingBubbleModel::BubbleContent& bubble_content =
305 content_setting_bubble_model->bubble_content(); 304 content_setting_bubble_model->bubble_content();
306 // Test that the reload hint is displayed. 305 // Test that the reload hint is displayed.
307 EXPECT_FALSE(bubble_content.custom_link_enabled); 306 EXPECT_FALSE(bubble_content.custom_link_enabled);
308 EXPECT_EQ(bubble_content.custom_link, l10n_util::GetStringUTF8( 307 EXPECT_EQ(bubble_content.custom_link, l10n_util::GetStringUTF8(
309 IDS_MEDIASTREAM_SETTING_CHANGED_MESSAGE)); 308 IDS_MEDIASTREAM_SETTING_CHANGED_MESSAGE));
310 309
311 EXPECT_EQ(0, bubble_content.radio_group.default_item); 310 EXPECT_EQ(0, bubble_content.radio_group.default_item);
312 // Restore the radio setting (to block). 311 // Restore the radio setting (to block).
313 content_setting_bubble_model->OnRadioClicked(1); 312 content_setting_bubble_model->OnRadioClicked(1);
314 } 313 }
315 // Test that the media settings were changed again. 314 // Test that the media settings were changed again.
316 EXPECT_EQ(CONTENT_SETTING_BLOCK, 315 EXPECT_EQ(CONTENT_SETTING_BLOCK,
317 host_content_settings_map->GetContentSetting( 316 host_content_settings_map->GetContentSetting(
318 url, 317 url,
319 url, 318 url,
320 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC, 319 CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
321 std::string())); 320 std::string()));
322 321
323 { 322 {
324 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 323 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
325 new ContentSettingMediaStreamBubbleModel( 324 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
326 nullptr, web_contents(), profile())); 325 profile()));
327 const ContentSettingBubbleModel::BubbleContent& bubble_content = 326 const ContentSettingBubbleModel::BubbleContent& bubble_content =
328 content_setting_bubble_model->bubble_content(); 327 content_setting_bubble_model->bubble_content();
329 // Test that the reload hint is not displayed any more. 328 // Test that the reload hint is not displayed any more.
330 EXPECT_FALSE(bubble_content.custom_link_enabled); 329 EXPECT_FALSE(bubble_content.custom_link_enabled);
331 EXPECT_TRUE(bubble_content.custom_link.empty()); 330 EXPECT_TRUE(bubble_content.custom_link.empty());
332 331
333 EXPECT_EQ(1, bubble_content.radio_group.default_item); 332 EXPECT_EQ(1, bubble_content.radio_group.default_item);
334 } 333 }
335 } 334 }
336 335
(...skipping 25 matching lines...) Expand all
362 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state = 361 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state =
363 TabSpecificContentSettings::MICROPHONE_ACCESSED | 362 TabSpecificContentSettings::MICROPHONE_ACCESSED |
364 TabSpecificContentSettings::MICROPHONE_BLOCKED; 363 TabSpecificContentSettings::MICROPHONE_BLOCKED;
365 content_settings->OnMediaStreamPermissionSet(url, 364 content_settings->OnMediaStreamPermissionSet(url,
366 microphone_camera_state, 365 microphone_camera_state,
367 GetDefaultAudioDevice(), 366 GetDefaultAudioDevice(),
368 std::string(), 367 std::string(),
369 std::string(), 368 std::string(),
370 std::string()); 369 std::string());
371 { 370 {
372 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 371 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
373 new ContentSettingMediaStreamBubbleModel( 372 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
374 nullptr, web_contents(), profile())); 373 profile()));
375 const ContentSettingBubbleModel::BubbleContent& bubble_content = 374 const ContentSettingBubbleModel::BubbleContent& bubble_content =
376 content_setting_bubble_model->bubble_content(); 375 content_setting_bubble_model->bubble_content();
377 EXPECT_TRUE(bubble_content.custom_link.empty()); 376 EXPECT_TRUE(bubble_content.custom_link.empty());
378 377
379 EXPECT_EQ(1U, bubble_content.media_menus.size()); 378 EXPECT_EQ(1U, bubble_content.media_menus.size());
380 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, 379 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE,
381 bubble_content.media_menus.begin()->first); 380 bubble_content.media_menus.begin()->first);
382 EXPECT_FALSE(bubble_content.media_menus.begin()->second.disabled); 381 EXPECT_FALSE(bubble_content.media_menus.begin()->second.disabled);
383 // The first audio device should be selected by default. 382 // The first audio device should be selected by default.
384 EXPECT_TRUE(fake_audio_device1.IsEqual( 383 EXPECT_TRUE(fake_audio_device1.IsEqual(
385 bubble_content.media_menus.begin()->second.selected_device)); 384 bubble_content.media_menus.begin()->second.selected_device));
386 385
387 // Select a different (the second) device. 386 // Select a different (the second) device.
388 content_setting_bubble_model->OnMediaMenuClicked( 387 content_setting_bubble_model->OnMediaMenuClicked(
389 content::MEDIA_DEVICE_AUDIO_CAPTURE, 388 content::MEDIA_DEVICE_AUDIO_CAPTURE,
390 fake_audio_device2.id); 389 fake_audio_device2.id);
391 } 390 }
392 { 391 {
393 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 392 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
394 new ContentSettingMediaStreamBubbleModel( 393 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
395 nullptr, web_contents(), profile())); 394 profile()));
396 const ContentSettingBubbleModel::BubbleContent& bubble_content = 395 const ContentSettingBubbleModel::BubbleContent& bubble_content =
397 content_setting_bubble_model->bubble_content(); 396 content_setting_bubble_model->bubble_content();
398 EXPECT_EQ(1U, bubble_content.media_menus.size()); 397 EXPECT_EQ(1U, bubble_content.media_menus.size());
399 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, 398 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE,
400 bubble_content.media_menus.begin()->first); 399 bubble_content.media_menus.begin()->first);
401 EXPECT_FALSE(bubble_content.media_menus.begin()->second.disabled); 400 EXPECT_FALSE(bubble_content.media_menus.begin()->second.disabled);
402 // The second audio device should be selected. 401 // The second audio device should be selected.
403 EXPECT_TRUE(fake_audio_device2.IsEqual( 402 EXPECT_TRUE(fake_audio_device2.IsEqual(
404 bubble_content.media_menus.begin()->second.selected_device)); 403 bubble_content.media_menus.begin()->second.selected_device));
405 // The "settings changed" message should not be displayed when there is no 404 // The "settings changed" message should not be displayed when there is no
406 // active capture. 405 // active capture.
407 EXPECT_FALSE(bubble_content.custom_link_enabled); 406 EXPECT_FALSE(bubble_content.custom_link_enabled);
408 EXPECT_TRUE(bubble_content.custom_link.empty()); 407 EXPECT_TRUE(bubble_content.custom_link.empty());
409 } 408 }
410 409
411 // Simulate that an audio stream is being captured. 410 // Simulate that an audio stream is being captured.
412 scoped_refptr<MediaStreamCaptureIndicator> indicator = 411 scoped_refptr<MediaStreamCaptureIndicator> indicator =
413 MediaCaptureDevicesDispatcher::GetInstance()-> 412 MediaCaptureDevicesDispatcher::GetInstance()->
414 GetMediaStreamCaptureIndicator(); 413 GetMediaStreamCaptureIndicator();
415 scoped_ptr<content::MediaStreamUI> media_stream_ui = 414 std::unique_ptr<content::MediaStreamUI> media_stream_ui =
416 indicator->RegisterMediaStream(web_contents(), audio_devices); 415 indicator->RegisterMediaStream(web_contents(), audio_devices);
417 media_stream_ui->OnStarted(base::Closure()); 416 media_stream_ui->OnStarted(base::Closure());
418 microphone_camera_state &= ~TabSpecificContentSettings::MICROPHONE_BLOCKED; 417 microphone_camera_state &= ~TabSpecificContentSettings::MICROPHONE_BLOCKED;
419 content_settings->OnMediaStreamPermissionSet(url, 418 content_settings->OnMediaStreamPermissionSet(url,
420 microphone_camera_state, 419 microphone_camera_state,
421 GetDefaultAudioDevice(), 420 GetDefaultAudioDevice(),
422 std::string(), 421 std::string(),
423 std::string(), 422 std::string(),
424 std::string()); 423 std::string());
425 424
426 { 425 {
427 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 426 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
428 new ContentSettingMediaStreamBubbleModel( 427 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
429 nullptr, web_contents(), profile())); 428 profile()));
430 const ContentSettingBubbleModel::BubbleContent& bubble_content = 429 const ContentSettingBubbleModel::BubbleContent& bubble_content =
431 content_setting_bubble_model->bubble_content(); 430 content_setting_bubble_model->bubble_content();
432 // Settings not changed yet, so the "settings changed" message should not be 431 // Settings not changed yet, so the "settings changed" message should not be
433 // shown. 432 // shown.
434 EXPECT_TRUE(bubble_content.custom_link.empty()); 433 EXPECT_TRUE(bubble_content.custom_link.empty());
435 434
436 EXPECT_EQ(1U, bubble_content.media_menus.size()); 435 EXPECT_EQ(1U, bubble_content.media_menus.size());
437 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, 436 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE,
438 bubble_content.media_menus.begin()->first); 437 bubble_content.media_menus.begin()->first);
439 EXPECT_FALSE(bubble_content.media_menus.begin()->second.disabled); 438 EXPECT_FALSE(bubble_content.media_menus.begin()->second.disabled);
440 EXPECT_TRUE(fake_audio_device2.IsEqual( 439 EXPECT_TRUE(fake_audio_device2.IsEqual(
441 bubble_content.media_menus.begin()->second.selected_device)); 440 bubble_content.media_menus.begin()->second.selected_device));
442 441
443 // Select a different different device. 442 // Select a different different device.
444 content_setting_bubble_model->OnMediaMenuClicked( 443 content_setting_bubble_model->OnMediaMenuClicked(
445 content::MEDIA_DEVICE_AUDIO_CAPTURE, 444 content::MEDIA_DEVICE_AUDIO_CAPTURE,
446 fake_audio_device3.id); 445 fake_audio_device3.id);
447 } 446 }
448 447
449 { 448 {
450 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 449 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
451 new ContentSettingMediaStreamBubbleModel( 450 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
452 nullptr, web_contents(), profile())); 451 profile()));
453 const ContentSettingBubbleModel::BubbleContent& bubble_content = 452 const ContentSettingBubbleModel::BubbleContent& bubble_content =
454 content_setting_bubble_model->bubble_content(); 453 content_setting_bubble_model->bubble_content();
455 // Test that the reload hint is displayed. 454 // Test that the reload hint is displayed.
456 EXPECT_FALSE(bubble_content.custom_link_enabled); 455 EXPECT_FALSE(bubble_content.custom_link_enabled);
457 EXPECT_EQ(bubble_content.custom_link, l10n_util::GetStringUTF8( 456 EXPECT_EQ(bubble_content.custom_link, l10n_util::GetStringUTF8(
458 IDS_MEDIASTREAM_SETTING_CHANGED_MESSAGE)); 457 IDS_MEDIASTREAM_SETTING_CHANGED_MESSAGE));
459 } 458 }
460 459
461 // Simulate that yet another audio stream capture request was initiated. 460 // Simulate that yet another audio stream capture request was initiated.
462 microphone_camera_state |= TabSpecificContentSettings::MICROPHONE_BLOCKED; 461 microphone_camera_state |= TabSpecificContentSettings::MICROPHONE_BLOCKED;
463 content_settings->OnMediaStreamPermissionSet(url, 462 content_settings->OnMediaStreamPermissionSet(url,
464 microphone_camera_state, 463 microphone_camera_state,
465 GetDefaultAudioDevice(), 464 GetDefaultAudioDevice(),
466 std::string(), 465 std::string(),
467 std::string(), 466 std::string(),
468 std::string()); 467 std::string());
469 468
470 { 469 {
471 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 470 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
472 new ContentSettingMediaStreamBubbleModel( 471 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
473 nullptr, web_contents(), profile())); 472 profile()));
474 const ContentSettingBubbleModel::BubbleContent& bubble_content = 473 const ContentSettingBubbleModel::BubbleContent& bubble_content =
475 content_setting_bubble_model->bubble_content(); 474 content_setting_bubble_model->bubble_content();
476 // Test that the reload hint is not displayed any more, because this is a 475 // Test that the reload hint is not displayed any more, because this is a
477 // new permission request. 476 // new permission request.
478 EXPECT_FALSE(bubble_content.custom_link_enabled); 477 EXPECT_FALSE(bubble_content.custom_link_enabled);
479 EXPECT_TRUE(bubble_content.custom_link.empty()); 478 EXPECT_TRUE(bubble_content.custom_link.empty());
480 479
481 // Though the audio menu setting should have persisted. 480 // Though the audio menu setting should have persisted.
482 EXPECT_EQ(1U, bubble_content.media_menus.size()); 481 EXPECT_EQ(1U, bubble_content.media_menus.size());
483 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE, 482 EXPECT_EQ(content::MEDIA_DEVICE_AUDIO_CAPTURE,
(...skipping 15 matching lines...) Expand all
499 GURL security_origin("http://" + request_host); 498 GURL security_origin("http://" + request_host);
500 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state = 499 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state =
501 TabSpecificContentSettings::MICROPHONE_ACCESSED; 500 TabSpecificContentSettings::MICROPHONE_ACCESSED;
502 content_settings->OnMediaStreamPermissionSet(security_origin, 501 content_settings->OnMediaStreamPermissionSet(security_origin,
503 microphone_camera_state, 502 microphone_camera_state,
504 GetDefaultAudioDevice(), 503 GetDefaultAudioDevice(),
505 std::string(), 504 std::string(),
506 std::string(), 505 std::string(),
507 std::string()); 506 std::string());
508 507
509 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 508 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
510 new ContentSettingMediaStreamBubbleModel( 509 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
511 nullptr, web_contents(), profile())); 510 profile()));
512 const ContentSettingBubbleModel::BubbleContent& bubble_content = 511 const ContentSettingBubbleModel::BubbleContent& bubble_content =
513 content_setting_bubble_model->bubble_content(); 512 content_setting_bubble_model->bubble_content();
514 EXPECT_EQ(bubble_content.title, 513 EXPECT_EQ(bubble_content.title,
515 l10n_util::GetStringUTF8(IDS_MICROPHONE_ACCESSED)); 514 l10n_util::GetStringUTF8(IDS_MICROPHONE_ACCESSED));
516 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); 515 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size());
517 EXPECT_EQ(bubble_content.radio_group.radio_items[0], 516 EXPECT_EQ(bubble_content.radio_group.radio_items[0],
518 l10n_util::GetStringFUTF8( 517 l10n_util::GetStringFUTF8(
519 IDS_ALLOWED_MEDIASTREAM_MIC_NO_ACTION, 518 IDS_ALLOWED_MEDIASTREAM_MIC_NO_ACTION,
520 url_formatter::FormatUrlForSecurityDisplay(security_origin))); 519 url_formatter::FormatUrlForSecurityDisplay(security_origin)));
521 EXPECT_EQ(bubble_content.radio_group.radio_items[1], 520 EXPECT_EQ(bubble_content.radio_group.radio_items[1],
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
572 GURL security_origin("http://" + request_host); 571 GURL security_origin("http://" + request_host);
573 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state = 572 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state =
574 TabSpecificContentSettings::CAMERA_ACCESSED; 573 TabSpecificContentSettings::CAMERA_ACCESSED;
575 content_settings->OnMediaStreamPermissionSet(security_origin, 574 content_settings->OnMediaStreamPermissionSet(security_origin,
576 microphone_camera_state, 575 microphone_camera_state,
577 std::string(), 576 std::string(),
578 GetDefaultVideoDevice(), 577 GetDefaultVideoDevice(),
579 std::string(), 578 std::string(),
580 std::string()); 579 std::string());
581 580
582 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 581 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
583 new ContentSettingMediaStreamBubbleModel( 582 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
584 nullptr, web_contents(), profile())); 583 profile()));
585 const ContentSettingBubbleModel::BubbleContent& bubble_content = 584 const ContentSettingBubbleModel::BubbleContent& bubble_content =
586 content_setting_bubble_model->bubble_content(); 585 content_setting_bubble_model->bubble_content();
587 EXPECT_EQ(bubble_content.title, 586 EXPECT_EQ(bubble_content.title,
588 l10n_util::GetStringUTF8(IDS_CAMERA_ACCESSED)); 587 l10n_util::GetStringUTF8(IDS_CAMERA_ACCESSED));
589 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); 588 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size());
590 EXPECT_EQ(bubble_content.radio_group.radio_items[0], 589 EXPECT_EQ(bubble_content.radio_group.radio_items[0],
591 l10n_util::GetStringFUTF8( 590 l10n_util::GetStringFUTF8(
592 IDS_ALLOWED_MEDIASTREAM_CAMERA_NO_ACTION, 591 IDS_ALLOWED_MEDIASTREAM_CAMERA_NO_ACTION,
593 url_formatter::FormatUrlForSecurityDisplay(security_origin))); 592 url_formatter::FormatUrlForSecurityDisplay(security_origin)));
594 EXPECT_EQ(bubble_content.radio_group.radio_items[1], 593 EXPECT_EQ(bubble_content.radio_group.radio_items[1],
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
647 // Firstly, add microphone access. 646 // Firstly, add microphone access.
648 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state = 647 TabSpecificContentSettings::MicrophoneCameraState microphone_camera_state =
649 TabSpecificContentSettings::MICROPHONE_ACCESSED; 648 TabSpecificContentSettings::MICROPHONE_ACCESSED;
650 content_settings->OnMediaStreamPermissionSet(security_origin, 649 content_settings->OnMediaStreamPermissionSet(security_origin,
651 microphone_camera_state, 650 microphone_camera_state,
652 GetDefaultAudioDevice(), 651 GetDefaultAudioDevice(),
653 std::string(), 652 std::string(),
654 std::string(), 653 std::string(),
655 std::string()); 654 std::string());
656 655
657 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 656 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
658 new ContentSettingMediaStreamBubbleModel( 657 new ContentSettingMediaStreamBubbleModel(nullptr, web_contents(),
659 nullptr, web_contents(), profile())); 658 profile()));
660 const ContentSettingBubbleModel::BubbleContent& bubble_content = 659 const ContentSettingBubbleModel::BubbleContent& bubble_content =
661 content_setting_bubble_model->bubble_content(); 660 content_setting_bubble_model->bubble_content();
662 EXPECT_EQ(bubble_content.title, 661 EXPECT_EQ(bubble_content.title,
663 l10n_util::GetStringUTF8(IDS_MICROPHONE_ACCESSED)); 662 l10n_util::GetStringUTF8(IDS_MICROPHONE_ACCESSED));
664 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); 663 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size());
665 EXPECT_EQ(bubble_content.radio_group.radio_items[0], 664 EXPECT_EQ(bubble_content.radio_group.radio_items[0],
666 l10n_util::GetStringFUTF8( 665 l10n_util::GetStringFUTF8(
667 IDS_ALLOWED_MEDIASTREAM_MIC_NO_ACTION, 666 IDS_ALLOWED_MEDIASTREAM_MIC_NO_ACTION,
668 url_formatter::FormatUrlForSecurityDisplay(security_origin))); 667 url_formatter::FormatUrlForSecurityDisplay(security_origin)));
669 EXPECT_EQ(bubble_content.radio_group.radio_items[1], 668 EXPECT_EQ(bubble_content.radio_group.radio_items[1],
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
703 } 702 }
704 703
705 TEST_F(ContentSettingBubbleModelTest, Plugins) { 704 TEST_F(ContentSettingBubbleModelTest, Plugins) {
706 TabSpecificContentSettings* content_settings = 705 TabSpecificContentSettings* content_settings =
707 TabSpecificContentSettings::FromWebContents(web_contents()); 706 TabSpecificContentSettings::FromWebContents(web_contents());
708 const base::string16 plugin_name = base::ASCIIToUTF16("plugin_name"); 707 const base::string16 plugin_name = base::ASCIIToUTF16("plugin_name");
709 708
710 content_settings->OnContentBlockedWithDetail(CONTENT_SETTINGS_TYPE_PLUGINS, 709 content_settings->OnContentBlockedWithDetail(CONTENT_SETTINGS_TYPE_PLUGINS,
711 plugin_name); 710 plugin_name);
712 711
713 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 712 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
714 ContentSettingBubbleModel::CreateContentSettingBubbleModel( 713 ContentSettingBubbleModel::CreateContentSettingBubbleModel(
715 NULL, web_contents(), profile(), 714 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_PLUGINS));
716 CONTENT_SETTINGS_TYPE_PLUGINS));
717 const ContentSettingBubbleModel::BubbleContent& bubble_content = 715 const ContentSettingBubbleModel::BubbleContent& bubble_content =
718 content_setting_bubble_model->bubble_content(); 716 content_setting_bubble_model->bubble_content();
719 EXPECT_FALSE(bubble_content.title.empty()); 717 EXPECT_FALSE(bubble_content.title.empty());
720 ASSERT_EQ(1U, bubble_content.list_items.size()); 718 ASSERT_EQ(1U, bubble_content.list_items.size());
721 EXPECT_EQ(plugin_name, 719 EXPECT_EQ(plugin_name,
722 base::ASCIIToUTF16(bubble_content.list_items[0].title)); 720 base::ASCIIToUTF16(bubble_content.list_items[0].title));
723 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size()); 721 EXPECT_EQ(2U, bubble_content.radio_group.radio_items.size());
724 EXPECT_FALSE(bubble_content.custom_link.empty()); 722 EXPECT_FALSE(bubble_content.custom_link.empty());
725 EXPECT_TRUE(bubble_content.custom_link_enabled); 723 EXPECT_TRUE(bubble_content.custom_link_enabled);
726 EXPECT_FALSE(bubble_content.manage_link.empty()); 724 EXPECT_FALSE(bubble_content.manage_link.empty());
727 EXPECT_FALSE(bubble_content.learn_more_link.empty()); 725 EXPECT_FALSE(bubble_content.learn_more_link.empty());
728 } 726 }
729 727
730 TEST_F(ContentSettingBubbleModelTest, PepperBroker) { 728 TEST_F(ContentSettingBubbleModelTest, PepperBroker) {
731 TabSpecificContentSettings* content_settings = 729 TabSpecificContentSettings* content_settings =
732 TabSpecificContentSettings::FromWebContents(web_contents()); 730 TabSpecificContentSettings::FromWebContents(web_contents());
733 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_PPAPI_BROKER); 731 content_settings->OnContentBlocked(CONTENT_SETTINGS_TYPE_PPAPI_BROKER);
734 732
735 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 733 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
736 ContentSettingBubbleModel::CreateContentSettingBubbleModel( 734 ContentSettingBubbleModel::CreateContentSettingBubbleModel(
737 NULL, web_contents(), profile(), 735 NULL, web_contents(), profile(), CONTENT_SETTINGS_TYPE_PPAPI_BROKER));
738 CONTENT_SETTINGS_TYPE_PPAPI_BROKER));
739 const ContentSettingBubbleModel::BubbleContent& bubble_content = 736 const ContentSettingBubbleModel::BubbleContent& bubble_content =
740 content_setting_bubble_model->bubble_content(); 737 content_setting_bubble_model->bubble_content();
741 738
742 std::string title = bubble_content.title; 739 std::string title = bubble_content.title;
743 EXPECT_FALSE(title.empty()); 740 EXPECT_FALSE(title.empty());
744 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size()); 741 ASSERT_EQ(2U, bubble_content.radio_group.radio_items.size());
745 std::string radio1 = bubble_content.radio_group.radio_items[0]; 742 std::string radio1 = bubble_content.radio_group.radio_items[0];
746 std::string radio2 = bubble_content.radio_group.radio_items[1]; 743 std::string radio2 = bubble_content.radio_group.radio_items[1];
747 EXPECT_FALSE(bubble_content.custom_link_enabled); 744 EXPECT_FALSE(bubble_content.custom_link_enabled);
748 EXPECT_FALSE(bubble_content.manage_link.empty()); 745 EXPECT_FALSE(bubble_content.manage_link.empty());
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
799 setting_map->SetDefaultContentSetting(CONTENT_SETTINGS_TYPE_GEOLOCATION, 796 setting_map->SetDefaultContentSetting(CONTENT_SETTINGS_TYPE_GEOLOCATION,
800 CONTENT_SETTING_BLOCK); 797 CONTENT_SETTING_BLOCK);
801 CheckGeolocationBubble(2, true, false); 798 CheckGeolocationBubble(2, true, false);
802 } 799 }
803 800
804 TEST_F(ContentSettingBubbleModelTest, FileURL) { 801 TEST_F(ContentSettingBubbleModelTest, FileURL) {
805 std::string file_url("file:///tmp/test.html"); 802 std::string file_url("file:///tmp/test.html");
806 NavigateAndCommit(GURL(file_url)); 803 NavigateAndCommit(GURL(file_url));
807 TabSpecificContentSettings::FromWebContents(web_contents())->OnContentBlocked( 804 TabSpecificContentSettings::FromWebContents(web_contents())->OnContentBlocked(
808 CONTENT_SETTINGS_TYPE_IMAGES); 805 CONTENT_SETTINGS_TYPE_IMAGES);
809 scoped_ptr<ContentSettingBubbleModel> content_setting_bubble_model( 806 std::unique_ptr<ContentSettingBubbleModel> content_setting_bubble_model(
810 ContentSettingBubbleModel::CreateContentSettingBubbleModel( 807 ContentSettingBubbleModel::CreateContentSettingBubbleModel(
811 nullptr, web_contents(), profile(), CONTENT_SETTINGS_TYPE_IMAGES)); 808 nullptr, web_contents(), profile(), CONTENT_SETTINGS_TYPE_IMAGES));
812 std::string title = 809 std::string title =
813 content_setting_bubble_model->bubble_content().radio_group.radio_items[0]; 810 content_setting_bubble_model->bubble_content().radio_group.radio_items[0];
814 ASSERT_NE(std::string::npos, title.find(file_url)); 811 ASSERT_NE(std::string::npos, title.find(file_url));
815 } 812 }
816 813
817 TEST_F(ContentSettingBubbleModelTest, RegisterProtocolHandler) { 814 TEST_F(ContentSettingBubbleModelTest, RegisterProtocolHandler) {
818 const GURL page_url("http://toplevel.example/"); 815 const GURL page_url("http://toplevel.example/");
819 NavigateAndCommit(page_url); 816 NavigateAndCommit(page_url);
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
915 { 912 {
916 ProtocolHandler handler = registry.GetHandlerFor("mailto"); 913 ProtocolHandler handler = registry.GetHandlerFor("mailto");
917 ASSERT_FALSE(handler.IsEmpty()); 914 ASSERT_FALSE(handler.IsEmpty());
918 EXPECT_EQ(CONTENT_SETTING_ALLOW, 915 EXPECT_EQ(CONTENT_SETTING_ALLOW,
919 content_settings->pending_protocol_handler_setting()); 916 content_settings->pending_protocol_handler_setting());
920 EXPECT_FALSE(registry.IsIgnored(test_handler)); 917 EXPECT_FALSE(registry.IsIgnored(test_handler));
921 } 918 }
922 919
923 registry.Shutdown(); 920 registry.Shutdown();
924 } 921 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698