mirror of
https://github.com/publiclab/image-sequencer.git
synced 2025-12-11 19:00:00 +01:00
Tests for checking image change upon change in options (#1490)
* add test for change in option for colormap * add test for change in option for colormap * add comments * add few tests * Add options change test for 14 more modules * add test Co-authored-by: Harsh Khandeparkar <34770591+HarshKhandeparkar@users.noreply.github.com>
This commit is contained in:
committed by
Jeffrey Warren
parent
d1b9b8becc
commit
89fb3585ac
@@ -1,5 +1,12 @@
|
||||
const benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==',
|
||||
moduleTest = require('../templates/module-test');
|
||||
const benchmark =
|
||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==',
|
||||
moduleTest = require('../templates/module-test'),
|
||||
optionsTest = require('../templates/options-test'),
|
||||
benchmark1 =
|
||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==',
|
||||
benchmark2 =
|
||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==';
|
||||
|
||||
moduleTest('blur', {blur: 3.25}, benchmark);
|
||||
moduleTest('blur', { blur: 3.25 }, benchmark);
|
||||
|
||||
optionsTest('blur', [{ blur: 2 }, { blur: 0.45 }], [benchmark1, benchmark2]);
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
const benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QAAd2KE6QAAAAHdElNRQfjAgULAir0wiRrAAAADUlEQVQY02NgGAXIAAABEAAB7JfjegAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxOS0wMi0wNVQxMTowMjo0MiswMjowMCdP+X4AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTktMDItMDVUMTE6MDI6NDIrMDI6MDBWEkHCAAAAAElFTkSuQmCC',
|
||||
testModule = require('../templates/module-test');
|
||||
benchmark1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==',
|
||||
benchmark2 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAAqSURBVKXBAQEAAAiAIHNf/+/UCGEWjkAiiSSSSCKJJJJIIokkkkgiiSR6gcMBa2MNA5YAAAAASUVORK5CYII=',
|
||||
testModule = require('../templates/module-test'),
|
||||
optionsTest = require('../templates/options-test');
|
||||
|
||||
testModule('brightness', {brightness: 1}, benchmark);
|
||||
testModule('brightness', {brightness: 1}, benchmark);
|
||||
|
||||
optionsTest('brightness', [{brightness: 175}, {brightness: 30}], [benchmark1, benchmark2]);
|
||||
@@ -1,4 +1,9 @@
|
||||
const benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==',
|
||||
testModule = require('../templates/module-test');
|
||||
testModule = require('../templates/module-test'),
|
||||
optionsTest = require('../templates/options-test'),
|
||||
benchmark1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAMAzDIF7/nncRgYcTTDTRRBNNNNFEE0000UQTTTTRRB9NQAEfe+dsMAAAAABJRU5ErkJggg==',
|
||||
benchmark2 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==';
|
||||
|
||||
testModule('channel', {channel: 'red'}, benchmark);
|
||||
|
||||
optionsTest('channel', [{channel: 'green'}, {channel: 'red'}], [benchmark1, benchmark2]);
|
||||
@@ -2,6 +2,10 @@ const testModule = require('../templates/module-test'),
|
||||
options = {
|
||||
temperature: 20000
|
||||
},
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPN242uEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1AkwGaEGLV7wAAAABJRU5ErkJggg==';
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPN242uEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1AkwGaEGLV7wAAAABJRU5ErkJggg==',
|
||||
_benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==',
|
||||
optionsTest = require('../templates/options-test');
|
||||
|
||||
testModule('color-temperature', options, benchmark);
|
||||
testModule('color-temperature', options, benchmark);
|
||||
|
||||
optionsTest('color-temperature', [options, {temperature: 60}], [benchmark, _benchmark]);
|
||||
File diff suppressed because one or more lines are too long
@@ -1,6 +1,15 @@
|
||||
const benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAArSURBVKXBAQEAAAiAIPP/ti7VCGFm7wgkkkgiiSSSSCKJJJJIIokkkkiiB53vAu3tsMmFAAAAAElFTkSuQmCC',
|
||||
const benchmark =
|
||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAArSURBVKXBAQEAAAiAIPP/ti7VCGFm7wgkkkgiiSSSSCKJJJJIIokkkkiiB53vAu3tsMmFAAAAAElFTkSuQmCC',
|
||||
testModule = require('../templates/module-test');
|
||||
|
||||
testModule('colormap', {colormap: 'blutoredjet'}, benchmark);
|
||||
testModule('colormap', { colormap: 'blutoredjet' }, benchmark);
|
||||
|
||||
const optionsTestModule = require('../templates/options-test');
|
||||
|
||||
const benchmarks = [
|
||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAAtSURBVKXBAQEAIAyAME4I81nUbD4E25z7PoFEEkkkkUQSSSSRRBJJJJFEEkm0Ka4CUk/bqgMAAAAASUVORK5CYII=',
|
||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAArSURBVKXBAQEAMAyDMI7G+reyiyB5245AIokkkkgiiSSSSCKJJJJIIokk+ktEAhuHny9oAAAAAElFTkSuQmCC'
|
||||
],
|
||||
options = [{ colormap: 'default' }, { colormap: 'greyscale' }];
|
||||
|
||||
optionsTestModule('colormap', options, benchmarks);
|
||||
|
||||
@@ -1,4 +1,10 @@
|
||||
const benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAHklEQVQ4T2Pc4u39n4ECwDhqAMNoGDCMhgHDsAgDALGCJKF4bsMPAAAAAElFTkSuQmCC',
|
||||
testModule = require('../templates/module-test');
|
||||
const benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==',
|
||||
_benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==',
|
||||
testModule = require('../templates/module-test'),
|
||||
optionsChange = require('../templates/options-test'),
|
||||
option = {contrast: 40},
|
||||
_option = {contrast: 84};
|
||||
|
||||
testModule('contrast', {contrast: -40}, benchmark);
|
||||
testModule('contrast', option, benchmark);
|
||||
|
||||
optionsChange('contrast', [option, _option], [benchmark, _benchmark]);
|
||||
File diff suppressed because one or more lines are too long
@@ -1,4 +1,8 @@
|
||||
const testModule = require('../templates/module-test'),
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAB/SURBVKXBAQHAIAAEoXP9OzM/g9BlKlOZylSmMpWpzKn04OtCgwYNGjRo0KBT6cHXhQYNGjRo0KBBp9KDrwsNGjRo0KBBg06lB18XGjRo0KBBgwadSg++LjRo0KBBgwYNOpUefF1o0KBBgwYNGnQqPfi60KBBgwYNGjToVHrwA6E21z8iJpDFAAAAAElFTkSuQmCC';
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAADSSURBVJ3BQWoEQQDEMLv//2dnCrYhDJtLJIH4p4rDo2IqpmIqpmIqpmJUBOKLCpW3CpWpODwqpuJSqZiKS2UqVA4PlVGpmIpLpWIqRmXsoVKh8lah8luFyhyVUZmKqRiVqbhUKuZUTMWojErFpVJxqcxRGZWKqRiVqRiViqkYe6i8VahUqPzlqFRMxaUyKlMxFVMxp0JlVCqmYipGZVQqVEYgHhUq31SoVKhcFYcPlYqpmIpRGZWKS+VUXCqjMioVUzEqFddRqZiKqbhURuVSqZgfDhnK7U8O3MsAAAAASUVORK5CYII=',
|
||||
_benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAB/SURBVKXBAQHAIAAEoXP9OzM/g9BlKlOZylSmMpWpzKn04OtCgwYNGjRo0KBT6cHXhQYNGjRo0KBBp9KDrwsNGjRo0KBBg06lB18XGjRo0KBBgwadSg++LjRo0KBBgwYNOpUefF1o0KBBgwYNGnQqPfi60KBBgwYNGjToVHrwA6E21z8iJpDFAAAAAElFTkSuQmCC',
|
||||
option = {dither: 'floydsteinberg'},
|
||||
_options = {dither: 'bayer'};
|
||||
require('../templates/options-test')('dither', [option, _options], [benchmark, _benchmark]);
|
||||
|
||||
testModule('dither', {dither: 'bayer'}, benchmark);
|
||||
testModule('dither', {dither: 'floydsteinberg'}, benchmark);
|
||||
File diff suppressed because one or more lines are too long
@@ -1,8 +1,14 @@
|
||||
const testModule = require('../templates/module-test'),
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAklEQVR4AewaftIAAApfSURBVO3BK3Nbh9qA0We/oxnvICVIZZGRUuQUnRRJQU2RoMPOFDVFpWX1T2hR87GWNSxGqZFlVqP0oNTIEqtQLGQH7S8epSPLlzjOxfa79axVVK8hSQkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJBJKURCBJSQSSlEQgSUkEkpREIElJNNBC29raotfrcZ0NBgO63S5SAy2U5eVlhsMhmfR6PY5qt9vs7u6ixRNoYRRFwXA4JLvhcEhRFGjxNFDt3b9/n8FgQN0URUGv12NzcxMthkC1dv/+fQaDAXU1GAy4f/8+WgyBam0wGFB3g8EALYZAtVUUBYuiKApUf4FqaXl5mUWzvLyM6i1QLQ2HQxbNcDhE9RZIUhKBJCURqHa2trZYVFtbW6i+AtVOr9djUfV6PVRfDaQjqqriqBs3bnBwcMCndPPmTV6+fMlRRVEgHddAeuOff/7huP39fQ598cUX/PXXX3xMd+7c4cWLF5zm8ePHPHr0COmoBtIbrVaLszx//pxDt27dYm9vj0Ptdpvd3V3exfLyMsPhkENlWbK/v8/bfPvttzx69AjpqAbSBbx8+ZL3sbu7i/ShAklKIpCkJAJJSiKQpCQCSUoikKQkAum1qqq4bqqqQjoq0MK7e/cu19Xdu3eR/hVo4T1//pzr6vnz50j/CiQpiUCSkgi00J4+fcp19/TpU6RDgRZav9/nuuv3+0iHAklKIpCkJAIttPF4zHU3Ho+RDgVaaHfu3OG6u3PnDtKhQAttb2+P625vbw/pUCBJSQSSlEQDSTn8HzPfspACLbyiKLiuiqJAr42BEiiBEviNmd+A31gIgXRNjcdj9MYfnG6Lmd+AMbUWSK8VRcF189lnn6FzdJn3B7UWSG988803XBdff/01OuIeeq2B9Mavv/7K77//zv7+PlepKAp0TAfoAE+AVeb9l6lt4D/UWiAdcXBwQFEUXJWiKNBbrHK2/1B7DbRwqqriX0+ePOHhw4ccVxQFDx484NmzZ1yGL7/8kj///BO98YSpVWaeMG+VqSfMW2XmCbBKbTTQQltdXWV1dZXPP/+cv//+m6P++OMPiqLgUFVVfApFUaBj1oGSqXWgD6wDJacrmbcO9IF1oKRWGmjhFEVBVVUc9eLFC27dusXe3h6nKYqCo6qq4qJevXpFWZboLda5mHXOtw70qYVAC6koCo57+fIl7+LBgwe8j6WlJfQW65x0j7fr827WgXXSC7SwiqLguKqqOM+zZ894X1VVoTP0OanFVJ95fWbuMa/PVJ/aCbTQiqLguKqq0BXpA32gD/SZ1wf6QJ95LaAP9IE+8/pAH+gDfdILtPC+++47jquqiqqqOOqnn36iqip0RSbABrDBxWwAG9RCAy28x48f88svv3CaqqrQNbDBvA3gK863wcwG8BVTG8BXpBOodgaDARd148YN6mAwGKA3Njhpg5kNYINUAtVOt9vlog4ODtje3ia7brdLLZVACZRACZScrwRKoARKoARKpkqgBEpSCaQ37t27x40bN1BNdDmpy0lbpNFAOuLg4ICiKPjX2toaP/74I4d+/vlnfvjhB/b399El6wJbzHR5N11gi6kuM11gi3QaqJba7TbD4ZAPtba2xtraGhm0221qrcv76XK6LukEqqXd3V0Wze7uLmlsA9vANvO2gW1gGxijYwLVVlVVLIqqqkhjm3nbTI2ZN0THBKq1Xq9H3fV6Pa61bWCbqTFnG3LSNjoiUK1tbm7S6/Woq16vx+bmJtfW/4ASKJlqASVQAiVQAiVTJVACJVACJVCiIxqo9jY3NzlUFAV1UlUVtbDC1ArwP+atoCMCLYyqqmi323yIp0+f8qEePXrEh2i321RVRRorwAozK8AK0AZWmLcCrAArwAo6pqheQwtra2uLXq/HeW7evMna2hrff/89H8P6+joPHz7k4OCA8wwGA7rdLlJRvYakj2+HeR2mdpjXYWaHeR1mdpjX4dPYYV6HayOQ9PHt8O52mNrhpB2mdrg6O0ztcOUCSZdnh+tth7fb4UoFki5Ph4vpcLk6nG8H2OFKBJI+vg5QAiVQAh1mOkAJlEAJdJjqACVQAiVQMtMBSqAESqDDp9MBSqAESqDDVAcogRIogRGXroGkT+M2Z7vN6W5ztttcntuc7jZXKpB0+UbAiNONgBGnGwEjThoBI043AkacbgSMOGkEjDjdCBhxJQJJl2vEzIh5I2ZGzIyAETMjZkbMjJg3YmbEzAgYMTNiZsTMiHkjZkZcugaSLlfJvDHQAsZAybwx0AJKzlYybwy0gDFQMm8MtICSs5XMGwMtYAyUzBsDLS5NIElJBJLe3RgY82m0OKnF+2txUov31+KkFpeqgaR31+LDtYAJU03mtYAJU01mWsCEmSYzLWDCVJN5LWDCVJOZFjBhpslMC5gw1WReC5gw1eTSNZB0+ZqcrcnpmpytydmanK7J2ZqcrcmVaSDpfBNmmrybCTNNPtyEmSbvZsJMk/QCSRcz4XwT5k34MBPmTbi4Cek1kPR2r4CSiyn5uEou7hVQMu8VsERagSQlEUi6mCXOt8THtcTFLXHSEqk1kPR2S7yfJT6uJS5uiVoJJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkggkKYlAkpIIJCmJQJKSCCQpiUCSkvh/R07Bl/tgHUIAAAAASUVORK5CYII=',
|
||||
_benchmark = 'data:image/png;base64,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',
|
||||
image = require('../images/IS-QR'),
|
||||
options = {
|
||||
exposure: 3
|
||||
},
|
||||
_options = {
|
||||
exposure: 4
|
||||
};
|
||||
|
||||
require('../templates/options-test')('exposure', [options, _options], [benchmark, _benchmark], image);
|
||||
|
||||
testModule('exposure', options, benchmark, image);
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,9 @@
|
||||
const testModule = require('../templates/module-test'),
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAMAzDIF7/nncRgYcTTDTRRBNNNNFEE0000UQTTTTRRB9NQAEfe+dsMAAAAABJRU5ErkJggg==';
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAMAzDIF7/nncRgYcTTDTRRBNNNNFEE0000UQTTTTRRB9NQAEfe+dsMAAAAABJRU5ErkJggg==',
|
||||
_benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAMAzDIF7/nncRgYcTTDTRRBNNNNFEE0000UQTTTTRRB9NQAEfe+dsMAAAAABJRU5ErkJggg==',
|
||||
option = {x: 1},
|
||||
_options = {x: 1, y: 1};
|
||||
|
||||
require('../templates/options-test')('grid-overlay', [option, _options], [benchmark, _benchmark]);
|
||||
|
||||
testModule('grid-overlay', {x: 1}, benchmark);
|
||||
File diff suppressed because one or more lines are too long
@@ -1,4 +1,9 @@
|
||||
const testModule = require('../templates/module-test'),
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==';
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==',
|
||||
_benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5mqEMAtHIJFEEkkkkUQSSSSRRBJJJJFEEj1UXgIdx5M8pQAAAABJRU5ErkJggg==',
|
||||
option = {method: 'Median Filtering'},
|
||||
_option = {method: 'Mean Filtering'};
|
||||
|
||||
testModule('noise-reduction', {method: 'Median Filtering'}, benchmark);
|
||||
require('../templates/options-test')('noise-reduction', [option, _option], [benchmark, _benchmark]);
|
||||
|
||||
testModule('noise-reduction', option, benchmark);
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,7 +1,13 @@
|
||||
const testModule = require('../templates/module-test'),
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAAtSURBVKXBAQEAMAiAME6H9y9nDw3B9v7MEkgkkUQSSSSRRBJJJJFEEkkkkUQH2vAC/LDhuwsAAAAASUVORK5CYII=',
|
||||
_benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAAsSURBVKXBAQEAMAiAME43m7+XhmB7f2YJJJJIIokkkkgiiSSSSCKJJJJIogOYTgJtR8dNuwAAAABJRU5ErkJggg==',
|
||||
_options = {
|
||||
saturation: 0.5
|
||||
},
|
||||
options = {
|
||||
saturation: 1.2
|
||||
};
|
||||
|
||||
require('../templates/options-test')('saturation', [options, _options], [benchmark, _benchmark]);
|
||||
|
||||
testModule('saturation', options, benchmark);
|
||||
@@ -1,4 +1,9 @@
|
||||
const testModule = require('../templates/module-test'),
|
||||
_benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAMAzDIF7/nncRgYcTTDTRRBNNNNFEE0000UQTTTTRRB9NQAEfe+dsMAAAAABJRU5ErkJggg==',
|
||||
option = {threshold: 'Automatic Thresholding'},
|
||||
_option = {threshold: 'Manual Thresholding'},
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiAIPP/5+qDMPsIJJJIIokkkkgiiSSSSCKJJJJIogNrygQcXEYsHQAAAABJRU5ErkJggg==';
|
||||
|
||||
testModule('threshold', {threshold: 'Automatic Thresholding'}, benchmark);
|
||||
testModule('threshold', option, benchmark);
|
||||
|
||||
require('../templates/options-test')('threshold', [option, _option], [benchmark, _benchmark]);
|
||||
File diff suppressed because one or more lines are too long
@@ -1,5 +1,11 @@
|
||||
const testModule = require('../templates/module-test'),
|
||||
options = {red: 240, green: 240, blue: 240},
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==';
|
||||
options = {'red': '240', 'green': '240', 'blue': '240'},
|
||||
_options = {'red': '255', 'green': '255', 'blue': '255'},
|
||||
_options2 = {'red': '12', 'green': '12', 'blue': '12'},
|
||||
benchmark = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==',
|
||||
benchmark1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==',
|
||||
benchmark2 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAklEQVR4AewaftIAAAApSURBVKXBAQEAAAiDMKR/5xuC7QYjkEgiiSSSSCKJJJJIIokkkkgiiR5YbQIegx78CAAAAABJRU5ErkJggg==';
|
||||
|
||||
require('../templates/options-test')('white-balance', [_options, _options2], [benchmark1, benchmark2]);
|
||||
|
||||
testModule('white-balance', options, benchmark);
|
||||
64
test/core/templates/options-test.js
Normal file
64
test/core/templates/options-test.js
Normal file
@@ -0,0 +1,64 @@
|
||||
const test = require('tape'),
|
||||
base64Img = require('base64-img'),
|
||||
looksSame = require('looks-same');
|
||||
|
||||
const ImageSequencer = require('../../../src/ImageSequencer');
|
||||
|
||||
const red =
|
||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABlBMVEX+AAD///+KQee0AAAAAWJLR0QB/wIt3gAAAAd0SU1FB+EGHRIVAvrm6EMAAAAMSURBVAjXY2AgDQAAADAAAceqhY4AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTctMDYtMjlUMTg6MjE6MDIrMDI6MDDGD83DAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE3LTA2LTI5VDE4OjIxOjAyKzAyOjAwt1J1fwAAAABJRU5ErkJggg==';
|
||||
target = 'test_outputs';
|
||||
|
||||
/**
|
||||
* @method OptionsChangeTest.
|
||||
* @description a common test for modules.
|
||||
* @param {String} moduleName name of the module.
|
||||
* @param {'Object'} [options] array of options.
|
||||
* @param {String} [benchmark] dataURI of the benchmark images, a image for each option.
|
||||
* @param {String} [input='red_image'] optional input image. Default is a red image.
|
||||
*/
|
||||
module.exports = (moduleName, options, benchmark, input) => {
|
||||
let sequencer = ImageSequencer({ ui: false });
|
||||
|
||||
test(`${moduleName} module works correctly with different options`, t => {
|
||||
// Load the input image.
|
||||
sequencer.loadImages(input || red);
|
||||
// Add the step.
|
||||
sequencer.addSteps(moduleName, options[0]);
|
||||
// Run the ImageSequencer with initial option.
|
||||
sequencer.run({ mode: 'test' }, () => {
|
||||
let result = sequencer.steps[1].output.src;
|
||||
|
||||
base64Img.imgSync(result, target, 'result');
|
||||
base64Img.imgSync(benchmark[0], target, 'benchmark');
|
||||
|
||||
result = './test_outputs/result.png';
|
||||
benchmark[0] = './test_outputs/benchmark.png';
|
||||
// Check to see if first option is correctly loaded.
|
||||
looksSame(result, benchmark[0], function(err, res) {
|
||||
if (err) console.log(err);
|
||||
|
||||
t.equal(res.equal, true, `${moduleName} module works correctly with initial option ${options[0][moduleName]}`);
|
||||
});
|
||||
// Change the option of the given module.
|
||||
sequencer.steps[1].setOptions(options[1]);
|
||||
// Run the ImageSequencer witch changed option.
|
||||
sequencer.run({ mode: 'test' }, () => {
|
||||
let newResult = sequencer.steps[1].output.src;
|
||||
|
||||
base64Img.imgSync(newResult, target, 'newResult');
|
||||
base64Img.imgSync(benchmark[1], target, 'benchmark');
|
||||
|
||||
newResult = './test_outputs/newResult.png';
|
||||
benchmark[1] = './test_outputs/benchmark.png';
|
||||
// Check to see if change in option changed the image correctly.
|
||||
looksSame(newResult, benchmark[1], function(err, res) {
|
||||
if (err) console.log(err);
|
||||
|
||||
t.equal(res.equal, true, `${moduleName} module works correctly when the option is changed to ${options[1][moduleName]}`);
|
||||
sequencer = null;
|
||||
t.end();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user