Chromium Code Reviews| Index: third_party/WebKit/LayoutTests/bluetooth/advertising-data.html |
| diff --git a/third_party/WebKit/LayoutTests/bluetooth/advertising-data.html b/third_party/WebKit/LayoutTests/bluetooth/advertising-data.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..134e88fa9a78bf42b04b43c6fe59a735625fa17c |
| --- /dev/null |
| +++ b/third_party/WebKit/LayoutTests/bluetooth/advertising-data.html |
| @@ -0,0 +1,110 @@ |
| +<!DOCTYPE html> |
| +<script src="../resources/testharness.js"></script> |
| +<script src="../resources/testharnessreport.js"></script> |
| +<script src="resources/bluetooth-helpers.js"></script> |
| +<script> |
| +'use strict'; |
| + |
| +test(function(t) { assert_true(window.testRunner instanceof Object); t.done(); }, |
| + 'window.testRunner is required for the following tests.'); |
| +// Tests that we are handling values returned from the underlying platform |
|
scheib
2015/10/30 01:05:23
InternalPowerAdapter a poor name, name them for se
ortuno
2015/11/04 21:22:09
Adapter renamed. Added TODO for the Tx Power value
|
| +// correctly. Only meant to be used by chromium. |
| +[{ |
| + name: 'Tx Power too low must result in nulled txPower.', |
| + tx_power: -128, |
| + expected_tx_power: null, |
| + rssi: 0, |
| + expected_rssi: 0 |
| +}, { |
| + name: 'RSSI too low must result in nulled rssi.', |
| + tx_power: 0, |
| + expected_tx_power: 0, |
| + rssi: -128, |
| + expected_rssi: null |
| +}, { |
| + name: 'Low Tx Power should appear in adData.', |
| + tx_power: -127, |
| + expected_tx_power: -127, |
| + rssi: 0, |
| + expected_rssi: 0 |
| +}, { |
| + name: 'Low RSSI should appear in adData.', |
| + tx_power: 0, |
| + expected_tx_power: 0, |
| + rssi: -127, |
| + expected_rssi: -127 |
| +}, { |
| + name: 'High Tx Power should appear in adData.', |
| + tx_power: 126, |
| + expected_tx_power: 126, |
| + rssi: 0, |
| + expected_rssi: 0 |
| +}, { |
| + name: 'High RSSI should appear in adData.', |
| + tx_power: 0, |
| + expected_tx_power: 0, |
| + rssi: 126, |
| + expected_rssi: 126 |
| +}, { |
| + name: 'Tx Power too high must result in nulled txPower.', |
| + tx_power: 127, |
| + expected_tx_power: null, |
| + rssi: 0, |
| + expected_rssi: 0 |
| +}, { |
| + name: 'RSSI too high must result in nulled rssi.', |
| + tx_power: 0, |
| + expected_tx_power: 0, |
| + rssi: 127, |
| + expected_rssi: null |
| +}].forEach(power_test => { |
| + promise_test(() => { |
| + testRunner.setBluetoothMockDataSet('InternalPowerAdapter:' + |
| + power_test.tx_power + ':' + |
| + power_test.rssi); |
| + return requestDeviceWithKeyDown({filters: [{services: ['heart_rate']}]}) |
| + .then(device => { |
| + let adv_data = device.adData; |
| + assert_equals(adv_data.txPower, power_test.expected_tx_power); |
| + assert_equals(adv_data.rssi, power_test.expected_rssi); |
| + }); |
| + }, power_test.name); |
| +}); |
| + |
| +// Tests for all platforms. |
| +[{ |
| + name: 'TxPower not present, RSSI not present.', |
| + tx_power_present: false, |
| + rssi_present: false |
| +}, { |
| + name: 'TxPower not present, RSSI present.', |
| + tx_power_present: false, |
| + rssi_present: true |
| +}, { |
| + name: 'TxPower present, RSSI not present.', |
| + tx_power_present: true, |
| + rssi_present: false, |
| +}, { |
| + name: 'TxPower present, RSSI present.', |
| + tx_power_present: true, |
| + rssi_present: true |
| +}].forEach(power_test => { |
| + promise_test(() => { |
| + testRunner.setBluetoothMockDataSet('PowerAdapter:' + |
| + power_test.tx_power_present + ':' + |
| + power_test.rssi_present); |
| + return requestDeviceWithKeyDown({filters: [{services: ['heart_rate']}]}) |
| + .then(device => { |
| + let adv_data = device.adData; |
| + let expected_tx_power = power_test.tx_power_present ? |
| + -10 /* broadcasting at 0.1mW */ |
| + : null; |
| + let expected_rssi = power_test.rssi_present ? |
| + -51 /* power at 1m from device broadcasting at 0.1mW */ |
| + : null; |
| + assert_equals(adv_data.txPower, expected_tx_power); |
| + assert_equals(adv_data.rssi, expected_rssi); |
| + }); |
| + }, power_test.name) |
| +}); |
| +</script> |