|
1 | 1 | 'use strict';
|
2 |
| -require('../common'); |
| 2 | +const common = require('../common'); |
3 | 3 | const assert = require('assert');
|
4 | 4 |
|
5 | 5 | const zero = [];
|
@@ -38,3 +38,25 @@ function assertWrongList(value) {
|
38 | 38 | err.message === '"list" argument must be an Array of Buffers';
|
39 | 39 | });
|
40 | 40 | }
|
| 41 | + |
| 42 | +const random10 = common.hasCrypto |
| 43 | + ? require('crypto').randomBytes(10) |
| 44 | + : Buffer.alloc(10, 1); |
| 45 | +const empty = Buffer.alloc(0); |
| 46 | + |
| 47 | +assert.notDeepStrictEqual(random10, empty); |
| 48 | +assert.notDeepStrictEqual(random10, Buffer.alloc(10)); |
| 49 | + |
| 50 | +assert.deepStrictEqual(Buffer.concat([], 100), empty); |
| 51 | +assert.deepStrictEqual(Buffer.concat([random10], 0), empty); |
| 52 | +assert.deepStrictEqual(Buffer.concat([random10], 10), random10); |
| 53 | +assert.deepStrictEqual(Buffer.concat([random10, random10], 10), random10); |
| 54 | +assert.deepStrictEqual(Buffer.concat([empty, random10]), random10); |
| 55 | +assert.deepStrictEqual(Buffer.concat([random10, empty, empty]), random10); |
| 56 | + |
| 57 | +// The tail should be zero-filled |
| 58 | +assert.deepStrictEqual(Buffer.concat([empty], 100), Buffer.alloc(100)); |
| 59 | +assert.deepStrictEqual(Buffer.concat([empty], 4096), Buffer.alloc(4096)); |
| 60 | +assert.deepStrictEqual( |
| 61 | + Buffer.concat([random10], 40), |
| 62 | + Buffer.concat([random10, Buffer.alloc(30)])); |
0 commit comments