1'use strict'; 2require('../common'); 3 4// This test ensures that Node.js throws a RangeError when trying to convert a 5// gigantic buffer into a string. 6// Regression test for https://github.com/nodejs/node/issues/649. 7 8const assert = require('assert'); 9const SlowBuffer = require('buffer').SlowBuffer; 10 11const len = 1422561062959; 12const message = { 13 code: 'ERR_INVALID_OPT_VALUE', 14 name: 'RangeError', 15 message: /^The value "[^"]*" is invalid for option "size"$/ 16}; 17assert.throws(() => Buffer(len).toString('utf8'), message); 18assert.throws(() => SlowBuffer(len).toString('utf8'), message); 19assert.throws(() => Buffer.alloc(len).toString('utf8'), message); 20assert.throws(() => Buffer.allocUnsafe(len).toString('utf8'), message); 21assert.throws(() => Buffer.allocUnsafeSlow(len).toString('utf8'), message); 22