Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7820)

Unified Diff: chrome/test/data/extensions/api_test/bluetooth_low_energy/read_descriptor_value/runtest.js

Issue 628983003: New error strings for chrome.bluetoothLowEnergy (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Shortened super-long constant names. Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/test/data/extensions/api_test/bluetooth_low_energy/read_descriptor_value/runtest.js
diff --git a/chrome/test/data/extensions/api_test/bluetooth_low_energy/read_descriptor_value/runtest.js b/chrome/test/data/extensions/api_test/bluetooth_low_energy/read_descriptor_value/runtest.js
index 550052023a478531e5fd54ba4e4093bf3539a53c..34cecd08af75ba3d779c5e60aaa24d5ee27e58d5 100644
--- a/chrome/test/data/extensions/api_test/bluetooth_low_energy/read_descriptor_value/runtest.js
+++ b/chrome/test/data/extensions/api_test/bluetooth_low_energy/read_descriptor_value/runtest.js
@@ -26,32 +26,81 @@ function earlyError(message) {
chrome.test.runTests([testReadDescriptorValue]);
}
-// 1. Unknown descriptor instanceId.
-readDescriptorValue(badDescId, function (result) {
+var queue = [];
+
+function runNext(result) {
+ if (queue.length == 0)
+ chrome.test.fail("No more tests!");
+
+ (queue.shift())(result);
+}
+
+var errorFailed = 'Operation failed';
+var errorInProgress = 'In progress';
+var errorInvalidLength = 'Invalid data length';
+var errorPermissionDenied = 'Permission denied';
+var errorNotConnected = 'Not connected';
+var errorGattNotSupported = 'Operation not supported by this service';
+var errorNotNotifying = 'Not notifying';
+var errorNotFound = 'Instance not found';
+var errorOperationFailed = 'Operation failed';
+var errorAuthenticationFailed = 'Authentication failed';
+var errorCanceled = 'Request canceled';
+var errorTimeout = 'Operation timed out';
+var errorUnsupportedDevice =
+ 'This device is not supported on the current platform';
+var errorPlatformNotSupported =
+ 'This operation is not supported on the current platform';
+
+function makeExpectedErrorCallback(expectedError) {
+ return function(result) {
+ console.log('Expecting error ' + expectedError);
+ if (result || !chrome.runtime.lastError ||
+ chrome.runtime.lastError.message != expectedError) {
+ errorMsg = 'readDescriptorValue expected error \'' + expectedError + '\'';
+ if (chrome.runtime.lastError) {
+ errorMsg = errorMsg + ' but got \'' + chrome.runtime.lastError.message +
+ '\'';
+ }
+ earlyError(errorMsg);
+ return;
+ }
+
+ readDescriptorValue(descId, runNext);
+ };
+}
+
+queue = [function () {
+ // 1. Unknown descriptor instanceId.
+ readDescriptorValue(badDescId, runNext);
+}, function (result) {
if (result || !chrome.runtime.lastError) {
earlyError('\'badDescId\' did not cause failure');
return;
}
// 2. Known descriptor instanceId, but call failure.
- readDescriptorValue(descId, function (result) {
- if (result || !chrome.runtime.lastError) {
- earlyError('readDescriptorValue should have failed');
- return;
- }
-
- // 3. Call should succeed.
- readDescriptorValue(descId, function (result) {
- if (chrome.runtime.lastError) {
- earlyError(chrome.runtime.lastError.message);
- return;
- }
+ readDescriptorValue(descId, runNext);
+},
+ makeExpectedErrorCallback(errorFailed),
+ makeExpectedErrorCallback(errorInvalidLength),
+ makeExpectedErrorCallback(errorPermissionDenied),
+ makeExpectedErrorCallback(errorPermissionDenied),
+ makeExpectedErrorCallback(errorNotConnected),
+ makeExpectedErrorCallback(errorGattNotSupported),
+ makeExpectedErrorCallback(errorInProgress),
+ function (result) {
+ if (chrome.runtime.lastError) {
+ earlyError(chrome.runtime.lastError.message);
+ return;
+ }
- descriptor = result;
+ descriptor = result;
- chrome.test.sendMessage('ready', function (message) {
- chrome.test.runTests([testReadDescriptorValue]);
- });
- });
+ chrome.test.sendMessage('ready', function (message) {
+ chrome.test.runTests([testReadDescriptorValue]);
});
-});
+}];
+
+runNext();
+

Powered by Google App Engine
This is Rietveld 408576698