Remove excessive copyright/license boilerplate
[platform/upstream/nodejs.git] / test / parallel / test-readint.js
1 /*
2  * Tests to verify we're reading in signed integers correctly
3  */
4 var common = require('../common');
5 var ASSERT = require('assert');
6
7 /*
8  * Test 8 bit signed integers
9  */
10 function test8(clazz) {
11   var data = new clazz(4);
12
13   data[0] = 0x23;
14   ASSERT.equal(0x23, data.readInt8(0));
15
16   data[0] = 0xff;
17   ASSERT.equal(-1, data.readInt8(0));
18
19   data[0] = 0x87;
20   data[1] = 0xab;
21   data[2] = 0x7c;
22   data[3] = 0xef;
23   ASSERT.equal(-121, data.readInt8(0));
24   ASSERT.equal(-85, data.readInt8(1));
25   ASSERT.equal(124, data.readInt8(2));
26   ASSERT.equal(-17, data.readInt8(3));
27 }
28
29
30 function test16(clazz) {
31   var buffer = new clazz(6);
32
33   buffer[0] = 0x16;
34   buffer[1] = 0x79;
35   ASSERT.equal(0x1679, buffer.readInt16BE(0));
36   ASSERT.equal(0x7916, buffer.readInt16LE(0));
37
38   buffer[0] = 0xff;
39   buffer[1] = 0x80;
40   ASSERT.equal(-128, buffer.readInt16BE(0));
41   ASSERT.equal(-32513, buffer.readInt16LE(0));
42
43   /* test offset with weenix */
44   buffer[0] = 0x77;
45   buffer[1] = 0x65;
46   buffer[2] = 0x65;
47   buffer[3] = 0x6e;
48   buffer[4] = 0x69;
49   buffer[5] = 0x78;
50   ASSERT.equal(0x7765, buffer.readInt16BE(0));
51   ASSERT.equal(0x6565, buffer.readInt16BE(1));
52   ASSERT.equal(0x656e, buffer.readInt16BE(2));
53   ASSERT.equal(0x6e69, buffer.readInt16BE(3));
54   ASSERT.equal(0x6978, buffer.readInt16BE(4));
55   ASSERT.equal(0x6577, buffer.readInt16LE(0));
56   ASSERT.equal(0x6565, buffer.readInt16LE(1));
57   ASSERT.equal(0x6e65, buffer.readInt16LE(2));
58   ASSERT.equal(0x696e, buffer.readInt16LE(3));
59   ASSERT.equal(0x7869, buffer.readInt16LE(4));
60 }
61
62
63 function test32(clazz) {
64   var buffer = new clazz(6);
65
66   buffer[0] = 0x43;
67   buffer[1] = 0x53;
68   buffer[2] = 0x16;
69   buffer[3] = 0x79;
70   ASSERT.equal(0x43531679, buffer.readInt32BE(0));
71   ASSERT.equal(0x79165343, buffer.readInt32LE(0));
72
73   buffer[0] = 0xff;
74   buffer[1] = 0xfe;
75   buffer[2] = 0xef;
76   buffer[3] = 0xfa;
77   ASSERT.equal(-69638, buffer.readInt32BE(0));
78   ASSERT.equal(-84934913, buffer.readInt32LE(0));
79
80   buffer[0] = 0x42;
81   buffer[1] = 0xc3;
82   buffer[2] = 0x95;
83   buffer[3] = 0xa9;
84   buffer[4] = 0x36;
85   buffer[5] = 0x17;
86   ASSERT.equal(0x42c395a9, buffer.readInt32BE(0));
87   ASSERT.equal(-1013601994, buffer.readInt32BE(1));
88   ASSERT.equal(-1784072681, buffer.readInt32BE(2));
89   ASSERT.equal(-1449802942, buffer.readInt32LE(0));
90   ASSERT.equal(917083587, buffer.readInt32LE(1));
91   ASSERT.equal(389458325, buffer.readInt32LE(2));
92 }
93
94
95 test8(Buffer);
96 test16(Buffer);
97 test32(Buffer);