1 process.mixin(require("../common"));
2 assert = require("assert");
5 var b = new process.Buffer(1024);
7 puts("b.length == " + b.length);
8 assert.equal(1024, b.length);
10 for (var i = 0; i < 1024; i++) {
15 for (var i = 0; i < 1024; i++) {
16 assert.equal(i % 256, b[i]);
19 var asciiString = "hello world";
21 for (var j = 0; j < 50000; j++) {
23 for (var i = 0; i < asciiString.length; i++) {
24 b[i] = asciiString.charCodeAt(i);
26 var asciiSlice = b.asciiSlice(0, asciiString.length);
27 assert.equal(asciiString, asciiSlice);
29 var written = b.asciiWrite(asciiString, offset);
30 assert.equal(asciiString.length, written);
31 var asciiSlice = b.asciiSlice(offset, offset+asciiString.length);
32 assert.equal(asciiString, asciiSlice);
34 var sliceA = b.slice(offset, offset+asciiString.length);
35 var sliceB = b.slice(offset, offset+asciiString.length);
36 for (var i = 0; i < asciiString.length; i++) {
37 assert.equal(sliceA[i], sliceB[i]);
40 // TODO utf8 slice tests
44 for (var j = 0; j < 10000; j++) {
45 var slice = b.slice(100, 150);
46 assert.equal(50, slice.length);
47 for (var i = 0; i < 50; i++) {
48 assert.equal(b[100+i], slice[i]);
55 var b = new process.Buffer(10);
61 assert.deepEqual([0x0001], b.unpack('n', 0));
62 assert.deepEqual([0x0001, 0x0300], b.unpack('nn', 0));
63 assert.deepEqual([0x0103], b.unpack('n', 1));
64 assert.deepEqual([0x0300], b.unpack('n', 2));
65 assert.deepEqual([0x00010300], b.unpack('N', 0));
66 assert.throws(function () {
75 assert.deepEqual([0xDEADBEEF], b.unpack('N', 4));