| Index: chrome/test/data/webui/settings/bluetooth_page_browsertest_chromeos.js
|
| diff --git a/chrome/test/data/webui/settings/bluetooth_page_browsertest_chromeos.js b/chrome/test/data/webui/settings/bluetooth_page_browsertest_chromeos.js
|
| index 9d31c55044849ed921ba9ad48716f40b2fbd81e7..52e57e41b4fe8d4f650847c01437c5f1e1dce49e 100644
|
| --- a/chrome/test/data/webui/settings/bluetooth_page_browsertest_chromeos.js
|
| +++ b/chrome/test/data/webui/settings/bluetooth_page_browsertest_chromeos.js
|
| @@ -86,11 +86,16 @@ TEST_F('SettingsBluetoothPageBrowserTest', 'MAYBE_Bluetooth', function() {
|
| name: 'FakeUnPairedDevice1',
|
| paired: false,
|
| },
|
| + {
|
| + address: '00:00:00:00:00:02',
|
| + name: 'FakeUnPairedDevice2',
|
| + paired: false,
|
| + },
|
| ];
|
|
|
| suite('SettingsBluetoothPage', function() {
|
| test('enable', function() {
|
| - assertFalse(self.bluetoothApi_.enabled);
|
| + assertFalse(self.bluetoothApi_.adapterState.powered);
|
| var bluetoothSection = self.getSection(advanced, 'bluetooth');
|
| assertTrue(!!bluetoothSection);
|
| var bluetooth =
|
| @@ -103,10 +108,10 @@ TEST_F('SettingsBluetoothPageBrowserTest', 'MAYBE_Bluetooth', function() {
|
| // Test that tapping the enable checkbox changes its value and calls
|
| // bluetooth.setAdapterState with powered = false.
|
| MockInteractions.tap(enable);
|
| + Polymer.dom.flush();
|
| expectTrue(enable.checked);
|
| - expectTrue(self.bluetoothApi_.enabled);
|
| + expectTrue(self.bluetoothApi_.adapterState.powered);
|
| // Confirm that 'bluetoothEnabled' remains set to true.
|
| - Polymer.dom.flush();
|
| expectTrue(bluetooth.bluetoothEnabled);
|
| // Set 'bluetoothEnabled' directly and confirm that the checkbox
|
| // toggles.
|
| @@ -123,8 +128,7 @@ TEST_F('SettingsBluetoothPageBrowserTest', 'MAYBE_Bluetooth', function() {
|
| var deviceList = bluetooth.$.deviceList;
|
| assertTrue(!!deviceList);
|
| // Set enabled, with default (empty) device list.
|
| - self.bluetoothApi_.enabled = true;
|
| - bluetooth.bluetoothEnabled = true;
|
| + self.bluetoothApi_.setEnabled(true);
|
| Polymer.dom.flush();
|
| // Ensure that initially the 'device list empty' span is visible.
|
| expectFalse(deviceList.hidden);
|
| @@ -144,6 +148,48 @@ TEST_F('SettingsBluetoothPageBrowserTest', 'MAYBE_Bluetooth', function() {
|
| assertFalse(devices[1].device.connected);
|
| assertTrue(devices[1].device.connecting);
|
| });
|
| +
|
| + test('device dialog', function() {
|
| + var bluetoothSection = self.getSection(advanced, 'bluetooth');
|
| + var bluetooth =
|
| + bluetoothSection.querySelector('settings-bluetooth-page');
|
| + assertTrue(!!bluetooth);
|
| + self.bluetoothApi_.setEnabled(true);
|
| +
|
| + // Tap the 'add device' button.
|
| + MockInteractions.tap(bluetooth.$.addDevice);
|
| + Polymer.dom.flush();
|
| + // Ensure the dialog appears.
|
| + var dialog = bluetooth.$.deviceDialog;
|
| + assertTrue(!!dialog);
|
| + assertTrue(dialog.opened);
|
| + var addDialog = bluetooth.$$('settings-bluetooth-add-device-dialog');
|
| + assertTrue(!!addDialog);
|
| + // Ensure the dialog has the expected devices.
|
| + var devicesDiv = addDialog.$.dialogDeviceList;
|
| + var devices = devicesDiv.querySelectorAll('bluetooth-device-list-item');
|
| + assertEquals(2, devices.length);
|
| +
|
| + // Select a device.
|
| + MockInteractions.tap(devices[0].$$('div'));
|
| + Polymer.dom.flush();
|
| + // Ensure the pairing dialog is shown.
|
| + var pairDialog = bluetooth.$$('settings-bluetooth-pair-device-dialog');
|
| + assertTrue(!!pairDialog);
|
| + // Ensure the device is connected to.
|
| + expectEquals(1, self.bluetoothPrivateApi_.connectedDevices_.size);
|
| + var deviceAddress =
|
| + self.bluetoothPrivateApi_.connectedDevices_.keys().next().value;
|
| +
|
| + // Close the dialog.
|
| + MockInteractions.tap(pairDialog.$.close);
|
| + Polymer.dom.flush();
|
| + expectFalse(dialog.opened);
|
| + var response = self.bluetoothPrivateApi_.pairingResponses_[deviceAddress];
|
| + assertTrue(!!response);
|
| + expectEquals(chrome.bluetoothPrivate.PairingResponse.CANCEL,
|
| + response.response);
|
| + });
|
| });
|
|
|
| // Run all registered tests.
|
|
|