|  |  |  | '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); | 
					
						
							|  |  |  |       }); | 
					
						
							|  |  |  |     }); | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | }); |