Browse Source

Fixed bug with error pixel colour override (#140)

* Fixes #138

* 2.10.2

* Bump patch and dependency update
pull/146/head v2.10.2
James Cryer 6 years ago committed by GitHub
parent
commit
ea75da0553
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. BIN
      nodejs-tests/pixelErrorColorTest.png
  2. 33
      nodejs-tests/resemble.test.js
  3. 184
      package-lock.json
  4. 8
      package.json
  5. 2
      resemble.js

BIN
nodejs-tests/pixelErrorColorTest.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

33
nodejs-tests/resemble.test.js

@ -121,7 +121,7 @@ describe("resemble", () => {
});
});
test("test partial diff with bounding box", () => {
test("partial diff with bounding box", () => {
const people = fs.readFileSync("./demoassets/ghost1.png");
const people2 = fs.readFileSync("./demoassets/ghost2.png");
@ -143,4 +143,35 @@ describe("resemble", () => {
});
});
});
test("error pixel color", () => {
const people = fs.readFileSync("./demoassets/ghost1.png");
const people2 = fs.readFileSync("./demoassets/ghost2.png");
return new Promise(resolve => {
resemble.outputSettings({
errorColor: {
red: 0,
green: 255,
blue: 0
}
});
resemble(people)
.compareTo(people2)
.onComplete(data => {
const buffer = data.getBuffer();
expect(buffer).toBeInstanceOf(Buffer);
expect(buffer.length).toBe(9429);
const comparison = fs.readFileSync(
"./nodejs-tests/pixelErrorColorTest.png"
);
expect(buffer.equals(comparison)).toBe(true);
resolve();
});
});
});
});

184
package-lock.json generated

