negative-byteoffset-throws.js (856B)
1 // Copyright (C) 2016 the V8 project authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 esid: sec-dataview-buffer-byteoffset-bytelength 6 description: > 7 Throws a RangeError if ToInteger(byteOffset) < 0 8 info: | 9 24.2.2.1 DataView (buffer, byteOffset, byteLength ) 10 11 ... 12 4. Let offset be ? ToIndex(byteOffset). 13 ... 14 15 ToIndex ( value ) 16 17 1. If value is undefined, then 18 a. Let index be 0. 19 2. Else, 20 a. Let integerIndex be ? ToInteger(value). 21 b. If integerIndex < 0, throw a RangeError exception. 22 ... 23 ---*/ 24 25 var buffer = new ArrayBuffer(2); 26 27 assert.throws(RangeError, function() { 28 new DataView(buffer, -1); 29 }, "new DataView(buffer, -1);"); 30 31 assert.throws(RangeError, function() { 32 new DataView(buffer, -Infinity); 33 }, "new DataView(buffer, -Infinity);"); 34 35 reportCompare(0, 0);