'use strict'; module.exports = function (grunt) { grunt.initConfig({ jshint: { options: { jshintrc: '.jshintrc' }, files: ['Gruntfile.js', 'bin/*', 'lib/**/*.js', 'test/*.js'] }, simplemocha: { options: { reporter: 'spec', timeout: '5000' }, full: { src: ['test/*.js'] }, short: { options: { reporter: 'dot' }, src: ['<%= simplemocha.full.src %>'] } }, exec: { coverage: { command: 'node node_modules/istanbul/lib/cli.js cover --dir ./coverage node_modules/mocha/bin/_mocha -- -R dot test/*.js' }, 'test-files': { command: 'node download-test-assets.js' } }, watch: { files: ['<%= jshint.files %>'], tasks: ['jshint', 'simplemocha:short'] } }); grunt.loadNpmTasks('grunt-contrib-jshint'); grunt.loadNpmTasks('grunt-contrib-watch'); grunt.loadNpmTasks('grunt-simple-mocha'); grunt.loadNpmTasks('grunt-exec'); grunt.registerTask('test', ['jshint', 'simplemocha:full']); grunt.registerTask('coverage', 'exec:coverage'); grunt.registerTask('test-files', 'exec:test-files'); grunt.registerTask('default', 'test'); };