OLD | NEW |
---|---|
(Empty) | |
1 <!DOCTYPE html> | |
2 <script src="../resources/testharness.js"></script> | |
3 <script src="../resources/testharnessreport.js"></script> | |
4 <script src="resources/bluetooth-helpers.js"></script> | |
5 <script> | |
6 'use strict'; | |
7 | |
8 test(function(t) { assert_true(window.testRunner instanceof Object); t.done(); } , | |
9 'window.testRunner is required for the following tests.'); | |
10 // 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
| |
11 // correctly. Only meant to be used by chromium. | |
12 [{ | |
13 name: 'Tx Power too low must result in nulled txPower.', | |
14 tx_power: -128, | |
15 expected_tx_power: null, | |
16 rssi: 0, | |
17 expected_rssi: 0 | |
18 }, { | |
19 name: 'RSSI too low must result in nulled rssi.', | |
20 tx_power: 0, | |
21 expected_tx_power: 0, | |
22 rssi: -128, | |
23 expected_rssi: null | |
24 }, { | |
25 name: 'Low Tx Power should appear in adData.', | |
26 tx_power: -127, | |
27 expected_tx_power: -127, | |
28 rssi: 0, | |
29 expected_rssi: 0 | |
30 }, { | |
31 name: 'Low RSSI should appear in adData.', | |
32 tx_power: 0, | |
33 expected_tx_power: 0, | |
34 rssi: -127, | |
35 expected_rssi: -127 | |
36 }, { | |
37 name: 'High Tx Power should appear in adData.', | |
38 tx_power: 126, | |
39 expected_tx_power: 126, | |
40 rssi: 0, | |
41 expected_rssi: 0 | |
42 }, { | |
43 name: 'High RSSI should appear in adData.', | |
44 tx_power: 0, | |
45 expected_tx_power: 0, | |
46 rssi: 126, | |
47 expected_rssi: 126 | |
48 }, { | |
49 name: 'Tx Power too high must result in nulled txPower.', | |
50 tx_power: 127, | |
51 expected_tx_power: null, | |
52 rssi: 0, | |
53 expected_rssi: 0 | |
54 }, { | |
55 name: 'RSSI too high must result in nulled rssi.', | |
56 tx_power: 0, | |
57 expected_tx_power: 0, | |
58 rssi: 127, | |
59 expected_rssi: null | |
60 }].forEach(power_test => { | |
61 promise_test(() => { | |
62 testRunner.setBluetoothMockDataSet('InternalPowerAdapter:' + | |
63 power_test.tx_power + ':' + | |
64 power_test.rssi); | |
65 return requestDeviceWithKeyDown({filters: [{services: ['heart_rate']}]}) | |
66 .then(device => { | |
67 let adv_data = device.adData; | |
68 assert_equals(adv_data.txPower, power_test.expected_tx_power); | |
69 assert_equals(adv_data.rssi, power_test.expected_rssi); | |
70 }); | |
71 }, power_test.name); | |
72 }); | |
73 | |
74 // Tests for all platforms. | |
75 [{ | |
76 name: 'TxPower not present, RSSI not present.', | |
77 tx_power_present: false, | |
78 rssi_present: false | |
79 }, { | |
80 name: 'TxPower not present, RSSI present.', | |
81 tx_power_present: false, | |
82 rssi_present: true | |
83 }, { | |
84 name: 'TxPower present, RSSI not present.', | |
85 tx_power_present: true, | |
86 rssi_present: false, | |
87 }, { | |
88 name: 'TxPower present, RSSI present.', | |
89 tx_power_present: true, | |
90 rssi_present: true | |
91 }].forEach(power_test => { | |
92 promise_test(() => { | |
93 testRunner.setBluetoothMockDataSet('PowerAdapter:' + | |
94 power_test.tx_power_present + ':' + | |
95 power_test.rssi_present); | |
96 return requestDeviceWithKeyDown({filters: [{services: ['heart_rate']}]}) | |
97 .then(device => { | |
98 let adv_data = device.adData; | |
99 let expected_tx_power = power_test.tx_power_present ? | |
100 -10 /* broadcasting at 0.1mW */ | |
101 : null; | |
102 let expected_rssi = power_test.rssi_present ? | |
103 -51 /* power at 1m from device broadcasting at 0.1mW * / | |
104 : null; | |
105 assert_equals(adv_data.txPower, expected_tx_power); | |
106 assert_equals(adv_data.rssi, expected_rssi); | |
107 }); | |
108 }, power_test.name) | |
109 }); | |
110 </script> | |
OLD | NEW |