From 49963b3d1abf71e72a4a71f40c271bc9afe13d78 Mon Sep 17 00:00:00 2001 From: James Halliday Date: Tue, 4 Mar 2014 17:11:44 -0800 Subject: [PATCH] using object-inspect for comparisons, passing the undef test --- lib/results.js | 27 ++-------- package.json | 108 ++++++++++++++++++++-------------------- test/circular-things.js | 2 +- 3 files changed, 59 insertions(+), 78 deletions(-) diff --git a/lib/results.js b/lib/results.js index b357b81f..c89157fb 100644 --- a/lib/results.js +++ b/lib/results.js @@ -1,8 +1,8 @@ var EventEmitter = require('events').EventEmitter; var inherits = require('inherits'); -var json = typeof JSON === 'object' ? JSON : require('jsonify'); var through = require('through'); var resumer = require('resumer'); +var inspect = require('object-inspect'); var nextTick = typeof setImmediate !== 'undefined' ? setImmediate : process.nextTick @@ -141,8 +141,8 @@ function encodeResult (res, count) { output += outer + '---\n'; output += inner + 'operator: ' + res.operator + '\n'; - var ex = json.stringify(res.expected, getSerialize()) || ''; - var ac = json.stringify(res.actual, getSerialize()) || ''; + var ex = inspect(res.expected); + var ac = inspect(res.actual); if (Math.max(ex.length, ac.length) > 65) { output += inner + 'expected:\n' + inner + ' ' + ex + '\n'; @@ -168,27 +168,6 @@ function encodeResult (res, count) { return output; } -function getSerialize () { - var seen = []; - - return function (key, value) { - var ret = value; - if (typeof value === 'object' && value) { - var found = false; - for (var i = 0; i < seen.length; i++) { - if (seen[i] === value) { - found = true - break; - } - } - - if (found) ret = '[Circular]' - else seen.push(value) - } - return ret; - }; -} - function getNextTest (results) { if (!results._only) { return results.tests.shift(); diff --git a/package.json b/package.json index a963142b..1b113517 100644 --- a/package.json +++ b/package.json @@ -1,55 +1,57 @@ { - "name" : "tape", - "version" : "2.6.0", - "description" : "tap-producing test harness for node and browsers", - "main" : "index.js", - "bin" : "./bin/tape", - "directories" : { - "example" : "example", - "test" : "test" - }, - "dependencies" : { - "jsonify" : "~0.0.0", - "deep-equal" : "~0.2.0", - "defined" : "~0.0.0", - "through": "~2.3.4", - "resumer": "~0.0.0", - "inherits": "~2.0.1" - }, - "devDependencies" : { - "tap" : "~0.3.0", - "falafel" : "~0.1.4" - }, - "scripts" : { - "test" : "tap test/*.js" - }, - "testling" : { - "files" : "test/browser/*.js", - "browsers" : [ - "ie/6..latest", - "chrome/20..latest", - "firefox/10..latest", - "safari/latest", - "opera/11.0..latest", - "iphone/6", "ipad/6" - ] - }, - "repository" : { - "type" : "git", - "url" : "git://github.com/substack/tape.git" - }, - "homepage" : "https://github.com/substack/tape", - "keywords" : [ - "tap", - "test", - "harness", - "assert", - "browser" - ], - "author" : { - "name" : "James Halliday", - "email" : "mail@substack.net", - "url" : "http://substack.net" - }, - "license" : "MIT" + "name": "tape", + "version": "2.6.0", + "description": "tap-producing test harness for node and browsers", + "main": "index.js", + "bin": "./bin/tape", + "directories": { + "example": "example", + "test": "test" + }, + "dependencies": { + "deep-equal": "~0.2.0", + "defined": "~0.0.0", + "inherits": "~2.0.1", + "object-inspect": "~0.3.0", + "resumer": "~0.0.0", + "through": "~2.3.4" + }, + "devDependencies": { + "tap": "~0.3.0", + "concat": "~1.4.1", + "falafel": "~0.1.4" + }, + "scripts": { + "test": "tap test/*.js" + }, + "testling": { + "files": "test/browser/*.js", + "browsers": [ + "ie/6..latest", + "chrome/20..latest", + "firefox/10..latest", + "safari/latest", + "opera/11.0..latest", + "iphone/6", + "ipad/6" + ] + }, + "repository": { + "type": "git", + "url": "git://github.com/substack/tape.git" + }, + "homepage": "https://github.com/substack/tape", + "keywords": [ + "tap", + "test", + "harness", + "assert", + "browser" + ], + "author": { + "name": "James Halliday", + "email": "mail@substack.net", + "url": "http://substack.net" + }, + "license": "MIT" } diff --git a/test/circular-things.js b/test/circular-things.js index 4ff4fece..1a0368d6 100644 --- a/test/circular-things.js +++ b/test/circular-things.js @@ -20,7 +20,7 @@ tap.test('circular test', function (assert) { , name: " should be equal" , operator: "equal" , expected: "{}" - , actual: '{"circular":"[Circular]"}' + , actual: '{ circular: [Circular] }' } , "tests 1" , "pass 0"