From 586f769eccc314f94430dcf7c2803c1a9540452e Mon Sep 17 00:00:00 2001 From: Gijs Kruitbosch Date: Fri, 2 Mar 2012 17:48:45 +0100 Subject: [PATCH 1/2] Sort object output alphabetically in order to improve diffs of objects where properties were set in a different order. --- qunit/qunit.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/qunit/qunit.js b/qunit/qunit.js index 1d609f61a..9ac450dbc 100644 --- a/qunit/qunit.js +++ b/qunit/qunit.js @@ -1401,8 +1401,15 @@ QUnit.jsDump = (function() { object:function( map, stack ) { var ret = [ ]; QUnit.jsDump.up(); - for ( var key in map ) { - var val = map[key]; + if (Object.keys) { + var keys = Object.keys(map); + } else { + keys = []; + for (var key in map) { keys.push(key); } + } + keys.sort(); + for (var i = 0; i < keys.length; i++) { + var key = keys[i], val = map[key]; ret.push( QUnit.jsDump.parse(key,'key') + ': ' + QUnit.jsDump.parse(val, undefined, stack)); } QUnit.jsDump.down(); From 9acb0365b2ffcc886bc4b2a5d60422700aa4e824 Mon Sep 17 00:00:00 2001 From: Gijs Kruitbosch Date: Fri, 2 Mar 2012 17:52:18 +0100 Subject: [PATCH 2/2] Fix jsDump output tests. --- test/test.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/test.js b/test/test.js index 46e9ff693..313a9bfbf 100644 --- a/test/test.js +++ b/test/test.js @@ -242,7 +242,7 @@ test("makeurl working with settings from testEnvironment", function() { module("jsDump"); test("jsDump output", function() { equal( QUnit.jsDump.parse([1, 2]), "[\n 1,\n 2\n]" ); - equal( QUnit.jsDump.parse({top: 5, left: 0}), "{\n \"top\": 5,\n \"left\": 0\n}" ); + equal( QUnit.jsDump.parse({top: 5, left: 0}), "{\n \"left\": 0,\n \"top\": 5\n}" ); if (typeof document !== 'undefined' && document.getElementById("qunit-header")) { equal( QUnit.jsDump.parse(document.getElementById("qunit-header")), "

" ); equal( QUnit.jsDump.parse(document.getElementsByTagName("h1")), "[\n

\n]" ); @@ -354,15 +354,15 @@ test("check jsDump recursion", function() { var noref = chainwrap(0); var nodump = QUnit.jsDump.parse(noref); - equal(nodump, '{\n "wrap": undefined,\n "first": true\n}'); + equal(nodump, '{\n "first": true,\n "wrap": undefined\n}'); var selfref = chainwrap(1); var selfdump = QUnit.jsDump.parse(selfref); - equal(selfdump, '{\n "wrap": recursion(-1),\n "first": true\n}'); + equal(selfdump, '{\n "first": true,\n "wrap": recursion(-1)\n}'); var parentref = chainwrap(2); var parentdump = QUnit.jsDump.parse(parentref); - equal(parentdump, '{\n "wrap": {\n "wrap": recursion(-2),\n "first": true\n }\n}'); + equal(parentdump, '{\n "wrap": {\n "first": true,\n "wrap": recursion(-2)\n }\n}'); var circref = chainwrap(10); var circdump = QUnit.jsDump.parse(circref);