From f7e0ff81c7d99797a08d52941d0d568aae983373 Mon Sep 17 00:00:00 2001 From: Patrik Henningsson Date: Fri, 18 Apr 2014 12:04:39 +0200 Subject: [PATCH] Add Gruntfile. --- .travis.yml | 3 ++- Gruntfile.coffee | 51 ++++++++++++++++++++++++++++++++++++++++++++++ lib/parse/parse.js | 2 +- package.json | 9 +++++--- 4 files changed, 60 insertions(+), 5 deletions(-) create mode 100644 Gruntfile.coffee diff --git a/.travis.yml b/.travis.yml index 1765d72b..a8dde554 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,4 +3,5 @@ node_js: - 0.8 before_install: - sudo apt-get update - - sudo apt-get install graphviz \ No newline at end of file + - sudo apt-get install graphviz + - sudo npm install -g grunt-cli \ No newline at end of file diff --git a/Gruntfile.coffee b/Gruntfile.coffee new file mode 100644 index 00000000..864fa9ad --- /dev/null +++ b/Gruntfile.coffee @@ -0,0 +1,51 @@ +module.exports = (grunt) -> + 'use strict' + + # Grunt project configuration. + # ---------------------- + @initConfig + pkg: grunt.file.readJSON("package.json") + + # Make a release. + # https://github.com/geddski/grunt-release + # ---------------------------------------------- + release: + options: + commit: true + tag: true + push: true + pushTags: true + npm: false + commitMessage: "Bump to version <%= version %>" + tagMessage: "Tagged <%= version %>" + + # JSHint task. + # https://github.com/gruntjs/grunt-contrib-jshint + # ----------------------------------------------- + jshint: + options: + jshintrc: ".jshintrc" + all: ['test/*.js', 'bin', 'lib'] + + # Mocha test task. + # https://github.com/pghalliday/grunt-mocha-test + # ----------------------------------------- + # node_modules/.bin/mocha --ignore-leaks --reporter spec test/*.js + mochaTest: + test: + options: + reporter: 'spec' + src: ['test/*.js'] + + # Load tasks. + # ----------- + @loadNpmTasks "grunt-contrib-jshint" + @loadNpmTasks "grunt-mocha-test" + @loadNpmTasks "grunt-release" + + # Register tasks. + # --------------- + @registerTask "default", [ + "jshint" + "mochaTest" + ] diff --git a/lib/parse/parse.js b/lib/parse/parse.js index 495e9abb..db301982 100644 --- a/lib/parse/parse.js +++ b/lib/parse/parse.js @@ -11,7 +11,7 @@ * see: http://github.com/jrburke/requirejs for details */ -/*jshint plusplus: false, strict: false, maxdepth: 6, maxcomplexity: 13, maxstatements: 28 */ +/*jshint plusplus: false, strict: false, maxdepth: 6, maxcomplexity: 21, maxstatements: 28 */ /*global define: false */ var uglify = require('uglify-js'), diff --git a/package.json b/package.json index 531682a8..46679ef3 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "node >= 0.8.0" ], "scripts": { - "test": "node_modules/jshint/bin/hint test/*.js bin lib && node_modules/.bin/mocha --ignore-leaks --reporter spec test/*.js" + "test": "grunt" }, "dependencies": { "commander": "1.0.0", @@ -41,8 +41,11 @@ "amdetective": "0.0.1" }, "devDependencies": { - "jshint": "0.9.1", - "mocha": "1.3.x", + "grunt": "^0.4.4", + "grunt-cli": "0.1.8", + "grunt-contrib-jshint": "0.10.0", + "grunt-mocha-test": "0.10.2", + "grunt-release": "0.7.0", "should": "*" }, "main": "./lib/madge",