I need to see the stack trace when the test failed, but something hides it when Grunt runs the Mocha test suite. When I run the tests myself ( mocha --recursive ), I get a stack trace:
site/server/server.js:10 server.use( express.static( path.join( __dirname( '../client' )))); ^ TypeError: string is not a function at ...
But with this Gruntfile:
'use strict'; var should = require( 'should' ); module.exports = function( grunt ) { grunt.initConfig({ cafemocha: { test: { src: 'server/test/**/test-*.js', options: {} } }, watch: { files: [ 'server/**/*.js', 'Gruntfile.js', 'package.json' ], tasks: [ 'test' ] }, complexity: { generic: { src: [ 'server/**/*.js', 'Gruntfile.js' ], options: { cyclomatic: 2, halstead: 9, maintainability: 80 } } } }); grunt.loadNpmTasks( 'grunt-notify' ); grunt.loadNpmTasks( 'grunt-contrib-watch' ); grunt.loadNpmTasks( 'grunt-cafe-mocha' ); grunt.loadNpmTasks( 'grunt-complexity' ); grunt.registerTask( 'default', [ 'cafemocha' ]); grunt.registerTask( 'test', [ 'cafemocha', 'complexity' ]); };
All I get is a summary of the error:
$ grunt test Running "cafemocha:test" (cafemocha) task Warning: string is not a function Use --force to continue. Aborted due to warnings.
source share