/
Gruntfile.js
84 lines (78 loc) · 1.9 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
module.exports = function(grunt){
grunt.initConfig({
uglify: {
test: {
files: {
'test/browser/compiledSuite.js': ['test/browser/assembled.js']
}
},
build: {
files: {
'build/ndn-io.min.js' : ["build/ndn-io.js"]
}
}
},
browserify: {
options:{
alias: ["./src/browser/readFile.js:./src/node/readFile.js", "./src/browser/assembleFile.js:./src/node/assembleFile.js"]
},
test: {
src: "test/browser/suite.js",
dest: "test/browser/assembled.js"
},
build: {
src: "index.js",
dest: "build/ndn-io.js",
options: {
bundleOptions: {
standalone: 'IO'
}
}
}
},
jsdoc : {
dist : {
src: ['src/**/*.js', "src/*.js"],
options: {
destination: 'doc'
}
}
},
mochaTest: {
suite: {
options: {
reporter: 'spec'
,clearRequireCache: true
},
src: ["test/node/suite.js"]
},
},
jshint: {
options: {
curly: true,
eqeqeq: true,
laxcomma: true,
laxbreak: true
},
All: ["src/*.js", "src/**/*.js"]
},
watch: {
all: {
files: ["src/*.js", "src/**/*.js"],
tasks: ["jshint", "browserify:test", "uglify:test", "mochaTest" ]
},
livereload: {
options: { livereload: true },
files: ['test/browser/compiledSuite.js'],
}
}
})
grunt.loadNpmTasks('grunt-jsdoc');
grunt.loadNpmTasks("grunt-mocha-test");
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks("grunt-contrib-watch");
grunt.loadNpmTasks('grunt-browserify');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.registerTask('suite', ['jshint', 'browserify:test', "mochaTest"])
grunt.registerTask('build', [ "browserify:build", "uglify:build"])
}