voluptasquisquam
Version:
Image processing and manipulation in JavaScript
62 lines (55 loc) • 2.23 kB
JavaScript
import {getSquare, get1BitSquare} from 'test/common';
import 'should';
describe('toDataURL and toBase64', function () {
it('toDataURL', function () {
const image = getSquare();
const dataURL = image.toDataURL();
dataURL.should.be.a.String();
dataURL.should.startWith('data:image/png;base64,');
});
it('toDataURL (async jpeg)', async () => {
const image = getSquare();
const dataURL = await image.toDataURL('jpeg', true);
dataURL.should.be.a.String();
dataURL.should.startWith('data:image/jpeg;base64,');
});
it('toBase64', function () {
const image = getSquare();
const dataURL = image.toDataURL();
const base64 = image.toBase64();
base64.should.be.a.String();
base64.should.equal(dataURL.substring(dataURL.indexOf(',') + 1));
});
it('toBase64 (async jpeg)', function () {
const image = getSquare();
return Promise.all([
image.toBase64('jpeg', true),
image.toDataURL('jpeg', true)
]).then(function (result) {
const base64 = result[0];
const dataURL = result[1];
base64.should.be.a.String();
base64.should.equal(dataURL.substring(dataURL.indexOf(',') + 1));
});
});
it('toBase64 (sync bmp)', function () {
const image = get1BitSquare();
const base64 = image.toBase64('bmp', false);
const dataURL = image.toDataURL('bmp', false);
dataURL.should.be.a.String();
base64.should.be.a.String();
dataURL.should.startWith('data:image/bmp;base64,');
base64.should.equal(dataURL.substring(dataURL.indexOf(',') + 1));
});
it('toBase64 (async bmp', function () {
const image = get1BitSquare();
const base64 = image.toBase64('bmp', true);
const dataURL = image.toDataURL('bmp', true);
return Promise.all([base64, dataURL], (base64, dataURL) => {
dataURL.should.be.a.String();
base64.should.be.a.String();
dataURL.should.startWith('data:image/bmp;base64,');
base64.should.equal(dataURL.substring(dataURL.indexOf(',') + 1));
});
});
});