mirror of https://github.com/lukechilds/node.git
Browse Source
* Pull out the tests for buffer.toJSON from test-buffer-alloc * Add tests for serializing a 0-length buffer PR-URL: https://github.com/nodejs/node/pull/10979 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>v7.x
Joyee Cheung
8 years ago
committed by
Italo A. Casas
2 changed files with 36 additions and 24 deletions
@ -0,0 +1,36 @@ |
|||
'use strict'; |
|||
|
|||
require('../common'); |
|||
const assert = require('assert'); |
|||
const Buffer = require('buffer').Buffer; |
|||
|
|||
{ |
|||
assert.strictEqual(JSON.stringify(Buffer.alloc(0)), |
|||
'{"type":"Buffer","data":[]}'); |
|||
assert.strictEqual(JSON.stringify(Buffer.from([1, 2, 3, 4])), |
|||
'{"type":"Buffer","data":[1,2,3,4]}'); |
|||
} |
|||
|
|||
// issue GH-7849
|
|||
{ |
|||
const buf = Buffer.from('test'); |
|||
const json = JSON.stringify(buf); |
|||
const obj = JSON.parse(json); |
|||
const copy = Buffer.from(obj); |
|||
|
|||
assert.deepStrictEqual(buf, copy); |
|||
} |
|||
|
|||
// GH-5110
|
|||
{ |
|||
const buffer = Buffer.from('test'); |
|||
const string = JSON.stringify(buffer); |
|||
|
|||
assert.strictEqual(string, '{"type":"Buffer","data":[116,101,115,116]}'); |
|||
|
|||
function receiver(key, value) { |
|||
return value && value.type === 'Buffer' ? Buffer.from(value.data) : value; |
|||
} |
|||
|
|||
assert.deepStrictEqual(buffer, JSON.parse(string, receiver)); |
|||
} |
Loading…
Reference in new issue