Blame view

src/main/resources/leafletmap/Leaflet.markercluster-1.4.1/Jakefile.js 1.96 KB
9e952e84e   lsagona   add message clust...
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
  /*
  Leaflet.markercluster building, testing and linting scripts.
  
  To use, install Node, then run the following commands in the project root:
  
      npm install -g jake
      npm install
  
  To check the code for errors and build Leaflet from source, run "jake".
  To run the tests, run "jake test".
  
  For a custom build, open build/build.html in the browser and follow the instructions.
  */
  
  var path = require('path');
  
  desc('Check Leaflet.markercluster source for errors with JSHint');
  task('lint', function(){
  		jake.exec('jshint', {
  			printStdout: true
  		}, function () {
  			console.log('\tCheck passed.
  ');
  			complete();
  		});
  });
  
  desc('Combine Leaflet.markercluster source files');
  task('build', ['lint'], function(){
  	jake.exec('npm run-script rollup', function() { console.log('Rolled up.'); });
  });
  
  desc('Compress bundled files');
  task('uglify', ['build'], function(){
  	jake.exec('npm run-script uglify', function() { console.log('Uglyfied.'); });
  });
  
  desc('Run PhantomJS tests');
  task('test', ['lint'], function() {
  
  	var karma = require('karma'),
  	testConfig = {configFile : path.join(__dirname, './spec/karma.conf.js')};
  
  	testConfig.browsers = ['PhantomJS'];
  
  	function isArgv(optName) {
  		 return process.argv.indexOf(optName) !== -1;
  	}
  
  	if (isArgv('--chrome')) {
  		testConfig.browsers.push('Chrome');
  	}
  	if (isArgv('--safari')) {
  		testConfig.browsers.push('Safari');
  	}
  	if (isArgv('--ff')) {
  		testConfig.browsers.push('Firefox');
  	}
  	if (isArgv('--ie')) {
  		testConfig.browsers.push('IE');
  	}
  
  	if (isArgv('--cov')) {
  		testConfig.preprocessors = {
  			'src/**/*.js': 'coverage'
  		};
  		testConfig.coverageReporter = {
  			type : 'html',
  			dir : 'coverage/'
  		};
  		testConfig.reporters = ['coverage'];
  	}
  
  	console.log('Running tests...');
  
  	var server = new karma.Server(testConfig, function(exitCode) {
  		if (!exitCode) {
  			console.log('\tTests ran successfully.
  ');
  			complete();
  		} else {
  			process.exit(exitCode);
  		}
  	});
  	server.start();
  });
  
  task('default', ['build', 'uglify']);