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.
29 lines
766 B
29 lines
766 B
const PNGNode = require('../png-node');
|
|
const fs = require('fs');
|
|
|
|
const files = fs.readdirSync('test/images');
|
|
|
|
async function getPixels(Ctor, fileName) {
|
|
const image = new Ctor(fs.readFileSync(`test/images/${fileName}`));
|
|
return new Promise(resolve => {
|
|
Ctor === PNGNode
|
|
? image.decodePixels(resolve)
|
|
: resolve(image.decodePixels());
|
|
});
|
|
}
|
|
|
|
describe('pixels', () => {
|
|
describe('node', () => {
|
|
test.each(files)('%s', async fileName => {
|
|
const pixels = await getPixels(PNGNode, fileName);
|
|
expect(pixels).toMatchSnapshot();
|
|
});
|
|
});
|
|
|
|
describe('browser', () => {
|
|
test.each(files)('%s', async fileName => {
|
|
const pixels = await getPixels(PNG, fileName);
|
|
expect(pixels).toMatchSnapshot();
|
|
});
|
|
});
|
|
});
|