mirror of
https://github.com/lovell/sharp.git
synced 2025-07-09 18:40:16 +02:00
Auto-exclude benchmark contenders that fail compilation
This commit is contained in:
parent
4e67a5025a
commit
78f31d2b0d
@ -7,11 +7,22 @@ var assert = require('assert');
|
|||||||
var Benchmark = require('benchmark');
|
var Benchmark = require('benchmark');
|
||||||
var semver = require('semver');
|
var semver = require('semver');
|
||||||
|
|
||||||
var imagemagick = require('imagemagick');
|
// Contenders
|
||||||
var imagemagickNative = require('imagemagick-native');
|
|
||||||
var gm = require('gm');
|
var gm = require('gm');
|
||||||
var lwip = require('lwip');
|
var imagemagick = require('imagemagick');
|
||||||
var sharp = require('../../index');
|
var sharp = require('../../index');
|
||||||
|
var imagemagickNative;
|
||||||
|
try {
|
||||||
|
imagemagickNative = require('imagemagick-native');
|
||||||
|
} catch (err) {
|
||||||
|
console.log('Excluding imagemagick-native');
|
||||||
|
}
|
||||||
|
var lwip;
|
||||||
|
try {
|
||||||
|
lwip = require('lwip');
|
||||||
|
} catch (err) {
|
||||||
|
console.log('Excluding lwip');
|
||||||
|
}
|
||||||
|
|
||||||
var fixtures = require('../fixtures');
|
var fixtures = require('../fixtures');
|
||||||
|
|
||||||
@ -27,7 +38,10 @@ sharp.cache(0);
|
|||||||
async.series({
|
async.series({
|
||||||
jpeg: function(callback) {
|
jpeg: function(callback) {
|
||||||
var inputJpgBuffer = fs.readFileSync(fixtures.inputJpg);
|
var inputJpgBuffer = fs.readFileSync(fixtures.inputJpg);
|
||||||
(new Benchmark.Suite('jpeg')).add('lwip-file-file', {
|
var jpegSuite = new Benchmark.Suite('jpeg');
|
||||||
|
// lwip
|
||||||
|
if (typeof lwip !== 'undefined') {
|
||||||
|
jpegSuite.add('lwip-file-file', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
lwip.open(fixtures.inputJpg, function (err, image) {
|
lwip.open(fixtures.inputJpg, function (err, image) {
|
||||||
@ -68,7 +82,10 @@ async.series({
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).add('imagemagick-file-file', {
|
});
|
||||||
|
}
|
||||||
|
// imagemagick
|
||||||
|
jpegSuite.add('imagemagick-file-file', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
imagemagick.resize({
|
imagemagick.resize({
|
||||||
@ -87,7 +104,10 @@ async.series({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).add('imagemagick-native-buffer-buffer', {
|
});
|
||||||
|
// imagemagick-native
|
||||||
|
if (typeof imagemagickNative !== 'undefined') {
|
||||||
|
jpegSuite.add('imagemagick-native-buffer-buffer', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
imagemagickNative.convert({
|
imagemagickNative.convert({
|
||||||
@ -106,7 +126,10 @@ async.series({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).add('gm-buffer-file', {
|
});
|
||||||
|
}
|
||||||
|
// gm
|
||||||
|
jpegSuite.add('gm-buffer-file', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
gm(inputJpgBuffer)
|
gm(inputJpgBuffer)
|
||||||
@ -168,7 +191,9 @@ async.series({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).add('sharp-buffer-file', {
|
});
|
||||||
|
// sharp
|
||||||
|
jpegSuite.add('sharp-buffer-file', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
sharp(inputJpgBuffer).resize(width, height).toFile(fixtures.outputJpg, function(err) {
|
sharp(inputJpgBuffer).resize(width, height).toFile(fixtures.outputJpg, function(err) {
|
||||||
@ -446,6 +471,8 @@ async.series({
|
|||||||
png: function(callback) {
|
png: function(callback) {
|
||||||
var inputPngBuffer = fs.readFileSync(fixtures.inputPng);
|
var inputPngBuffer = fs.readFileSync(fixtures.inputPng);
|
||||||
var pngSuite = new Benchmark.Suite('png');
|
var pngSuite = new Benchmark.Suite('png');
|
||||||
|
// lwip
|
||||||
|
if (typeof lwip !== 'undefined') {
|
||||||
pngSuite.add('lwip-buffer-buffer', {
|
pngSuite.add('lwip-buffer-buffer', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
@ -467,7 +494,10 @@ async.series({
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).add('imagemagick-file-file', {
|
});
|
||||||
|
}
|
||||||
|
// imagemagick
|
||||||
|
pngSuite.add('imagemagick-file-file', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
imagemagick.resize({
|
imagemagick.resize({
|
||||||
@ -484,7 +514,10 @@ async.series({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).add('imagemagick-native-buffer-buffer', {
|
});
|
||||||
|
// imagemagick-native
|
||||||
|
if (typeof imagemagickNative !== 'undefined') {
|
||||||
|
pngSuite.add('imagemagick-native-buffer-buffer', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
imagemagickNative.convert({
|
imagemagickNative.convert({
|
||||||
@ -496,7 +529,10 @@ async.series({
|
|||||||
});
|
});
|
||||||
deferred.resolve();
|
deferred.resolve();
|
||||||
}
|
}
|
||||||
}).add('gm-file-file', {
|
});
|
||||||
|
}
|
||||||
|
// gm
|
||||||
|
pngSuite.add('gm-file-file', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
gm(fixtures.inputPng)
|
gm(fixtures.inputPng)
|
||||||
@ -525,7 +561,9 @@ async.series({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}).add('sharp-buffer-file', {
|
});
|
||||||
|
// sharp
|
||||||
|
pngSuite.add('sharp-buffer-file', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: function(deferred) {
|
fn: function(deferred) {
|
||||||
sharp(inputPngBuffer).resize(width, height).toFile(fixtures.outputPng, function(err) {
|
sharp(inputPngBuffer).resize(width, height).toFile(fixtures.outputPng, function(err) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user