dom/bluetooth/tests/marionette/test_dom_BluetoothAdapter_discovery.js

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

michael@0 1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
michael@0 2 * vim: sw=2 ts=2 sts=2 et filetype=javascript
michael@0 3 * This Source Code Form is subject to the terms of the Mozilla Public
michael@0 4 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
michael@0 5 * You can obtain one at http://mozilla.org/MPL/2.0/. */
michael@0 6
michael@0 7 ///////////////////////////////////////////////////////////////////////////////
michael@0 8 // Test Purpose:
michael@0 9 // To verify that discovery process of BluetoothAdapter is correct.
michael@0 10 // Use B2G emulator commands to add/remote remote devices to simulate
michael@0 11 // discovering behavior.
michael@0 12 //
michael@0 13 // Test Coverage:
michael@0 14 // - BluetoothAdapter.startDiscovery()
michael@0 15 // - BluetoothAdapter.stopDiscovery()
michael@0 16 // - BluetoothAdapter.ondevicefound()
michael@0 17 // - BluetoothAdapter.discovering [Temporarily turned off until BT API update]
michael@0 18 //
michael@0 19 ///////////////////////////////////////////////////////////////////////////////
michael@0 20
michael@0 21 MARIONETTE_TIMEOUT = 60000;
michael@0 22 MARIONETTE_HEAD_JS = 'head.js';
michael@0 23
michael@0 24 startBluetoothTest(true, function testCaseMain(aAdapter) {
michael@0 25 log("Testing the discovery process of BluetoothAdapter ...");
michael@0 26
michael@0 27 // The properties of remote device.
michael@0 28 let theProperties = {
michael@0 29 "name": REMOTE_DEVICE_NAME,
michael@0 30 "discoverable": true
michael@0 31 };
michael@0 32
michael@0 33 return Promise.resolve()
michael@0 34 .then(() => removeEmulatorRemoteDevice(BDADDR_ALL))
michael@0 35 .then(() => addEmulatorRemoteDevice(/*theProperties*/ null))
michael@0 36 .then(function(aRemoteAddress) {
michael@0 37 let promises = [];
michael@0 38 promises.push(waitForAdapterEvent(aAdapter, "devicefound"));
michael@0 39 promises.push(startDiscovery(aAdapter));
michael@0 40 return Promise.all(promises)
michael@0 41 .then(function(aResults) {
michael@0 42 is(aResults[0].device.address, aRemoteAddress, "BluetoothDevice.address");
michael@0 43 });
michael@0 44 })
michael@0 45 .then(() => stopDiscovery(aAdapter))
michael@0 46 .then(() => removeEmulatorRemoteDevice(BDADDR_ALL));
michael@0 47 });

mercurial