add steps api functions (#293)

* add steps api functions

Signed-off-by: tech4GT <varun.gupta1798@gmail.com>

* optimize getHeight and getWidth

Signed-off-by: tech4GT <varun.gupta1798@gmail.com>

* add tests

Signed-off-by: tech4GT <varun.gupta1798@gmail.com>

* update tests

Signed-off-by: tech4GT <varun.gupta1798@gmail.com>
This commit is contained in:
Varun Gupta
2018-07-25 23:30:54 +05:30
committed by Jeffrey Warren
parent 56feb4c546
commit 10e47656a3
6 changed files with 96 additions and 21 deletions

View File

@@ -1,14 +1,27 @@
module.exports = function testModule(options, UI) {
module.exports = function Dynamic(options, UI, util) {
// Tests for functions that are available inside modules only
var output;
// This function is called on every draw.
function draw(input, callback) {
var output = function(input) {
return input;
var step = this;
if (this.getPreviousStep().options.name != "invert") throw new Error("getPreviousStep not working");
if (this.getNextStep().options.name != "invert") throw new Error("getNextStep not working");
if (this.getInput(0) != this.getOutput(-1)) throw new Error("getInput and getOuput now working")
if (this.getFormat() != "jpeg") throw new Error("getFormat not working");
if (this.getOptions().name != "test") throw new Error("getOptions not working");
this.setOptions({ name: "test-1" });
if (this.getOptions().name != "test-1") throw new Error("setOptions not working not working");
this.getHeight(((h) => { if (h != 16) throw new Error("getHeight not working") }));
this.getWidth((w) => { if (w != 16) throw new Error("getWidth not working") });
function output(image, datauri, mimetype) {
step.output = input;
}
this.output = output(input); // run the output and assign it to this.output
callback();
}
return {

View File

@@ -1,5 +1,5 @@
{
"name": "test",
"description": "Outputs the same image.",
"description": "Functions that are scoped inside modules are tested with this. This Module is dynamically loaded.",
"inputs": {}
}