forked from nabil-boag/angular-multimocks
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGruntfile.js
128 lines (117 loc) · 2.72 KB
/
Gruntfile.js
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
/* global module, require */
module.exports = function (grunt) {
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-karma');
grunt.registerTask('build', [
'jshint',
'clean:build',
'copy:build'
]);
grunt.registerTask('test', [
'karma:headless_unit'
]);
grunt.registerTask('test:browser', [
'karma:browser_unit'
]);
grunt.registerTask('test:debug', [
'karma:browser_unit_debug'
]);
grunt.registerTask('package', [
'clean:package',
'concat:package',
'uglify:package'
]);
grunt.registerTask('workflow:dev', [
'build',
'watch:dev'
]);
grunt.initConfig({
pkg: grunt.file.readJSON("package.json"),
env: grunt.option('env') || 'dev',
app: {
name: 'angular-multimocks',
source_dir: 'app/src',
build_dir: 'app/build',
package_dir: 'app/package'
},
clean: {
build : '<%= app.build_dir %>',
package : '<%= app.package_dir %>'
},
jshint: {
source: [
'<%= app.source_dir %>/**/*.js',
'!<%= app.source_dir %>/bower_components/**/*.js'
],
options: {
jshintrc: '.jshintrc',
},
},
copy: {
build: {
files: [
{
expand: true,
cwd: '<%= app.source_dir %>',
src: ['**', '!css/**'],
dest: '<%= app.build_dir %>'
},
{
expand: true,
src: ['bower.json', 'package.json'],
dest: '<%= app.build_dir %>'
}
]
}
},
karma: {
headless_unit: {
options: {
configFile: 'karma-unit.conf.js',
browsers: ['PhantomJS']
}
},
browser_unit: {
options: {
configFile: 'karma-unit.conf.js'
}
},
browser_unit_debug: {
options: {
configFile: 'karma-unit.conf.js',
singleRun: false,
browsers: ['Chrome']
}
}
},
concat: {
package: {
src: [
'<%= app.build_dir %>/js/**/*.js',
'!<%= app.build_dir %>/js/**/*.spec.js',
],
dest: '<%= app.package_dir %>/js/<%= app.name %>.js'
}
},
uglify: {
package: {
files: {
'<%= app.package_dir %>/js/<%= app.name %>.min.js': [
'<%= app.package_dir %>/js/<%= app.name %>.js'
]
}
}
},
watch: {
dev: {
files: ['<%= app.source_dir %>/**/*'],
tasks: ['build', 'test:dev']
}
}
});
};