|
1 | 1 | module.exports = function(grunt) {
|
2 |
| - 'use strict'; |
| 2 | + 'use strict'; |
3 | 3 |
|
4 |
| - require('load-grunt-tasks')(grunt); |
| 4 | + require('load-grunt-tasks')(grunt); |
5 | 5 |
|
6 |
| - grunt.initConfig({ |
7 |
| - assetsDir: 'app', |
8 |
| - distDir: 'dist', |
9 |
| - testsDir: 'test', |
10 |
| - availabletasks: { |
11 |
| - tasks: { |
12 |
| - options: { |
13 |
| - filter: 'include', |
14 |
| - groups: { |
15 |
| - 'Development': ['dev', 'test:unit', 'test:e2e'] |
16 |
| - }, |
17 |
| - sort: ['dev', 'test:unit', 'test:e2e'], |
18 |
| - descriptions: { |
19 |
| - 'dev' : 'Launch the static server and watch tasks', |
20 |
| - 'test:unit' : 'Run unit tests and show coverage report', |
21 |
| - 'test:e2e' : 'Run end-to-end tests using webdriverJS' |
22 |
| - }, |
23 |
| - tasks: ['dev', 'test:unit', 'test:e2e'] |
24 |
| - } |
25 |
| - } |
| 6 | + grunt.initConfig({ |
| 7 | + assetsDir: 'app', |
| 8 | + distDir: 'dist', |
| 9 | + testsDir: 'test', |
| 10 | + availabletasks: { |
| 11 | + tasks: { |
| 12 | + options: { |
| 13 | + filter: 'include', |
| 14 | + groups: { |
| 15 | + 'Development': ['dev', 'test:unit', 'test:e2e'] |
| 16 | + }, |
| 17 | + sort: ['dev', 'test:unit', 'test:e2e'], |
| 18 | + descriptions: { |
| 19 | + 'dev' : 'Launch the static server and watch tasks', |
| 20 | + 'test:unit' : 'Run unit tests and show coverage report', |
| 21 | + 'test:e2e' : 'Run end-to-end tests using webdriverJS & jasmine_node' |
| 22 | + }, |
| 23 | + tasks: ['dev', 'test:unit', 'test:e2e'] |
| 24 | + } |
| 25 | + } |
| 26 | + }, |
| 27 | + browserSync: { |
| 28 | + dev: { |
| 29 | + bsFiles: { |
| 30 | + src : [] |
| 31 | + }, |
| 32 | + options: { |
| 33 | + watchTask: true, |
| 34 | + ghostMode: { |
| 35 | + clicks: true, |
| 36 | + scroll: true, |
| 37 | + links: false, |
| 38 | + forms: false |
| 39 | + }, |
| 40 | + server: { |
| 41 | + baseDir: "<%= assetsDir %>" |
| 42 | + } |
| 43 | + } |
| 44 | + } |
| 45 | + }, |
| 46 | + connect: { |
| 47 | + test : { |
| 48 | + options: { |
| 49 | + port: 8887, |
| 50 | + base: '<%= assetsDir %>', |
| 51 | + keepalive: false, |
| 52 | + livereload: false, |
| 53 | + open: false |
| 54 | + } |
| 55 | + } |
| 56 | + }, |
| 57 | + csslint: { |
| 58 | + options: { |
| 59 | + csslintrc: '.csslintrc' |
26 | 60 | },
|
27 |
| - browserSync: { |
28 |
| - dev: { |
29 |
| - bsFiles: { |
30 |
| - src : [] |
31 |
| - }, |
32 |
| - options: { |
33 |
| - watchTask: true, |
34 |
| - ghostMode: { |
35 |
| - clicks: true, |
36 |
| - scroll: true, |
37 |
| - links: false, |
38 |
| - forms: false |
39 |
| - }, |
40 |
| - server: { |
41 |
| - baseDir: "<%= assetsDir %>" |
42 |
| - } |
43 |
| - } |
44 |
| - } |
| 61 | + all: { |
| 62 | + src: ['<%= assets_dir %>/css/*.css'] |
| 63 | + } |
| 64 | + }, |
| 65 | + jasmine_node: { |
| 66 | + options: { |
| 67 | + forceExit: true, |
| 68 | + match: '.', |
| 69 | + matchall: false, |
| 70 | + extensions: 'js', |
| 71 | + specNameMatcher: 'Spec' |
45 | 72 | },
|
46 |
| - csslint: { |
47 |
| - options: { |
48 |
| - csslintrc: '.csslintrc' |
49 |
| - }, |
50 |
| - all: { |
51 |
| - src: ['<%= assets_dir %>/css/*.css'] |
52 |
| - } |
| 73 | + all: ['test/e2e'] |
| 74 | + }, |
| 75 | + jshint: { |
| 76 | + options: { |
| 77 | + jshintrc: '.jshintrc' |
53 | 78 | },
|
54 |
| - jasmine_node: { |
55 |
| - options: { |
56 |
| - forceExit: true, |
57 |
| - match: '.', |
58 |
| - matchall: false, |
59 |
| - extensions: 'js', |
60 |
| - specNameMatcher: 'spec' |
61 |
| - }, |
62 |
| - all: ['test/e2e/'] |
| 79 | + all : { |
| 80 | + src : [ |
| 81 | + '<%= assetsDir %>/js/*.js','<%= testsDir %>/**/*.js' |
| 82 | + ] |
| 83 | + } |
| 84 | + }, |
| 85 | + karma: { |
| 86 | + dev_unit: { |
| 87 | + options: { |
| 88 | + configFile: 'test/unit/conf/unit-test-conf.js', |
| 89 | + background: true, |
| 90 | + singleRun: false, |
| 91 | + autoWatch: true, |
| 92 | + reporters: ['progress'] |
| 93 | + } |
63 | 94 | },
|
64 |
| - jshint: { |
65 |
| - options: { |
66 |
| - jshintrc: '.jshintrc' |
67 |
| - }, |
68 |
| - all : { |
69 |
| - src : [ |
70 |
| - '<%= assetsDir %>/js/*.js','<%= testsDir %>/**/*.js' |
71 |
| - ] |
72 |
| - } |
| 95 | + dist_unit: { |
| 96 | + options: { |
| 97 | + configFile: 'test/unit/conf/unit-test-conf.js', |
| 98 | + background: false, |
| 99 | + singleRun: true, |
| 100 | + autoWatch: false, |
| 101 | + reporters: ['progress', 'coverage'], |
| 102 | + coverageReporter : { |
| 103 | + type : 'html', |
| 104 | + dir : 'reports/coverage' |
| 105 | + } |
| 106 | + } |
| 107 | + } |
| 108 | + }, |
| 109 | + watch: { |
| 110 | + options : { |
| 111 | + interrupt: true |
73 | 112 | },
|
74 |
| - karma: { |
75 |
| - dev_unit: { |
76 |
| - options: { |
77 |
| - configFile: 'test/unit/conf/unit-test-conf.js', |
78 |
| - background: true, |
79 |
| - singleRun: false, |
80 |
| - autoWatch: true, |
81 |
| - reporters: ['progress'] |
82 |
| - } |
83 |
| - }, |
84 |
| - dist_unit: { |
85 |
| - options: { |
86 |
| - configFile: 'test/unit/conf/unit-test-conf.js', |
87 |
| - background: false, |
88 |
| - singleRun: true, |
89 |
| - autoWatch: false, |
90 |
| - reporters: ['progress', 'coverage'], |
91 |
| - coverageReporter : { |
92 |
| - type : 'html', |
93 |
| - dir : 'reports/coverage' |
94 |
| - } |
95 |
| - } |
96 |
| - } |
| 113 | + js: { |
| 114 | + files: ['<%= assetsDir %>/**/*.js','<%= testsDir %>/**/*.js'], |
| 115 | + tasks: ['newer:jshint','karma:dev_unit:run'] |
97 | 116 | },
|
98 |
| - watch: { |
99 |
| - options : { |
100 |
| - interrupt: true |
101 |
| - }, |
102 |
| - js: { |
103 |
| - files: ['<%= assetsDir %>/**/*.js','<%= testsDir %>/**/*.js'], |
104 |
| - tasks: ['newer:jshint','karma:dev_unit:run'] |
105 |
| - }, |
106 |
| - css: { |
107 |
| - files: ['<%= assetsDir %>/scss/**/*.scss'], |
108 |
| - tasks: ['newer:sass'] |
109 |
| - } |
| 117 | + css: { |
| 118 | + files: ['<%= assetsDir %>/scss/**/*.scss'], |
| 119 | + tasks: ['newer:sass'] |
110 | 120 | }
|
111 |
| - }); |
112 |
| - |
113 |
| - grunt.registerTask('dev', [ |
114 |
| - 'browserSync', |
115 |
| - 'karma:dev_unit:start', |
116 |
| - 'watch' |
117 |
| - ]); |
| 121 | + } |
| 122 | + }); |
118 | 123 |
|
119 |
| - grunt.registerTask('test:unit', [ |
120 |
| - 'karma:dist_unit:start' |
121 |
| - ]); |
| 124 | + grunt.registerTask('dev', [ |
| 125 | + 'browserSync', |
| 126 | + 'karma:dev_unit:start', |
| 127 | + 'watch' |
| 128 | + ]); |
122 | 129 |
|
123 |
| - grunt.registerTask('test:e2e', [ |
| 130 | + grunt.registerTask('test:unit', [ |
| 131 | + 'karma:dist_unit:start' |
| 132 | + ]); |
124 | 133 |
|
125 |
| - ]); |
| 134 | + grunt.registerTask('test:e2e', [ |
| 135 | + 'jasmine_node' |
| 136 | + ]); |
126 | 137 |
|
127 |
| - grunt.registerTask('ls', ['availabletasks']); |
| 138 | + grunt.registerTask('ls', ['availabletasks']); |
128 | 139 |
|
129 | 140 | };
|
0 commit comments