byteoffset-is-negative-throws.js (725B)
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 numberOffset be ? ToNumber(byteOffset). 13 5. Let offset be ToInteger(numberOffset). 14 6. If numberOffset ≠ offset or offset < 0, throw a RangeError exception. 15 ... 16 ---*/ 17 18 var ab = new ArrayBuffer(42); 19 20 assert.throws(RangeError, function() { 21 new DataView(ab, -1); 22 }, "-1"); 23 24 assert.throws(RangeError, function() { 25 new DataView(ab, -Infinity); 26 }, "-Infinity"); 27 28 reportCompare(0, 0);