From c3396541124066d0acc7d92aebccc9abb416e1aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20M=C3=A9tais?= Date: Wed, 24 Jun 2015 07:49:44 +0200 Subject: [PATCH 1/4] Failing test case with xml file --- test/core/weightCheckerTest.js | 18 ++++++-- test/www/xml.xml | 80 ++++++++++++++++++++++++++++++++++ 2 files changed, 95 insertions(+), 3 deletions(-) create mode 100644 test/www/xml.xml diff --git a/test/core/weightCheckerTest.js b/test/core/weightCheckerTest.js index 6e68d67..f7e3283 100644 --- a/test/core/weightCheckerTest.js +++ b/test/core/weightCheckerTest.js @@ -84,6 +84,18 @@ describe('weightChecker', function() { isCSS: true, type: 'css' }, + { + method: 'GET', + url: 'http://localhost:8388/xml.xml', + requestHeaders: { + 'User-Agent': 'something', + Referer: 'http://www.google.fr/', + Accept: '*/*' + }, + status: 200, + isXML: true, + type: 'xml' + }, { method: 'GET', url: 'about:blank', @@ -122,7 +134,7 @@ describe('weightChecker', function() { data.toolsResults.weightChecker.offenders.totalWeight.byType.js.requests.length.should.equal(2); data.toolsResults.weightChecker.offenders.totalWeight.byType.css.requests.length.should.equal(1); data.toolsResults.weightChecker.offenders.totalWeight.byType.image.requests.length.should.equal(2); - data.toolsResults.weightChecker.offenders.totalWeight.byType.other.requests.length.should.equal(0); + data.toolsResults.weightChecker.offenders.totalWeight.byType.other.requests.length.should.equal(1); data.toolsResults.weightChecker.offenders.should.have.a.property('imageOptimization'); data.toolsResults.weightChecker.offenders.imageOptimization.totalGain.should.be.above(0); @@ -136,7 +148,7 @@ describe('weightChecker', function() { data.toolsResults.weightChecker.offenders.fileMinification.totalGain.should.be.above(0); data.toolsResults.weightChecker.offenders.fileMinification.files.length.should.equal(2); - data.toolsResults.weightChecker.metrics.should.have.a.property('totalRequests').that.equals(6); + data.toolsResults.weightChecker.metrics.should.have.a.property('totalRequests').that.equals(7); data.toolsResults.weightChecker.offenders.should.have.a.property('totalRequests'); data.toolsResults.weightChecker.offenders.totalRequests.byType.html.length.should.equal(1); data.toolsResults.weightChecker.offenders.totalRequests.byType.js.length.should.equal(2); @@ -145,7 +157,7 @@ describe('weightChecker', function() { data.toolsResults.weightChecker.offenders.totalRequests.byType.json.length.should.equal(0); data.toolsResults.weightChecker.offenders.totalRequests.byType.webfont.length.should.equal(0); data.toolsResults.weightChecker.offenders.totalRequests.byType.video.length.should.equal(0); - data.toolsResults.weightChecker.offenders.totalRequests.byType.other.length.should.equal(0); + data.toolsResults.weightChecker.offenders.totalRequests.byType.other.length.should.equal(1); data.toolsResults.weightChecker.metrics.should.have.a.property('smallRequests').that.equals(0); data.toolsResults.weightChecker.offenders.should.have.a.property('smallRequests'); diff --git a/test/www/xml.xml b/test/www/xml.xml new file mode 100644 index 0000000..2a341b7 --- /dev/null +++ b/test/www/xml.xml @@ -0,0 +1,80 @@ + + + + Gambardella, Matthew + XML Developer's Guide + Computer + 44.95 + 2000-10-01 + An in-depth look at creating applications + with XML. + + + Ralls, Kim + Midnight Rain + Fantasy + 5.95 + 2000-12-16 + A former architect battles corporate zombies, + an evil sorceress, and her own childhood to become queen + of the world. + + + Corets, Eva + Maeve Ascendant + Fantasy + 5.95 + 2000-11-17 + After the collapse of a nanotechnology + society in England, the young survivors lay the + foundation for a new society. + + + Corets, Eva + Oberon's Legacy + Fantasy + 5.95 + 2001-03-10 + In post-apocalypse England, the mysterious + agent known only as Oberon helps to create a new life + for the inhabitants of London. Sequel to Maeve + Ascendant. + + + Corets, Eva + The Sundered Grail + Fantasy + 5.95 + 2001-09-10 + The two daughters of Maeve, half-sisters, + battle one another for control of England. Sequel to + Oberon's Legacy. + + + Randall, Cynthia + Lover Birds + Romance + 4.95 + 2000-09-02 + When Carla meets Paul at an ornithology + conference, tempers fly as feathers get ruffled. + + + Thurman, Paula + Splish Splash + Romance + 4.95 + 2000-11-02 + A deep sea diver finds true love twenty + thousand leagues beneath the sea. + + + Knorr, Stefan + Creepy Crawlies + Horror + 4.95 + 2000-12-06 + An anthology of horror stories about roaches, + centipedes, scorpions and other insects. + + \ No newline at end of file From 30ae0f93f30a79d8e414b907f3d451ddc74c6e59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20M=C3=A9tais?= Date: Wed, 24 Jun 2015 08:00:56 +0200 Subject: [PATCH 2/4] Remove unneeded promise step --- lib/runner.js | 6 ------ 1 file changed, 6 deletions(-) diff --git a/lib/runner.js b/lib/runner.js index 473e751..786286d 100644 --- a/lib/runner.js +++ b/lib/runner.js @@ -52,12 +52,6 @@ var Runner = function(params) { delete data.toolsResults.phantomas.metrics.scrollExecutionTree; delete data.toolsResults.phantomas.offenders.scrollExecutionTree; - return data; - - }) - - .then(function(data) { - // Finished! deferred.resolve(data); From 87adc575acecd415882445c40940622dd9bb2bbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20M=C3=A9tais?= Date: Wed, 24 Jun 2015 08:01:58 +0200 Subject: [PATCH 3/4] Fix type xml issue --- lib/tools/weightChecker/weightChecker.js | 3 +++ test/core/weightCheckerTest.js | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/tools/weightChecker/weightChecker.js b/lib/tools/weightChecker/weightChecker.js index dfc00b3..b09d029 100644 --- a/lib/tools/weightChecker/weightChecker.js +++ b/lib/tools/weightChecker/weightChecker.js @@ -155,6 +155,7 @@ var WeightChecker = function() { requests.forEach(function(req) { var weight = ((typeof req.weightCheck.bodySize === 'number') ? req.weightCheck.bodySize + req.weightCheck.headersSize : req.contentLength) || 0; var type = req.type || 'other'; + type = (results.byType[type]) ? type : 'other'; results.totalWeight += weight; results.byType[type].totalWeight += weight; @@ -275,6 +276,8 @@ var WeightChecker = function() { requests.forEach(function(req) { if (req.url !== 'about:blank') { var type = req.type || 'other'; + type = (results.byType[type]) ? type : 'other'; + results.byType[type].push(req.url); results.total ++; } diff --git a/test/core/weightCheckerTest.js b/test/core/weightCheckerTest.js index f7e3283..2e93bea 100644 --- a/test/core/weightCheckerTest.js +++ b/test/core/weightCheckerTest.js @@ -142,7 +142,7 @@ describe('weightChecker', function() { data.toolsResults.weightChecker.offenders.should.have.a.property('gzipCompression'); data.toolsResults.weightChecker.offenders.gzipCompression.totalGain.should.be.above(0); - data.toolsResults.weightChecker.offenders.gzipCompression.files.length.should.equal(4); + data.toolsResults.weightChecker.offenders.gzipCompression.files.length.should.equal(5); data.toolsResults.weightChecker.offenders.should.have.a.property('fileMinification'); data.toolsResults.weightChecker.offenders.fileMinification.totalGain.should.be.above(0); From b6d4b7b40d398bb9bd3d9e634b08034199888ce2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20M=C3=A9tais?= Date: Wed, 24 Jun 2015 08:41:43 +0200 Subject: [PATCH 4/4] v1.7.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8c8f495..0f281d3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "yellowlabtools", - "version": "1.7.1", + "version": "1.7.2", "description": "Online tool to audit a webpage for performance and front-end quality issues", "repository": { "type": "git",