Index: extensions/test/data/api_test/app_apis/runtest.js |
diff --git a/extensions/test/data/api_test/app_apis/runtest.js b/extensions/test/data/api_test/app_apis/runtest.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e3e2416a6b05a5c9e7a22026c7a1a40e8f128edd |
--- /dev/null |
+++ b/extensions/test/data/api_test/app_apis/runtest.js |
@@ -0,0 +1,44 @@ |
+// Copyright 2017 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. |
+ |
+/** |
+ * @fileoverview Basic tests of API functions in a real (non-mocked) shell to |
+ * ensure they can be called from a particular client or environment. |
+ * Tests that verify specific behaviors should be in their own API tests. |
+ */ |
+ |
+// Tests chrome.bluetooth availability. |
+function testBluetooth() { |
+ chrome.test.assertTrue( |
+ !!chrome.bluetooth, 'chrome.bluetooth should be available'); |
michaelpg
2017/04/14 22:54:43
oops, will fix this indent
|
+ |
+ chrome.bluetooth.getAdapterState(chrome.test.callback()); |
+ chrome.bluetooth.getDevice( |
+ 'AB:CD:EF:01:23:45', chrome.test.callback(() => {}, 'Invalid device')); |
+ chrome.bluetooth.getDevices(chrome.test.callback()); |
+ |
+ // TODO(michaelpg): Re-enable on Chrome OS after crbug.com/711484 is fixed. |
+ if (!/CrOS/.test(navigator.userAgent)) { |
+ var startDiscoveryCallback = chrome.test.callbackAdded(); |
+ chrome.bluetooth.startDiscovery(function() { |
+ // Ignore errors. |
+ chrome.runtime.lastError; |
+ startDiscoveryCallback(); |
+ }); |
+ |
+ var stopDiscoveryCallback = chrome.test.callbackAdded(); |
+ chrome.bluetooth.stopDiscovery(function() { |
+ // Ignore errors. |
+ chrome.runtime.lastError; |
+ stopDiscoveryCallback(); |
+ }); |
+ } |
+} |
+ |
+chrome.app.runtime.onLaunched.addListener(function() { |
+ chrome.test.runTests([ |
+ testBluetooth, |
Devlin
2017/04/14 01:43:44
It's going to be hard to scale this. Is there any
michaelpg
2017/04/14 03:52:58
I'm not sure what "really" is modifying here...
"
Devlin
2017/04/14 16:10:30
It will be a losing battle to try and re-test ever
michaelpg
2017/04/14 22:54:43
Yep! It should be as simple and automatic as possi
|
+ // TODO(michaelpg): Add more tests of basic API availability. |
+ ]); |
+}); |