mirror of https://gitgud.io/fatchan/gm
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.0 KiB
44 lines
1.0 KiB
var assert = require('assert')
|
|
var fs = require('fs')
|
|
|
|
module.exports = function (_, dir, finish, gm) {
|
|
|
|
var original = dir + '/original.jpg';
|
|
var result = dir + '/fromBuffer.png';
|
|
|
|
var buf = fs.readFileSync(original);
|
|
|
|
var m = gm(buf)
|
|
.rotate('red', 30);
|
|
|
|
var args = m.args();
|
|
assert.equal('convert', args[0]);
|
|
assert.equal('-', args[1]);
|
|
assert.equal('-background', args[2]);
|
|
assert.equal('red', args[3]);
|
|
assert.equal('-rotate', args[4]);
|
|
assert.equal(30, args[5]);
|
|
|
|
if (!gm.integration)
|
|
return finish();
|
|
|
|
m
|
|
.write(result, function crop (err) {
|
|
if (err) return finish(err);
|
|
|
|
// tolerance defaults to 0.4
|
|
gm.compare(original, result, function (err, equal) {
|
|
if (err) return finish(err);
|
|
assert.ok(equal);
|
|
|
|
// accepts tolerance argument
|
|
gm.compare(original, result, 0.1, function (err, equal, equality, raw) {
|
|
if (err) return finish(err);
|
|
assert.ok(!equal);
|
|
assert.ok(equality > 0.1);
|
|
assert.ok(raw);
|
|
finish();
|
|
})
|
|
})
|
|
});
|
|
}
|
|
|