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.
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.
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