Galerie und tage
This commit is contained in:
92
node_modules/jpegtran-bin/test/test.js
generated
vendored
92
node_modules/jpegtran-bin/test/test.js
generated
vendored
@@ -1,45 +1,77 @@
|
||||
'use strict';
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const test = require('ava');
|
||||
const execa = require('execa');
|
||||
const tempy = require('tempy');
|
||||
const binCheck = require('bin-check');
|
||||
const binBuild = require('bin-build');
|
||||
const compareSize = require('compare-size');
|
||||
const jpegtran = require('..');
|
||||
/* eslint-env mocha */
|
||||
var assert = require('assert');
|
||||
var execFile = require('child_process').execFile;
|
||||
var fs = require('fs');
|
||||
var path = require('path');
|
||||
var BinBuild = require('bin-build');
|
||||
var binCheck = require('bin-check');
|
||||
var compareSize = require('compare-size');
|
||||
var mkdirp = require('mkdirp');
|
||||
var rimraf = require('rimraf');
|
||||
|
||||
test('rebuild the jpegtran binaries', async t => {
|
||||
const tmp = tempy.directory();
|
||||
const cfg = [
|
||||
var tmp = path.join(__dirname, 'tmp');
|
||||
|
||||
beforeEach(function () {
|
||||
mkdirp.sync(tmp);
|
||||
});
|
||||
|
||||
afterEach(function () {
|
||||
rimraf.sync(tmp);
|
||||
});
|
||||
|
||||
it('rebuild the jpegtran binaries', function (cb) {
|
||||
var cfg = [
|
||||
'./configure --disable-shared',
|
||||
`--prefix="${tmp}" --bindir="${tmp}"`
|
||||
'--prefix="' + tmp + '" --bindir="' + tmp + '"'
|
||||
].join(' ');
|
||||
|
||||
await binBuild.url('https://downloads.sourceforge.net/project/libjpeg-turbo/1.5.1/libjpeg-turbo-1.5.1.tar.gz', [
|
||||
cfg,
|
||||
'make install'
|
||||
]);
|
||||
new BinBuild()
|
||||
.src('https://downloads.sourceforge.net/project/libjpeg-turbo/1.5.1/libjpeg-turbo-1.5.1.tar.gz')
|
||||
.cmd(cfg)
|
||||
.cmd('make install')
|
||||
.run(function (err) {
|
||||
if (err) {
|
||||
cb(err);
|
||||
return;
|
||||
}
|
||||
|
||||
t.true(fs.existsSync(path.join(tmp, 'jpegtran')));
|
||||
assert(fs.statSync(path.join(tmp, 'jpegtran')).isFile());
|
||||
cb();
|
||||
});
|
||||
});
|
||||
|
||||
test('return path to binary and verify that it is working', async t => {
|
||||
t.true(await binCheck(jpegtran, ['-version']));
|
||||
it('return path to binary and verify that it is working', function () {
|
||||
var args = [
|
||||
'-outfile', path.join(tmp, 'test.jpg'),
|
||||
path.join(__dirname, 'fixtures/test.jpg')
|
||||
];
|
||||
|
||||
return binCheck(require('../'), args).then(assert);
|
||||
});
|
||||
|
||||
test('minify a JPG', async t => {
|
||||
const tmp = tempy.directory();
|
||||
const src = path.join(__dirname, 'fixtures/test.jpg');
|
||||
const dest = path.join(tmp, 'test.jpg');
|
||||
const args = [
|
||||
'-outfile',
|
||||
dest,
|
||||
it('minify a JPG', function (cb) {
|
||||
var src = path.join(__dirname, 'fixtures/test.jpg');
|
||||
var dest = path.join(tmp, 'test.jpg');
|
||||
var args = [
|
||||
'-outfile', dest,
|
||||
src
|
||||
];
|
||||
|
||||
await execa(jpegtran, args);
|
||||
const res = await compareSize(src, dest);
|
||||
execFile(require('../'), args, function (err) {
|
||||
if (err) {
|
||||
cb(err);
|
||||
return;
|
||||
}
|
||||
|
||||
t.true(res[dest] < res[src]);
|
||||
compareSize(src, dest, function (err, res) {
|
||||
if (err) {
|
||||
cb(err);
|
||||
return;
|
||||
}
|
||||
|
||||
assert(res[dest] < res[src]);
|
||||
cb();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user