2015-05-02 03:49:09 +00:00
|
|
|
/*!
|
|
|
|
* Grunt file
|
|
|
|
*
|
|
|
|
* @package Flow
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*jshint node:true */
|
|
|
|
module.exports = function ( grunt ) {
|
|
|
|
grunt.loadNpmTasks( 'grunt-contrib-csslint' );
|
|
|
|
grunt.loadNpmTasks( 'grunt-contrib-jshint' );
|
|
|
|
grunt.loadNpmTasks( 'grunt-contrib-watch' );
|
2015-06-12 04:50:10 +00:00
|
|
|
grunt.loadNpmTasks( 'grunt-jsonlint' );
|
2015-05-02 03:49:09 +00:00
|
|
|
grunt.loadNpmTasks( 'grunt-banana-checker' );
|
|
|
|
grunt.loadNpmTasks( 'grunt-jscs' );
|
|
|
|
|
|
|
|
grunt.initConfig( {
|
|
|
|
jshint: {
|
|
|
|
options: {
|
|
|
|
jshintrc: true
|
|
|
|
},
|
|
|
|
all: [
|
|
|
|
'*.js',
|
|
|
|
'modules/**/*.js',
|
|
|
|
'tests/qunit/**/*.js'
|
|
|
|
]
|
|
|
|
},
|
|
|
|
jscs: {
|
|
|
|
src: '<%= jshint.all %>'
|
|
|
|
},
|
|
|
|
csslint: {
|
|
|
|
options: {
|
|
|
|
csslintrc: '.csslintrc'
|
|
|
|
},
|
|
|
|
all: 'modules/**/*.css'
|
|
|
|
},
|
|
|
|
banana: {
|
|
|
|
all: 'i18n/'
|
|
|
|
},
|
|
|
|
watch: {
|
|
|
|
files: [
|
|
|
|
'.{csslintrc,jscsrc,jshintignore,jshintrc}',
|
|
|
|
'<%= jshint.all %>',
|
|
|
|
'<%= csslint.all %>'
|
|
|
|
],
|
|
|
|
tasks: 'test'
|
2015-06-12 04:50:10 +00:00
|
|
|
},
|
|
|
|
jsonlint: {
|
|
|
|
all: [
|
|
|
|
'**/*.json',
|
|
|
|
'!node_modules/**'
|
|
|
|
]
|
2015-05-02 03:49:09 +00:00
|
|
|
}
|
|
|
|
} );
|
|
|
|
|
2015-06-12 04:50:10 +00:00
|
|
|
grunt.registerTask( 'lint', [ 'jscs', 'jshint', 'csslint', 'jsonlint', 'banana' ] );
|
2015-05-02 03:49:09 +00:00
|
|
|
grunt.registerTask( 'test', 'lint' );
|
|
|
|
grunt.registerTask( 'default', 'test' );
|
|
|
|
};
|