| Index: chrome/browser/extensions/api/bluetooth/bluetooth_apitest.cc
|
| diff --git a/chrome/browser/extensions/api/bluetooth/bluetooth_apitest.cc b/chrome/browser/extensions/api/bluetooth/bluetooth_apitest.cc
|
| index cbd4043d6344bb2266996b192009d498054d05ee..ef2a9bcc6c25cf6e57e4ebaea4e71d9afb06767c 100644
|
| --- a/chrome/browser/extensions/api/bluetooth/bluetooth_apitest.cc
|
| +++ b/chrome/browser/extensions/api/bluetooth/bluetooth_apitest.cc
|
| @@ -70,7 +70,6 @@ class BluetoothApiTest : public ExtensionApiTest {
|
| device3_.reset(new testing::NiceMock<MockBluetoothDevice>(
|
| mock_adapter_, 0, "d3", "31:32:33:34:35:36",
|
| false /* paired */, false /* connected */));
|
| -
|
| }
|
|
|
| void DiscoverySessionCallback(
|
| @@ -101,8 +100,11 @@ class BluetoothApiTest : public ExtensionApiTest {
|
| scoped_ptr<testing::NiceMock<MockBluetoothProfile> > profile2_;
|
|
|
| extensions::ExtensionBluetoothEventRouter* event_router() {
|
| - return extensions::BluetoothAPI::Get(browser()->profile())
|
| - ->bluetooth_event_router();
|
| + return bluetooth_api()->event_router();
|
| + }
|
| +
|
| + extensions::BluetoothAPI* bluetooth_api() {
|
| + return extensions::BluetoothAPI::Get(browser()->profile());
|
| }
|
|
|
| private:
|
| @@ -150,6 +152,11 @@ static bool CallClosure(const base::Closure& callback) {
|
| return true;
|
| }
|
|
|
| +static bool CallErrorClosure(const BluetoothDevice::ErrorCallback& callback) {
|
| + callback.Run();
|
| + return true;
|
| +}
|
| +
|
| static void StopDiscoverySessionCallback(const base::Closure& callback,
|
| const base::Closure& error_callback) {
|
| callback.Run();
|
| @@ -314,9 +321,9 @@ IN_PROC_BROWSER_TEST_F(BluetoothApiTest, SetOutOfBandPairingData) {
|
| testing::Mock::VerifyAndClearExpectations(device1_.get());
|
| EXPECT_CALL(*mock_adapter_, GetDevice(device1_->GetAddress()))
|
| .WillOnce(testing::Return(device1_.get()));
|
| - EXPECT_CALL(*device1_,
|
| - ClearOutOfBandPairingData(testing::_,
|
| - testing::Truly(CallClosure)));
|
| + EXPECT_CALL(
|
| + *device1_,
|
| + ClearOutOfBandPairingData(testing::_, testing::Truly(CallErrorClosure)));
|
|
|
| set_oob_function = setupFunction(
|
| new api::BluetoothSetOutOfBandPairingDataFunction);
|
| @@ -558,9 +565,16 @@ IN_PROC_BROWSER_TEST_F(BluetoothApiTest, OnConnection) {
|
| scoped_refptr<device::MockBluetoothSocket> socket =
|
| new device::MockBluetoothSocket();
|
|
|
| + EXPECT_CALL(*mock_adapter_, GetDevice(device1_->GetAddress()))
|
| + .WillOnce(testing::Return(device1_.get()));
|
| +
|
| event_router()->AddProfile("1234", extension->id(), profile1_.get());
|
| - event_router()->DispatchConnectionEvent(
|
| + bluetooth_api()->DispatchConnectionEvent(
|
| extension->id(), "1234", device1_.get(), socket);
|
| + // Connection events are dispatched using a couple of PostTask to the UI
|
| + // thread. Waiting until idle ensures the event is dispatched to the
|
| + // receiver(s).
|
| + base::RunLoop().RunUntilIdle();
|
|
|
| listener.Reply("go");
|
| EXPECT_TRUE(catcher.GetNextResult()) << catcher.message();
|
|
|