@ -1,6 +1,6 @@
{
"name": "resemblejs",
"version": "2.10.1",
"version": "2.10.2",
"lockfileVersion": 1,
"dependencies": {
"@babel/code-frame": {
@ -959,6 +959,38 @@
}
}
},
"data-urls": {
"version": "1.0.0",
"resolved":
"https://registry.npmjs.org/data-urls/-/data-urls-1.0.0.tgz",
"integrity":
"sha512-ai40PPQR0Fn1lD2PPie79CibnlMN2AYiDhwFX/rZHVsxbs5kNJSjegqXIprhouGXlRdEnfybva7kqRGnB6mypA==",
"dev": true,
"dependencies": {
"punycode": {
"version": "2.1.0",
"resolved":
"https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz",
"integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=",
"dev": true
},
"tr46": {
"version": "1.0.1",
"resolved":
"https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz",
"integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=",
"dev": true
},
"whatwg-url": {
"version": "6.4.1",
"resolved":
"https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.1.tgz",
"integrity":
"sha512-FwygsxsXx27x6XXuExA/ox3Ktwcbf+OAvrKmLulotDAiO1Q6ixchPFaHYsis2zZBZSJTR0+dR+JVtf7MlbqZjw==",
"dev": true
}
}
},
"date-fns": {
"version": "1.29.0",
"resolved":
@ -1251,19 +1283,11 @@
"sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==",
"dev": true
},
"eslint-module-utils": {
"version": "2.1.1",
"resolved":
"https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz",
"integrity":
"sha512-jDI/X5l/6D1rRD/3T43q8Qgbls2nq5km5KSqiwlyUbGo5+04fXhMKdCPhjwbqAa6HXWaMxj8Q4hQDIh7IadJQw==",
"dev": true
},
"eslint-plugin-import": {
"version": "2.9.0",
"version": "2.11.0",
"resolved":
"https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.9.0.tgz",
"integrity": "sha1-JgAu+/ylmJtyiKwEdQi9JPIXsWk=",
"https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.11.0.tgz",
"integrity": "sha1-Fa7qN6Z0mdhI6OmBgG1GJ7VQOBY=",
"dev": true,
"dependencies": {
"doctrine": {
@ -1273,6 +1297,13 @@
"integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=",
"dev": true
},
"eslint-module-utils": {
"version": "2.2.0",
"resolved":
"https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz",
"integrity": "sha1-snA2LNiLGkitMIl2zn+lTphBF0Y=",
"dev": true
},
"load-json-file": {
"version": "2.0.0",
"resolved":
@ -1301,6 +1332,14 @@
"integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=",
"dev": true
},
"resolve": {
"version": "1.7.1",
"resolved":
"https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz",
"integrity":
"sha512-c7rwLofp8g1U+h1KNyHL/jicrKg1Ek4q+Lr33AL65uZTinUZHe30D5HlyN5V9NW0JX1D5dXQ4jqW5l7Sy/kGfw==",
"dev": true
},
"strip-bom": {
"version": "3.0.0",
"resolved":
@ -2817,11 +2856,11 @@
"dev": true
},
"lint-staged": {
"version": "7.0.0",
"version": "7.1.0",
"resolved":
"https://registry.npmjs.org/lint-staged/-/lint-staged-7.0.0.tgz",
"https://registry.npmjs.org/lint-staged/-/lint-staged-7.1.0.tgz",
"integrity":
"sha512-6Z89we28Qy1Ez7ZxO8yYfPKqzdxkSjnURq1d3RS2gKkZrA135xN+ptF3EWHrcHyBMmgA20vA7dGCQGj+OMS22g==",
"sha512-0l+PRD21v2zBRcfEIxjFMo2DiQ94wykRXH/aEw3aTMYUmnpTRPS1rc3DryPWf+qtK1Pjd51pLigHGopxgDMK5A==",
"dev": true,
"dependencies": {
"acorn": {
@ -2884,11 +2923,11 @@
"dev": true
},
"chalk": {
"version": "2.3.2",
"version": "2.4.1",
"resolved":
"https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
"https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz",
"integrity":
"sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==",
"sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==",
"dev": true
},
"cryptiles": {
@ -3162,19 +3201,19 @@
"dev": true
},
"jsdom": {
"version": "11.6.2",
"version": "11.10.0",
"resolved":
"https://registry.npmjs.org/jsdom/-/jsdom-11.6.2.tgz",
"https://registry.npmjs.org/jsdom/-/jsdom-11.10.0.tgz",
"integrity":
"sha512-pAeZhpbSlUp5yQcS6cBQJwkbzmv4tWFaYxHbFVSxzXefqjvtRA851Z5N2P+TguVG9YeUDcgb8pdeVQRJh0XR3Q==",
"sha512-x5No5FpJgBg3j5aBwA8ka6eGuS5IxbC8FOkmyccKvObtFT0bDMict/LOxINZsZGZSfGdNomLZ/qRV9Bpq/GIBA==",
"dev": true
},
"lodash": {
"version": "4.17.5",
"version": "4.17.10",
"resolved":
"https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
"https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity":
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true
},
"micromatch": {
@ -3200,21 +3239,13 @@
"dev": true
},
"braces": {
"version": "2.3.1",
"version": "2.3.2",
"resolved":
"https://registry.npmjs.org/braces/-/braces-2.3.1.tgz",
"https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
"integrity":
"sha512-SO5lYHA3vO6gz66erVvedSCkp7AKWdv6VcQ2N4ysXfPxdAlxAMMAdwegGGcv1Bqwm7naF1hNdk5d6AAIEHV2nQ==",
"sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
"dev": true,
"dependencies": {
"define-property": {
"version": "1.0.0",
"resolved":
"https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
"integrity":
"sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
"dev": true
},
"extend-shallow": {
"version": "2.0.1",
"resolved":
@ -3332,6 +3363,14 @@
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
"dev": true
},
"please-upgrade-node": {
"version": "3.0.2",
"resolved":
"https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.0.2.tgz",
"integrity":
"sha512-bslfSeW+ksUbB/sYZeEdKFyTG4YWU9YKRvqfSRvZKE675khAuBUPqV5RUwJZaGuWmVQLweK45Q+lPHFVnSlSug==",
"dev": true
},
"pretty-format": {
"version": "22.4.3",
"resolved":
@ -3348,10 +3387,10 @@
"dev": true
},
"qs": {
"version": "6.5.1",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz",
"version": "6.5.2",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
"integrity":
"sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==",
"sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==",
"dev": true
},
"request": {
@ -3379,19 +3418,27 @@
"dev": true
},
"source-map-support": {
"version": "0.5.4",
"version": "0.5.5",
"resolved":
"https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.5.tgz",
"integrity":
"sha512-mR7/Nd5l1z6g99010shcXJiNEaf3fEtmLhRB/sBcQVJGodcHCULPp2y4Sfa43Kv2zq7T+Izmfp/WHCR6dYkQCA==",
"dev": true
},
"staged-git-files": {
"version": "1.1.1",
"resolved":
"https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.4.tgz",
"https://registry.npmjs.org/staged-git-files/-/staged-git-files-1.1.1.tgz",
"integrity":
"sha512-PETSPG6BjY1AHs2t64vS2aqAgu6dMIMXJULWFBGbh2Gr8nVLbCFDo6i/RMMvviIQ2h1Z8+5gQhVKSn2je9nmdg==",
"sha512-H89UNKr1rQJvI1c/PIR3kiAMBV23yvR7LItZiV74HWZwzt7f3YHuujJ9nJZlt58WlFox7XQsOahexwk7nTe69A==",
"dev": true
},
"supports-color": {
"version": "5.3.0",
"version": "5.4.0",
"resolved":
"https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz",
"https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
"integrity":
"sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==",
"sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
"dev": true
},
"tr46": {
@ -3402,11 +3449,11 @@
"dev": true
},
"whatwg-url": {
"version": "6.4.0",
"version": "6.4.1",
"resolved":
"https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.0.tgz",
"https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.4.1.tgz",
"integrity":
"sha512-Z0CVh/YE217Foyb488eo+iBv+r7eAQ0wSTyApi9n06jhcA3z6Nidg/EGvl0UFkg7kMdKxfBzzr+o9JF+cevgMg==",
"sha512-FwygsxsXx27x6XXuExA/ox3Ktwcbf+OAvrKmLulotDAiO1Q6ixchPFaHYsis2zZBZSJTR0+dR+JVtf7MlbqZjw==",
"dev": true
},
"xml-name-validator": {
@ -4196,13 +4243,6 @@
}
}
},
"please-upgrade-node": {
"version": "3.0.1",
"resolved":
"https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.0.1.tgz",
"integrity": "sha1-CmgfLBiRXlQzpcos2U4Lggangts=",
"dev": true
},
"pluralize": {
"version": "7.0.0",
"resolved":
@ -4240,11 +4280,10 @@
"dev": true
},
"prettier": {
"version": "1.11.1",
"version": "1.12.1",
"resolved":
"https://registry.npmjs.org/prettier/-/prettier-1.11.1.tgz",
"integrity":
"sha512-T/KD65Ot0PB97xTrG8afQ46x3oiVhnfGjGESSI9NWYcG92+OUPZKkwHqGWXH2t9jK1crnQjubECW0FuOth+hxw==",
"https://registry.npmjs.org/prettier/-/prettier-1.12.1.tgz",
"integrity": "sha1-wa0g6APndJ+vkFpAnSNn4Gu+cyU=",
"dev": true
},
"pretty-format": {
@ -4643,6 +4682,13 @@
"integrity":
"sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg=="
},
"semver-compare": {
"version": "1.0.0",
"resolved":
"https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
"integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
"dev": true
},
"set-blocking": {
"version": "2.0.0",
"resolved":
@ -4912,13 +4958,6 @@
"integrity": "sha1-1PM6tU6OOHeLDKXP07OvsS22hiA=",
"dev": true
},
"staged-git-files": {
"version": "1.1.0",
"resolved":
"https://registry.npmjs.org/staged-git-files/-/staged-git-files-1.1.0.tgz",
"integrity": "sha1-GpuxMcGIVgECPHqt3T1UwiFCxSY=",
"dev": true
},
"static-extend": {
"version": "0.1.2",
"resolved":
@ -5004,6 +5043,13 @@
"integrity":
"sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ=="
},
"string-argv": {
"version": "0.0.2",
"resolved":
"https://registry.npmjs.org/string-argv/-/string-argv-0.0.2.tgz",
"integrity": "sha1-2sMECGkMIfPDYwo/86BYd73L1zY=",
"dev": true
},
"string-length": {
"version": "1.0.1",
"resolved":
@ -5513,6 +5559,14 @@
"sha512-jLBwwKUhi8WtBfsMQlL4bUUcT8sMkAtQinscJAe/M4KHCkHuUJAF6vuB0tueNIw4c8ziO6AkRmgY+jL3a0iiPw==",
"dev": true
},
"whatwg-mimetype": {
"version": "2.1.0",
"resolved":
"https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.1.0.tgz",
"integrity":
"sha512-FKxhYLytBQiUKjkYteN71fAUA3g6KpNXoho1isLiLSB3N1G4F35Q5vUxWfKFhBwi5IWF27VE6WxhrnnC+m0Mew==",
"dev": true
},
"whatwg-url": {
"version": "4.8.0",
"resolved":

8
package.json

@ -1,6 +1,6 @@
{
"name": "resemblejs",
"version": "2.10.1",
"version": "2.10.2",
"description": "Image analysis and comparison with HTML5",
"main": "resemble.js",
"repository": {
@ -34,13 +34,13 @@
"eslint": "^4.19.1",
"eslint-config-es5": "^0.5.0",
"eslint-config-prettier": "^2.9.0",
"eslint-plugin-import": "^2.9.0",
"eslint-plugin-import": "^2.11.0",
"eslint-plugin-prettier": "^2.6.0",
"husky": "^0.14.3",
"jest": "^20.0.4",
"jest-cli": "^20.0.4",
"lint-staged": "^7.0.0",
"prettier": "^1.11.1"
"lint-staged": "^7.1.0",
"prettier": "^1.12.1"
},
"jest": {
"testEnvironment": "node"

2
resemble.js

@ -718,7 +718,7 @@ URL: https://github.com/Huddle/Resemble.js
if (options.errorColor) {
for (key in options.errorColor) {
if (options.hasOwnProperty(key)) {
if (options.errorColor.hasOwnProperty(key)) {
errorPixelColor[key] =
options.errorColor[key] === void 0
? errorPixelColor[key]

Loading…
Cancel
Save