summaryrefslogtreecommitdiff
path: root/www/lib/angular-circular-navigation/Gruntfile.js
blob: 5eb11d525f43e2ddb5eb1c7e5b8ccf717b4a06e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
'use strict';

module.exports = function (grunt) {

   // load all grunt tasks
  require('load-grunt-tasks')(grunt);

  // default task
  grunt.registerTask('default', ['jshint', 'karma:unit']);
  grunt.registerTask('watch', ['karma:watch']);
  grunt.registerTask('coverage', ['karma:coverage', 'coveralls']);


  // perform test in Firefox on travis ci
  var testConfig = function(configFile, customOptions) {
    var options = { configFile: configFile, keepalive: true };
    var travisOptions = process.env.TRAVIS && { browsers: ['Firefox'] };
    return grunt.util._.extend(options, customOptions, travisOptions);
  };

  grunt.initConfig({

    // Compiles Sass to CSS and generates necessary files if requested
    compass: {
      dist: {
        options: {
          sassDir: 'scss',
          cssDir: '.',
          // environment: 'production'
        }
      }
    },

    karma: {
      unit: {
        options: testConfig('test/karma.conf.js')
      },
      watch: {
        options: testConfig('test/karma.conf.js'),
        singleRun: false,
        autoWatch: true
      },
      coverage: {
        options: testConfig('test/karma.conf.js'),
        reporters: ['coverage']
      }
    },

    coveralls: {
      options: {
        debug: true,
        coverage_dir: 'coverage'
      }
    },

    jshint: {
      options: {
        jshintrc: '.jshintrc'
      },
      gruntfile: 'Gruntfile.js',
      angularChart: 'angular-circular-navigation.js',
      test: 'test/*.js',
      // demo: 'demo/*.js'
    }

  });

};