Gruntfile.coffee 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. spawn = require("child_process").spawn
  2. module.exports = (grunt) ->
  3. grunt.initConfig
  4. coffee:
  5. app_src:
  6. expand: true,
  7. flatten: true,
  8. cwd: "app"
  9. src: ['coffee/*.coffee'],
  10. dest: 'app/js/',
  11. ext: '.js'
  12. app:
  13. src: "app.coffee"
  14. dest: "app.js"
  15. unit_tests:
  16. expand: true
  17. cwd: "test/unit/coffee"
  18. src: ["**/*.coffee"]
  19. dest: "test/unit/js/"
  20. ext: ".js"
  21. acceptance_tests:
  22. expand: true
  23. cwd: "test/acceptance/coffee"
  24. src: ["**/*.coffee"]
  25. dest: "test/acceptance/js/"
  26. ext: ".js"
  27. smoke_tests:
  28. expand: true
  29. cwd: "test/smoke/coffee"
  30. src: ["**/*.coffee"]
  31. dest: "test/smoke/js"
  32. ext: ".js"
  33. clean:
  34. app: ["app/js/"]
  35. unit_tests: ["test/unit/js"]
  36. acceptance_tests: ["test/acceptance/js"]
  37. smoke_tests: ["test/smoke/js"]
  38. execute:
  39. app:
  40. src: "app.js"
  41. mochaTest:
  42. unit:
  43. options:
  44. reporter: "spec"
  45. src: ["test/unit/js/**/*.js"]
  46. acceptance:
  47. options:
  48. reporter: "spec"
  49. timeout: 40000
  50. grep: grunt.option("grep")
  51. src: ["test/acceptance/js/**/*.js"]
  52. smoke:
  53. options:
  54. reported: "spec"
  55. timeout: 10000
  56. src: ["test/smoke/js/**/*.js"]
  57. grunt.loadNpmTasks 'grunt-contrib-coffee'
  58. grunt.loadNpmTasks 'grunt-contrib-clean'
  59. grunt.loadNpmTasks 'grunt-mocha-test'
  60. grunt.loadNpmTasks 'grunt-shell'
  61. grunt.loadNpmTasks 'grunt-execute'
  62. grunt.loadNpmTasks 'grunt-bunyan'
  63. grunt.registerTask 'compile:app', ['clean:app', 'coffee:app', 'coffee:app_src', 'coffee:smoke_tests']
  64. grunt.registerTask 'run', ['compile:app', 'bunyan', 'execute']
  65. grunt.registerTask 'compile:unit_tests', ['clean:unit_tests', 'coffee:unit_tests']
  66. grunt.registerTask 'test:unit', ['compile:app', 'compile:unit_tests', 'mochaTest:unit']
  67. grunt.registerTask 'compile:acceptance_tests', ['clean:acceptance_tests', 'coffee:acceptance_tests']
  68. grunt.registerTask 'test:acceptance', ['compile:acceptance_tests', 'mochaTest:acceptance']
  69. grunt.registerTask 'compile:smoke_tests', ['clean:smoke_tests', 'coffee:smoke_tests']
  70. grunt.registerTask 'test:smoke', ['compile:smoke_tests', 'mochaTest:smoke']
  71. grunt.registerTask 'install', 'compile:app'
  72. grunt.registerTask 'default', ['run']