Do not announce robot account token before account ID is available
[chromium-blink-merge.git] / chrome / test / data / extensions / api_test / idltest / binary_data / binary.js
blob0abdbe13d03519dbad906c9001c3ee399310baf9
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 var assertEq = chrome.test.assertEq;
6 var assertTrue = chrome.test.assertTrue;
7 var callbackPass = chrome.test.callbackPass;
9 function makeCompareCallback(buf) {
10   return function(array) {
11     assertEq(buf.byteLength, array.length);
12     for (var i = 0; i < buf.length; i++) {
13       assertEq(buf[i], array[i]);
14     }
15   };
18 function makeBuffer() {
19   var bufferSize = 128;
20   var ab = new ArrayBuffer(bufferSize);
21   var view = new Uint8Array(ab);
22   for (var i = 0; i < bufferSize; i++) {
23     view[i] = i+3;
24   }
25   return view;
28 var tests = [
29   function sendBuffer() {
30     var view = makeBuffer();
31     chrome.idltest.sendArrayBuffer(
32         view.buffer, callbackPass(makeCompareCallback(view.buffer)));
33   },
35   function sendBufferView() {
36     var view = makeBuffer();
37     chrome.idltest.sendArrayBufferView(
38         view, callbackPass(makeCompareCallback(view.buffer)));
39   },
41   function sendBufferSlice() {
42     var view = makeBuffer();
43     var bufferSlice = view.buffer.slice(64);
44     assertEq(64, bufferSlice.byteLength);
45     chrome.idltest.sendArrayBuffer(
46         bufferSlice, callbackPass(makeCompareCallback(bufferSlice)));
47   },
49   function getBuffer() {
50     chrome.idltest.getArrayBuffer(callbackPass(function(buffer) {
51       assertTrue(buffer.__proto__ == (new ArrayBuffer()).__proto__);
52       var view = new Uint8Array(buffer);
53       var expected = "hello world";
54       assertEq(view.byteLength, expected.length);
55       for (var i = 0; i < view.byteLength; i++) {
56         assertTrue(expected[i] == String.fromCharCode(view[i]));
57       }
58     }));
59   }
62 chrome.test.runTests(tests);