Developer tools for soyun projects. It provides gulp tasks with linters, tests execution and more.
Install the module
$ npm install syn-dev-tools --save-dev
Create gulpfile.js with folowwing content
/*
* Gulpfile
* Tasks are registered from dev-tools module.
*/
var devTools = require('syn-dev-tools').gulp
var manager = devTools.Manager.getInstance(require('gulp'))
manager.registerTasks()
Done ! You can use any of the gulp tasks
Compiles all files minified.
$ gulp
Compiles all files and starts a web serve to serve them.
$ gulp serve
Executes all tests located in /test folder
$ gulp test
$ gulp test.unit
Unit tests are executed with karma, using the following frameworks:
$ gulp test.e2e
** IMPORTANT **
** If you want to execute end-to-end tests, you must update webdriver to execute tests in chromeDriver.**
$ node_modules/.bin/webdriver-manager update
If you want to work on your end-to-end tests, you must compile the project manually. So, for instance, you can run both commands y separate windows to make your tests reexecute each time a file is modified
$ gulp serve --watch --no-minify
$ gulp test.e2e --watch
Gulp commands accept a set of options that can influence the behaviour of the tasks.
Sets the environment. Its value is passed as "env" to any compiled template.
Default: 'production'
Sets debug mode in all tasks. It activates source maps, for instance.
Example: execute tests with sourcemaps
$ gulp test --debug
Enables/Disables all linters: coffeelint, scsslint, etc.
Example: execute tests without linters
$ gulp test --no-lint
Enables/Disables minification of js, css and html files.
Example: compile app without minification (faster)
$ gulp --no-minify
Makes any task to reload each time a file is edited
Example: re-excute tests on any file change
$ gulp serve --watch
manager.registerTasks( '*', 'my-prefix-' );
$ gulp my-prefix-serve