Special deepEquals for buffer
authorRyan Dahl <ry@tinyclouds.org>
Tue, 7 Sep 2010 23:28:49 +0000 (16:28 -0700)
committerRyan Dahl <ry@tinyclouds.org>
Wed, 8 Sep 2010 00:14:04 +0000 (17:14 -0700)
lib/assert.js

index 2d1fc08001640001ea384778cc162d8b9f1eccd7..19cb376c7eec01fffdc5d645dbb352cb2fea5db5 100644 (file)
@@ -131,6 +131,15 @@ function _deepEqual(actual, expected) {
   if (actual === expected) {
     return true;
 
+  } else if (Buffer.isBuffer(actual) && Buffer.isBuffer(expected)) {
+    if (actual.length != expected.length) return false;
+
+    for (var i = 0; i < actual.length; i++) {
+      if (actual[i] !== expected[i]) return false;
+    }
+
+    return true;
+
   // 7.2. If the expected value is a Date object, the actual value is
   // equivalent if it is also a Date object that refers to the same time.
   } else if (actual instanceof Date && expected instanceof Date) {