Skip to content

Instantly share code, notes, and snippets.

@maiis
Last active August 29, 2015 14:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maiis/481d2a629f2a308ff800 to your computer and use it in GitHub Desktop.
Save maiis/481d2a629f2a308ff800 to your computer and use it in GitHub Desktop.
CSS diff
var args = process.argv.slice(2);
var server1 = 'http://' + args[0];
var server2 = 'http://' + args[1];
var url = args[2];
var exec = require('child_process').exec;
var tmp = process.cwd() + '/tmp/';
exec('phantomjs url2png.js ' + server1 + url + ' tmp/server1.png',
function () {
exec('phantomjs url2png.js ' + server2 + url + ' tmp/server2.png',
function () {
exec('compare -metric PSNR tmp/server1.png tmp/server2.png tmp/diff.png',
function(e, ste, result) {
if (result !== 'inf') {
console.log('bad, bad! See tmp/dif.gif');
exec('convert -delay 50 -loop 0 ' +
'tmp/server1.png tmp/server2.png '+
'tmp/dif.gif');
} else {
console.log('all good');
}
}
);
}
);
}
);
var system = require('system');
var url = system.args[1];
var png = system.args[2];
var page = require('webpage').create();
page.viewportSize = { width: 1024, height: 600 };
console.warn('sup');
page.open(url, function (status) {
console.warn('status',status,png);
if (status !== 'success') {
console.log('Unable to access the network!');
} else {
console.warn(page.url);
page.render(png);
}
phantom.exit();
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment