-
Notifications
You must be signed in to change notification settings - Fork 53
/
Gruntfile.coffee
122 lines (113 loc) · 3.43 KB
/
Gruntfile.coffee
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
#global module:false
module.exports = (grunt) ->
# Project configuration.
grunt.initConfig
pkg: grunt.file.readJSON("package.json")
uglify:
plugin:
files: [
expand: true
cwd: "dist/"
src: "typeahead-addresspicker.js"
dest: "dist/"
ext: ".min.js"
]
options:
banner: "/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - " + "<%= grunt.template.today(\"yyyy-mm-dd\") %>\n" + "<%= pkg.homepage ? \"* \" + pkg.homepage + \"\\n\" : \"\" %>" + "* Copyright (c) <%= grunt.template.today(\"yyyy\") %> <%= pkg.author.name %>;" + " Licensed <%= _.pluck(pkg.licenses, \"type\").join(\", \") %> */"
coffee:
plugin:
files: [
expand: true
cwd: "src/"
src: "*.coffee"
dest: "dist/"
ext: ".js"
]
specs :
files: [
expand: true
cwd: 'spec/coffeescripts/'
src: '*.coffee'
dest: 'spec/javascripts/'
ext: '.js'
]
helpers :
files: [
expand: true
cwd: 'spec/coffeescripts/helpers/'
src: '*.coffee'
dest: 'spec/javascripts/helpers/'
ext: '.js'
]
watch:
files: [
"src/*.coffee"
"spec/coffeescripts/**/*.coffee"
]
tasks: [
"coffee"
"growl:coffee"
"jasmine"
"growl:jasmine"
]
growl:
coffee:
title: "CoffeeScript"
message: "Compiled successfully"
jasmine :
title : 'Jasmine'
message : 'Tests passed successfully'
jasmine :
src : [
'http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js',
'bower_components/typeahead.js/dist/bloodhound.js'
'bower_components/typeahead.js/dist/typeahead.jquery.js'
'dist/typeahead-addresspicker.js'
'spec/javascripts/libs/*.js'
]
options :
vendor: [
'http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js',
'https://maps.googleapis.com/maps/api/js?sensor=false&libraries=places'
]
specs : 'spec/javascripts/**/*.js'
helpers : ['spec/javascripts/helpers/sinon-1.9.0.js', 'spec/javascripts/helpers/**/*.js]']
'--web-security' : false
'--local-to-remote-url-access' : true
'--ignore-ssl-errors' : true
# coverage:
# src: ["dist/typeahead.js", "dist/typeahead-addresspicker.js"]
# options:
# specs: 'spec/javascripts/**/*.js'
# template: require('grunt-template-jasmine-istanbul')
# templateOptions:
# coverage: 'coverage/coverage.json'
# report: [
# {
# type: 'html',
# options: {
# dir: 'coverage/html'
# }
# }
# ]
# Lib tasks.
grunt.loadNpmTasks "grunt-growl"
grunt.loadNpmTasks "grunt-contrib-coffee"
grunt.loadNpmTasks "grunt-contrib-watch"
grunt.loadNpmTasks "grunt-contrib-uglify"
grunt.loadNpmTasks "grunt-contrib-jasmine"
# Default and Build tasks
mainTasks = [
"coffee"
"growl:coffee"
"jasmine"
"growl:jasmine"
]
grunt.registerTask "default", mainTasks
grunt.registerTask "build", mainTasks.concat(["uglify"])
# grunt.registerTask "test:coverage", ["jasmine:coverage"]
# Travis CI task.
grunt.registerTask "travis", [
"coffee", "jasmine"
]
return