-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGruntfile.js
More file actions
67 lines (56 loc) · 1.63 KB
/
Gruntfile.js
File metadata and controls
67 lines (56 loc) · 1.63 KB
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
/*
* leetcode-test
* https://github.com/oneRice/oneMore-note
*
* Copyright (c) 2016 oneRice
* Licensed under the MIT license.
*/
'use strict';
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
jshint: {
self: [
'Gruntfile.js'
],
tmp: [
'tmp/*.js'
],
options: {
jshintrc: '.jshintrc'
}
},
// Unit tests.
nodeunit: {
tmp: ['tmp/*_test.js']
},
// After test, remove any previously-created temp files.
clean: {
tmp: ['tmp']
}
});
// Load the moveToTemp and auto_export.
grunt.loadTasks('tasks');
// These plugins provide necessary tasks.
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-nodeunit');
grunt.registerTask('task', ['jshint:tmp', 'auto_export:tmp', 'nodeunit:tmp']);
// Run testcase of the problem which its number is given by argument.
grunt.registerTask('test', 'auto test the solution base on the given problem number', function(num) {
if (arguments.length === 0) {
grunt.warn("Please enter the problem's number.");
} else if (arguments.length === 1) {
//test this configuration file.
grunt.task.run('jshint:self');
//actually run the test in tmp folder.
grunt.task.run('moveToTemp:' + num);
grunt.task.run('typeImport:' + num);
grunt.task.run('autoExport:' + num);
grunt.task.run('nodeunit:tmp');
// grunt.task.run('clean:tmp');
}
});
// By default, lint and run all tests.
grunt.registerTask('default', ['test']);
};