This repository has been archived by the owner on Oct 25, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 20
/
Copy pathGruntfile.js
109 lines (104 loc) · 3.2 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
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
requirejs: {
compile: {
options: {
baseUrl: "",
paths: {
jquery: "empty:",
async: "empty:"
},
name: "xooie/xooie",
include: [
"xooie/widgets/carousel",
"xooie/widgets/dropdown",
"xooie/widgets/tab",
"xooie/widgets/dialog"
],
out: "source/javascripts/xooie-<%= pkg.version %>.js",
optimize: "none"
}
},
compile_min: {
options: {
baseUrl: "",
paths: {
jquery: "empty:",
async: "empty:"
},
name: "xooie/xooie",
include: [
"xooie/widgets/carousel",
"xooie/widgets/dropdown",
"xooie/widgets/accordion",
"xooie/widgets/tab",
"xooie/widgets/dialog"
],
out: "source/javascripts/xooie-<%= pkg.version %>-min.js",
optimize: "uglify"
}
}
},
jasmine: {
test: {
//src: "xooie/**/*.js",
src: ['xooie/widgets/base.js', 'xooie/widgets/dropdown.js', 'xooie/widgets/carousel.js', 'xooie/widgets/tab.js', 'xooie/widgets/accordion.js', 'xooie/addons/base.js', 'xooie/**.js'],
options: {
//specs: "spec/**/*.spec.js",
specs: ['spec/widgets/base.spec.js', 'spec/widgets/dropdown.spec.js', 'spec/widgets/carousel.spec.js', 'spec/widgets/tab.spec.js', 'spec/widgets/accordion.spec.js', 'spec/addons/base.spec.js', 'spec/**.js'],
template: require('grunt-template-jasmine-istanbul'),
vendor: ["lib/jquery.js","lib/require.js","lib/micro_tmpl.js","lib/jasmine-jquery.js"],
helpers: "spec/helpers.js",
templateOptions: {
coverage: 'source/coverage/coverage.json',
report: 'source/coverage',
template: require('grunt-template-jasmine-requirejs'),
templateOptions: {
requireConfigFile: 'lib/config.js'
}
}
}
}
},
jslint: {
xooie: {
src: ['xooie/**/*.js', 'spec/event_handler.spec.js', 'spec/helpers.spec.js', 'spec/shared.spec.js', 'spec/stylesheet.spec.js', 'spec/widgets/carousel.spec.js'],
directives: {
todo: true,
nomen: true,
nonew: true,
indent: 2,
predef: [
'define',
'require',
'window',
'document',
'setTimeout',
'clearTimeout',
'setInterval',
'clearInterval',
'Mustache',
'_',
'jasmine',
'describe',
'it',
'expect',
'beforeEach',
'afterEach',
'spyOn',
'setFixtures',
'waitsFor',
'runs'
]
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-requirejs');
grunt.loadNpmTasks('grunt-contrib-jasmine');
grunt.loadNpmTasks('grunt-jslint');
grunt.registerTask('test', ['jslint', 'jasmine']);
grunt.registerTask('build', ['test', 'requirejs']);
};