@samitouri / QOS-React-2 / commits / 45063aed44

picked all the lint

Thomas Aylott committed Nov 15, 2013 at 17:11 UTC 45063aed448c9ec95f05ee39e5aef65f0a89560a
2 files changed +67 -46
grunt/config/server.js
+28 -17
@@ -4,7 +4,9 @@ module.exports = function(grunt){
4 var coverageWriteStream;
5
6 grunt.task.registerTask('finalize-coverage-stream', function(){
7 - if (!coverageWriteStream) return;
7 + if (!coverageWriteStream) {
8 + return;
9 + }
10 var done = this.async();
11 coverageWriteStream.once('close', done);
12 coverageWriteStream.end();
@@ -12,30 +14,39 @@ module.exports = function(grunt){
14 });
15
16 function consoleLoggerMiddleware(req, res, next) {
15 - if (!(req.method == 'POST'
16 - && req._parsedUrl.pathname.replace(/\//g,'') == 'console'
17 - && Array.isArray(req.body))
18 - ) {
17 + if (!(req.method == 'POST' && req._parsedUrl.pathname.replace(/\//g,'') == 'console' && Array.isArray(req.body))) {
18 return next();
19 }
20 res.write('<!doctype html><meta charset=utf-8>');
21 res.end('Got it, thanks!');
22
23 req.body.forEach(function(log){
25 - if (log.message.indexOf('not ok ') === 0) log.type = 'error';
26 - else if (log.message.indexOf('ok ') === 0) log.type = 'ok';
27 - else if (log.message.indexOf('COVER') === 0) log.type = 'coverage';
28 - else if (log.message.indexOf('DONE\t') === 0) log.type = 'coverage done';
24 + if (log.message.indexOf('not ok ') === 0) {
25 + log.type = 'error';
26 + } else if (log.message.indexOf('ok ') === 0) {
27 + log.type = 'ok';
28 + } else if (log.message.indexOf('COVER') === 0) {
29 + log.type = 'coverage';
30 + } else if (log.message.indexOf('DONE\t') === 0) {
31 + log.type = 'coverage done';
32 + }
33
30 - if (log.type == 'error') grunt.log.error(log.message);
31 - else if (log.type == 'ok') grunt.log.ok(log.message);
32 - else if (log.type == 'log') grunt.log.writeln(log.message);
33 - else if (log.type == 'coverage') {
34 - if (!coverageWriteStream) coverageWriteStream = require('fs').createWriteStream(__dirname + '/../../coverage.log');
34 + if (log.type == 'error') {
35 + grunt.log.error(log.message);
36 + } else if (log.type == 'ok') {
37 + grunt.log.ok(log.message);
38 + } else if (log.type == 'log') {
39 + grunt.log.writeln(log.message);
40 + } else if (log.type == 'coverage') {
41 + if (!coverageWriteStream) {
42 + coverageWriteStream = require('fs').createWriteStream(__dirname + '/../../coverage.log');
43 + }
44 coverageWriteStream.write(log.message + '\n');
45 + } else if (log.type == 'coverage done') {
46 + grunt.task.run('finalize-coverage-stream');
47 + } else {
48 + grunt.verbose.writeln(log);
49 }
37 - else if (log.type == 'coverage done') grunt.task.run('finalize-coverage-stream');
38 - else grunt.verbose.writeln(log);
50 });
51 }
52
@@ -85,7 +96,7 @@ module.exports = function(grunt){
96 connect.static(options.base),
97 connect.directory(options.base)
98 ];
88 - },
99 + }
100 }
101 }
102 };
grunt/tasks/coverage-parse.js
+39 -29
@@ -1,3 +1,4 @@
1 +"use strict";
2 var grunt = require('grunt');
3
4 module.exports = function(){
@@ -5,44 +6,53 @@ module.exports = function(){
6 var done = this.async();
7 var uncoveredExpressionCount = 0;
8 var uncoveredLineCount = 0;
8 -
9 +
10 require('fs').createReadStream(ROOT + '/coverage.log')
11 .pipe(require('coverify/parse')(function(error, results){
11 - if (error) grunt.fatal(error);
12 -
12 + if (error) {
13 + grunt.fatal(error);
14 + }
15 +
16 Object.keys(results)
14 - .sort(function(a, b){
15 - if (results[a].length > results[b].length) return -1;
16 - if (results[a].length < results[b].length) return 1;
17 - return 0;
18 - })
19 - .forEach(function(path){
20 - if (results[path].length === 0) return;
21 - var relativePath = path.replace(ROOT, '');
22 - uncoveredExpressionCount += results[path].length;
23 - grunt.log.error(results[path].length + ' expressions not covered ' + relativePath);
17 + .sort(function(a, b){
18 + if (results[a].length > results[b].length) {
19 + return -1;
20 + }
21 + if (results[a].length < results[b].length) {
22 + return 1;
23 + }
24 + return 0;
25 + })
26 + .forEach(function(path){
27 + if (results[path].length === 0) {
28 + return;
29 + }
30 + var relativePath = path.replace(ROOT, '');
31 + uncoveredExpressionCount += results[path].length;
32 + grunt.log.error(results[path].length + ' expressions not covered ' + relativePath);
33
25 - results[path].forEach(function(c){
26 - uncoveredLineCount += c.code.split('\n').length;
27 - // console.log(
28 - // 'https://github.com/' + process.env.TRAVIS_REPO_SLUG + '/blob/' + process.env.TRAVIS_BRANCH + relativePath + '#L' + (c.lineNum+1) + '-L' + (c.lineNum+1 + c.code.split('\n').length)
29 - // );
30 - console.log(
31 - 'txmt://open?url=' + encodeURIComponent('file://' + path) + '&line=' + (c.lineNum+1) + '&column=' + (c.column[0]+2)
32 - );
33 - // console.log(c.code.split('\n').map(function(line){return '\t' + line}).join('\n'))
34 - });
35 - console.log('');
36 - });
34 + results[path].forEach(function(c){
35 + uncoveredLineCount += c.code.split('\n').length;
36 + console.log('txmt://open?url=' + encodeURIComponent('file://' + path) + '&line=' + (c.lineNum+1) + '&column=' + (c.column[0]+2));
37 + });
38 + console.log('');
39 + })
40 + ;
41
42 Object.keys(results).sort().forEach(function(path){
39 - if (results[path].length > 0) return;
43 + if (results[path].length > 0) {
44 + return;
45 + }
46 var relativePath = path.replace(ROOT, '');
47 grunt.log.ok('100% coverage ' + relativePath);
48 });
49
44 - if (uncoveredExpressionCount > 0) grunt.log.error(uncoveredExpressionCount + ' expressions not covered');
45 - if (uncoveredLineCount > 0) grunt.log.error(uncoveredLineCount + ' lines not covered');
50 + if (uncoveredExpressionCount > 0) {
51 + grunt.log.error(uncoveredExpressionCount + ' expressions not covered');
52 + }
53 + if (uncoveredLineCount > 0) {
54 + grunt.log.error(uncoveredLineCount + ' lines not covered');
55 + }
56 done();
57 }));
48 -}
\ No newline at end of file
58 +};