summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/bluetooth/adapter/adapter-powered-on-off-on-getAvailability.https.window.js
blob: c4ba9b5f3a9b13eaba51a3d29cfa62405816753e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// META: script=/resources/testdriver.js
// META: script=/resources/testdriver-vendor.js
// META: script=/bluetooth/resources/bluetooth-test.js
// META: script=/bluetooth/resources/bluetooth-fake-devices.js
'use strict';
const test_desc = 'getAvailability() is not affected by the powered state of ' +
    'the adapter.';

bluetooth_test(async () => {
  const fake_central =
      await navigator.bluetooth.test.simulateCentral({state: 'powered-on'});
  {
    const availability = await navigator.bluetooth.getAvailability();
    assert_true(
        availability,
        'getAvailability() resolves promise with true when adapter is ' +
            'powered on and it supports Bluetooth Low-Energy.');
  }

  {
    await fake_central.setState('powered-off');
    const availability = await navigator.bluetooth.getAvailability();
    assert_true(
        availability,
        'getAvailability() resolves promise with true after adapter powered ' +
            'off.');
  }

  {
    await fake_central.setState('powered-on');
    const availability = await navigator.bluetooth.getAvailability();
    assert_true(
        availability,
        'getAvailability() resolves promise with true when adapter is ' +
            'powered back on.');
  }
}, test_desc);