| Index: chrome/test/data/extensions/api_test/bluetooth_low_energy/write_characteristic_value/runtest.js
|
| diff --git a/chrome/test/data/extensions/api_test/bluetooth_low_energy/write_characteristic_value/runtest.js b/chrome/test/data/extensions/api_test/bluetooth_low_energy/write_characteristic_value/runtest.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..017664c6fe8a1d23fb9f2d68dce249098db9790e
|
| --- /dev/null
|
| +++ b/chrome/test/data/extensions/api_test/bluetooth_low_energy/write_characteristic_value/runtest.js
|
| @@ -0,0 +1,58 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +function testWriteCharacteristicValue() {
|
| + chrome.test.assertTrue(characteristic != null, '\'characteristic\' is null');
|
| + chrome.test.assertEq(charId, characteristic.instanceId);
|
| +
|
| + chrome.test.assertEq(writeValue.byteLength, characteristic.value.byteLength);
|
| +
|
| + var receivedValueBytes = new Uint8Array(characteristic.value);
|
| + for (var i = 0; i < writeValue.byteLength; i++) {
|
| + chrome.test.assertEq(valueBytes[i], receivedValueBytes[i]);
|
| + }
|
| +
|
| + chrome.test.succeed();
|
| +}
|
| +
|
| +var writeCharacteristicValue =
|
| + chrome.bluetoothLowEnergy.writeCharacteristicValue;
|
| +
|
| +var charId = 'char_id0';
|
| +var badCharId = 'char_id1';
|
| +
|
| +var characteristic = null;
|
| +var bytes = [0x43, 0x68, 0x72, 0x6F, 0x6D, 0x65];
|
| +var writeValue = new ArrayBuffer(bytes.length);
|
| +var valueBytes = new Uint8Array(writeValue);
|
| +valueBytes.set(bytes);
|
| +
|
| +// 1. Unknown characteristic instanceId.
|
| +writeCharacteristicValue(badCharId, writeValue, function (result) {
|
| + if (result || !chrome.runtime.lastError) {
|
| + chrome.test.fail('badCharId did not cause failure');
|
| + }
|
| +
|
| + // 2. Known characteristic instanceId, but call failure.
|
| + writeCharacteristicValue(charId, writeValue, function (result) {
|
| + if (result || !chrome.runtime.lastError) {
|
| + chrome.test.fail('writeCharacteristicValue should have failed');
|
| + }
|
| +
|
| + // 3. Call should succeed.
|
| + writeCharacteristicValue(charId, writeValue, function (result) {
|
| + if (chrome.runtime.lastError) {
|
| + chrome.test.fail(chrome.runtime.lastError.message);
|
| + }
|
| +
|
| + chrome.bluetoothLowEnergy.getCharacteristic(charId, function (result) {
|
| + characteristic = result;
|
| +
|
| + chrome.test.sendMessage('ready', function (message) {
|
| + chrome.test.runTests([testWriteCharacteristicValue]);
|
| + });
|
| + });
|
| + });
|
| + });
|
| +});
|
|
|