summaryrefslogtreecommitdiff
path: root/Gruntfile.js
blob: e2febff7567aac0224309201c3f9b02ff3df4551 (about) (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
69
70
module.exports = function (grunt) {

    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        library: grunt.file.readJSON('bower.json'),
        uglify: {
            options: {
                banner: '/*! <%= pkg.name %> <%= pkg.version %> */'
            },
            jid: {
                files: {
                    '<%= library.name %>.min.js': ['<%= library.name %>.js']
                }
            }
        },
        jshint: {
            options: {
                src: [
                    '<%= library.name %>'
                ],
                // options here to override JSHint defaults
                globals: {
                    module: true
                },
                globalstrict: false
            }
        },
        watch: {
            options: {
                spawn: false,
                dateFormat: function(time){}
            },
            test: {
                files: [
                    "injector.js",
                    "injector-tests.js"
                ],
                tasks: ['test']
            }
        },
        mochaTest: {
            test: {
                options: {
                    clearRequireCache: true,
                    reporter: 'min',
                    require: [
                        function(){
                            Injector = require('./injector');
                            expect = require('chai').expect;
                        }
                    ]
                },
                src: [
                    "injector.js",
                    "injector-tests.js"
                ]
            }
        }
    });

    grunt.loadNpmTasks('grunt-contrib-uglify');
    grunt.loadNpmTasks('grunt-contrib-jshint');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-mocha-test');

    grunt.registerTask('default', ['jshint', 'uglify']);
    grunt.registerTask('test', ['jshint', 'mochaTest']);
    grunt.registerTask('live', ['test', 'watch:test']);

};