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

Side by Side Diff: chrome/browser/extensions/api/bluetooth/bluetooth_apitest_chromeos.cc

Issue 11117011: Keep browser process alive while there are platform apps with background pages running. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Delegated Created 8 years, 1 month 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 | Annotate | Revision Log
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 <string.h> 5 #include <string.h>
6 6
7 #include "chrome/browser/extensions/api/bluetooth/bluetooth_api.h" 7 #include "chrome/browser/extensions/api/bluetooth/bluetooth_api.h"
8 #include "chrome/browser/extensions/bluetooth_event_router.h" 8 #include "chrome/browser/extensions/bluetooth_event_router.h"
9 #include "chrome/browser/extensions/extension_apitest.h" 9 #include "chrome/browser/extensions/extension_apitest.h"
10 #include "chrome/browser/extensions/extension_function_test_utils.h" 10 #include "chrome/browser/extensions/extension_function_test_utils.h"
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after
325 event_router()->DeviceAdded(mock_adapter_, device1_.get()); 325 event_router()->DeviceAdded(mock_adapter_, device1_.get());
326 326
327 discovery_started.Reply("go"); 327 discovery_started.Reply("go");
328 ExtensionTestMessageListener discovery_stopped("ready", true); 328 ExtensionTestMessageListener discovery_stopped("ready", true);
329 EXPECT_TRUE(discovery_stopped.WaitUntilSatisfied()); 329 EXPECT_TRUE(discovery_stopped.WaitUntilSatisfied());
330 330
331 event_router()->DeviceAdded(mock_adapter_, device2_.get()); 331 event_router()->DeviceAdded(mock_adapter_, device2_.get());
332 discovery_stopped.Reply("go"); 332 discovery_stopped.Reply("go");
333 333
334 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 334 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
335 CloseShellWindowsAndWaitForAppToExit();
335 } 336 }
336 337
337 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, DiscoveryInProgress) { 338 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, DiscoveryInProgress) {
338 // Fake that the adapter is discovering 339 // Fake that the adapter is discovering
339 EXPECT_CALL(*mock_adapter_, IsDiscovering()).WillOnce(testing::Return(true)); 340 EXPECT_CALL(*mock_adapter_, IsDiscovering()).WillOnce(testing::Return(true));
340 event_router()->AdapterDiscoveringChanged(mock_adapter_, true); 341 event_router()->AdapterDiscoveringChanged(mock_adapter_, true);
341 342
342 // Cache a device before the extension starts discovering 343 // Cache a device before the extension starts discovering
343 event_router()->DeviceAdded(mock_adapter_, device1_.get()); 344 event_router()->DeviceAdded(mock_adapter_, device1_.get());
344 345
(...skipping 10 matching lines...) Expand all
355 356
356 discovery_started.Reply("go"); 357 discovery_started.Reply("go");
357 ExtensionTestMessageListener discovery_stopped("ready", true); 358 ExtensionTestMessageListener discovery_stopped("ready", true);
358 EXPECT_TRUE(discovery_stopped.WaitUntilSatisfied()); 359 EXPECT_TRUE(discovery_stopped.WaitUntilSatisfied());
359 360
360 // This should never be received. 361 // This should never be received.
361 event_router()->DeviceAdded(mock_adapter_, device2_.get()); 362 event_router()->DeviceAdded(mock_adapter_, device2_.get());
362 discovery_stopped.Reply("go"); 363 discovery_stopped.Reply("go");
363 364
364 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 365 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
366 CloseShellWindowsAndWaitForAppToExit();
365 } 367 }
366 368
367 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, Events) { 369 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, Events) {
368 ResultCatcher catcher; 370 ResultCatcher catcher;
369 catcher.RestrictToProfile(browser()->profile()); 371 catcher.RestrictToProfile(browser()->profile());
370 372
371 // Load and wait for setup 373 // Load and wait for setup
372 ExtensionTestMessageListener listener("ready", true); 374 ExtensionTestMessageListener listener("ready", true);
373 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("bluetooth/events"))); 375 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("bluetooth/events")));
374 EXPECT_TRUE(listener.WaitUntilSatisfied()); 376 EXPECT_TRUE(listener.WaitUntilSatisfied());
375 377
376 event_router()->AdapterPoweredChanged(mock_adapter_, true); 378 event_router()->AdapterPoweredChanged(mock_adapter_, true);
377 event_router()->AdapterPoweredChanged(mock_adapter_, false); 379 event_router()->AdapterPoweredChanged(mock_adapter_, false);
378 event_router()->AdapterPresentChanged(mock_adapter_, true); 380 event_router()->AdapterPresentChanged(mock_adapter_, true);
379 event_router()->AdapterPresentChanged(mock_adapter_, false); 381 event_router()->AdapterPresentChanged(mock_adapter_, false);
380 event_router()->AdapterDiscoveringChanged(mock_adapter_, true); 382 event_router()->AdapterDiscoveringChanged(mock_adapter_, true);
381 event_router()->AdapterDiscoveringChanged(mock_adapter_, false); 383 event_router()->AdapterDiscoveringChanged(mock_adapter_, false);
382 384
383 listener.Reply("go"); 385 listener.Reply("go");
384 386
385 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 387 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
388 CloseShellWindowsAndWaitForAppToExit();
386 } 389 }
387 390
388 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, GetDevices) { 391 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, GetDevices) {
389 ResultCatcher catcher; 392 ResultCatcher catcher;
390 catcher.RestrictToProfile(browser()->profile()); 393 catcher.RestrictToProfile(browser()->profile());
391 394
392 BluetoothAdapter::ConstDeviceList devices; 395 BluetoothAdapter::ConstDeviceList devices;
393 devices.push_back(device1_.get()); 396 devices.push_back(device1_.get());
394 devices.push_back(device2_.get()); 397 devices.push_back(device2_.get());
395 398
(...skipping 13 matching lines...) Expand all
409 412
410 // Load and wait for setup 413 // Load and wait for setup
411 ExtensionTestMessageListener listener("ready", true); 414 ExtensionTestMessageListener listener("ready", true);
412 ASSERT_TRUE( 415 ASSERT_TRUE(
413 LoadExtension(test_data_dir_.AppendASCII("bluetooth/get_devices"))); 416 LoadExtension(test_data_dir_.AppendASCII("bluetooth/get_devices")));
414 EXPECT_TRUE(listener.WaitUntilSatisfied()); 417 EXPECT_TRUE(listener.WaitUntilSatisfied());
415 418
416 listener.Reply("go"); 419 listener.Reply("go");
417 420
418 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 421 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
422 CloseShellWindowsAndWaitForAppToExit();
419 } 423 }
420 424
421 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, GetDevicesConcurrently) { 425 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, GetDevicesConcurrently) {
422 ResultCatcher catcher; 426 ResultCatcher catcher;
423 catcher.RestrictToProfile(browser()->profile()); 427 catcher.RestrictToProfile(browser()->profile());
424 428
425 BluetoothAdapter::ConstDeviceList devices; 429 BluetoothAdapter::ConstDeviceList devices;
426 devices.push_back(device1_.get()); 430 devices.push_back(device1_.get());
427 431
428 // Save the callback to delay execution so that we can force the calls to 432 // Save the callback to delay execution so that we can force the calls to
429 // happen concurrently. This will be called after the listener is satisfied. 433 // happen concurrently. This will be called after the listener is satisfied.
430 BluetoothDevice::ProvidesServiceCallback callback; 434 BluetoothDevice::ProvidesServiceCallback* callback =
435 new BluetoothDevice::ProvidesServiceCallback;
431 EXPECT_CALL(*device1_, ProvidesServiceWithName(testing::_, testing::_)) 436 EXPECT_CALL(*device1_, ProvidesServiceWithName(testing::_, testing::_))
432 .WillOnce(testing::SaveArg<1>(&callback)); 437 .WillOnce(testing::SaveArg<1>(callback));
433 438
434 EXPECT_CALL(*mock_adapter_, GetDevices()) 439 EXPECT_CALL(*mock_adapter_, GetDevices())
435 .WillOnce(testing::Return(devices)); 440 .WillOnce(testing::Return(devices));
436 441
437 // Load and wait for setup 442 // Load and wait for setup
438 ExtensionTestMessageListener listener("ready", true); 443 ExtensionTestMessageListener listener("ready", true);
439 ASSERT_TRUE(LoadExtension( 444 ASSERT_TRUE(LoadExtension(
440 test_data_dir_.AppendASCII("bluetooth/get_devices_concurrently"))); 445 test_data_dir_.AppendASCII("bluetooth/get_devices_concurrently")));
441 EXPECT_TRUE(listener.WaitUntilSatisfied()); 446 EXPECT_TRUE(listener.WaitUntilSatisfied());
442 447
443 callback.Run(false); 448 callback->Run(false);
449 delete callback;
444 listener.Reply("go"); 450 listener.Reply("go");
445 451
446 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 452 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
453 CloseShellWindowsAndWaitForAppToExit();
447 } 454 }
448 455
449 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, GetDevicesError) { 456 IN_PROC_BROWSER_TEST_F(BluetoothApiTest, GetDevicesError) {
450 ResultCatcher catcher; 457 ResultCatcher catcher;
451 catcher.RestrictToProfile(browser()->profile()); 458 catcher.RestrictToProfile(browser()->profile());
452 459
453 // Load and wait for setup 460 // Load and wait for setup
454 ExtensionTestMessageListener listener("ready", true); 461 ExtensionTestMessageListener listener("ready", true);
455 ASSERT_TRUE(LoadExtension( 462 ASSERT_TRUE(LoadExtension(
456 test_data_dir_.AppendASCII("bluetooth/get_devices_error"))); 463 test_data_dir_.AppendASCII("bluetooth/get_devices_error")));
457 EXPECT_TRUE(listener.WaitUntilSatisfied()); 464 EXPECT_TRUE(listener.WaitUntilSatisfied());
458 465
459 listener.Reply("go"); 466 listener.Reply("go");
460 467
461 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message(); 468 EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
469 CloseShellWindowsAndWaitForAppToExit();
462 } 470 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698