adding tests for CLI functionality (#1718)

* test: add a basic cli test for savesequence

* refactor cli-test

* Run cli tests seperately

Co-authored-by: Jeffrey Warren <jeff@unterbahn.com>
Co-authored-by: Harsh Khandeparkar <34770591+HarshKhandeparkar@users.noreply.github.com>
This commit is contained in:
Barun Acharya
2020-10-29 17:12:09 +05:30
committed by GitHub
parent a82bdea390
commit a5e3584ea8
3 changed files with 43 additions and 2 deletions

View File

@@ -23,7 +23,9 @@ jobs:
- name: "Jasmine UI tests (mocked browser env)" - name: "Jasmine UI tests (mocked browser env)"
script: npm run test-ui script: npm run test-ui
- name: "jest-puppeteer UI tests (full browser env)" - name: "jest-puppeteer UI tests (full browser env)"
script: npm run test-ui-2 script: npm run test-ui-2
- name: "CLI tests"
script: npm run test-cli
- name: "Grunt build test of dev environment" - name: "Grunt build test of dev environment"
script: grunt build script: grunt build
after_success: after_success:

View File

@@ -12,8 +12,9 @@
"test-all": "npm run test && npm run benchmark && npm run gif-test && grunt tests && npm run core-tests", "test-all": "npm run test && npm run benchmark && npm run gif-test && grunt tests && npm run core-tests",
"test-ui": "node node_modules/jasmine/bin/jasmine test/ui/spec/*.js", "test-ui": "node node_modules/jasmine/bin/jasmine test/ui/spec/*.js",
"test-ui-2": "node ./node_modules/.bin/jest", "test-ui-2": "node ./node_modules/.bin/jest",
"test-cli": "node test/cli/*.js | tap-spec",
"setup": "npm i && npm i -g grunt grunt-cli && npm rebuild --build-from-source && grunt build", "setup": "npm i && npm i -g grunt grunt-cli && npm rebuild --build-from-source && grunt build",
"start": "grunt serve" "start": "grunt serve"
}, },
"lint-staged": { "lint-staged": {
"*.js": [ "*.js": [

38
test/cli/saveSequence.js Executable file
View File

@@ -0,0 +1,38 @@
require('../../src/ImageSequencer');
sequencer = ImageSequencer({ ui: true });
const saveSequence = require('../../src/cli/saveSequence.js');
const test = require('tape');
const { Command } = require('commander');
test('testing save sequence function', function (t) {
try {
let program = new Command();
program
.option('--save-sequence [string]', 'Name space separated with Stringified sequence');
program.parse(['node', 'test', '--save-sequence', '"invert brightness"']);
if (program.saveSequence)
saveSequence(program, sequencer);
t.true(1, 'creation success');
} catch (error) {
t.true(!error, 'creation fail');
}
try {
let program = new Command();
program
.option('--save-sequence [string]', 'Name space separated with Stringified sequence');
program.parse(['node', 'test', '--save-sequence']);
if (program.saveSequence)
saveSequence(program, sequencer);
t.true(0, 'creation success');
} catch (error) {
t.true(1, 'creation fail');
}
t.end();
});