'use strict'; describe("Helpers", function() { describe("ArrayBuffer->String conversion", function() { it('works', function() { var b = new ArrayBuffer(3); var a = new Uint8Array(b); a[0] = 0; a[1] = 255; a[2] = 128; assert.equal(getString(b), "\x00\xff\x80"); }); }); describe("stringToArrayBuffer", function() { it('returns ArrayBuffer when passed string', function() { var StaticArrayBufferProto = new ArrayBuffer().__proto__; var anArrayBuffer = new ArrayBuffer(1); var typedArray = new Uint8Array(anArrayBuffer); typedArray[0] = 'a'.charCodeAt(0); assertEqualArrayBuffers(stringToArrayBuffer('a'), anArrayBuffer); }); it('throws an error when passed a non string', function() { var notStringable = [{}, undefined, null, new ArrayBuffer()]; notStringable.forEach(function(notString) { assert.throw(function() { stringToArrayBuffer(notString) }, Error); }); }); }); });