mirror of
https://github.com/lovell/sharp.git
synced 2025-07-09 18:40:16 +02:00
80 lines
2.0 KiB
JavaScript
80 lines
2.0 KiB
JavaScript
'use strict';
|
|
|
|
const assert = require('assert');
|
|
|
|
const sharp = require('../../');
|
|
|
|
const formatHeifOutputBuffer = sharp.format.heif.output.buffer;
|
|
|
|
describe('HEIF (experimental)', () => {
|
|
describe('Stubbed without support for HEIF', () => {
|
|
before(() => {
|
|
sharp.format.heif.output.buffer = false;
|
|
});
|
|
after(() => {
|
|
sharp.format.heif.output.buffer = formatHeifOutputBuffer;
|
|
});
|
|
|
|
it('should throw an error', () => {
|
|
assert.throws(() => {
|
|
sharp().heif();
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('Stubbed with support for HEIF', () => {
|
|
before(() => {
|
|
sharp.format.heif.output.buffer = true;
|
|
});
|
|
after(() => {
|
|
sharp.format.heif.output.buffer = formatHeifOutputBuffer;
|
|
});
|
|
|
|
it('called without options does not throw an error', () => {
|
|
assert.doesNotThrow(() => {
|
|
sharp().heif();
|
|
});
|
|
});
|
|
it('valid quality does not throw an error', () => {
|
|
assert.doesNotThrow(() => {
|
|
sharp().heif({ quality: 50 });
|
|
});
|
|
});
|
|
it('invalid quality should throw an error', () => {
|
|
assert.throws(() => {
|
|
sharp().heif({ quality: 101 });
|
|
});
|
|
});
|
|
it('non-numeric quality should throw an error', () => {
|
|
assert.throws(() => {
|
|
sharp().heif({ quality: 'fail' });
|
|
});
|
|
});
|
|
it('valid lossless does not throw an error', () => {
|
|
assert.doesNotThrow(() => {
|
|
sharp().heif({ lossless: true });
|
|
});
|
|
});
|
|
it('non-boolean lossless should throw an error', () => {
|
|
assert.throws(() => {
|
|
sharp().heif({ lossless: 'fail' });
|
|
});
|
|
});
|
|
it('valid compression does not throw an error', () => {
|
|
assert.doesNotThrow(() => {
|
|
sharp().heif({ compression: 'avc' });
|
|
});
|
|
});
|
|
it('unknown compression should throw an error', () => {
|
|
assert.throws(() => {
|
|
sharp().heif({ compression: 'fail' });
|
|
});
|
|
});
|
|
it('invalid compression should throw an error', () => {
|
|
assert.throws(() => {
|
|
sharp().heif({ compression: 1 });
|
|
});
|
|
});
|
|
});
|
|
});
|