caolan/nodeunit — Issue #141: deepEqual not Usable on Buffers
Author: smith
Created: 2011-12-01 05:45:55+00:00
State: open

Using nodeunit 0.6 on node 0.4.12 (and others), the following test:

exports.test = function (test) {
var a = new Buffer([0]), b = new Buffer([0]);
test.deepEqual(a, b);
test.done();
};

Fails with:

test
✖ test

AssertionError: deepEqual
at Object.deepEqual (/home/smith/nu/node_modules/nodeunit/lib/types.js:83:39)
at Object. (/home/smith/nu/test.js:3:10)
at Object. (/home/smith/nu/node_modules/nodeunit/lib/core.js:233:16)
at /home/smith/nu/node_modules/nodeunit/lib/core.js:233:16
at Object.runTest (/home/smith/nu/node_modules/nodeunit/lib/core.js:69:9)
at /home/smith/nu/node_modules/nodeunit/lib/core.js:115:25
at /home/smith/nu/node_modules/nodeunit/deps/async.js:508:13
at /home/smith/nu/node_modules/nodeunit/deps/async.js:118:13
at /home/smith/nu/node_modules/nodeunit/deps/async.js:134:9
at /home/smith/nu/node_modules/nodeunit/deps/async.js:507:9

This test passes with nodeunit 0.4. It would be nice if deepEqual, or some method, worked to compare Buffers.

This is used on https://github.com/cramerdev/gearman-node/blob/master/test/test-packet.js, among other places.