50 lines
1.5 KiB
50 lines
1.5 KiB
/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
|
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */ |
|
/* Copyright 2012 Mozilla Foundation |
|
* |
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
* you may not use this file except in compliance with the License. |
|
* You may obtain a copy of the License at |
|
* |
|
* http://www.apache.org/licenses/LICENSE-2.0 |
|
* |
|
* Unless required by applicable law or agreed to in writing, software |
|
* distributed under the License is distributed on an "AS IS" BASIS, |
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
|
* See the License for the specific language governing permissions and |
|
* limitations under the License. |
|
*/ |
|
/* jshint node:true */ |
|
|
|
'use strict'; |
|
|
|
module.exports = { |
|
reporter: function reporter(res) { |
|
var len = 0; |
|
var str = ''; |
|
|
|
res.forEach(function(r) { |
|
var file = r.file; |
|
var err = r.error; |
|
|
|
switch (err.code) { |
|
case 'W004': // variable is already defined |
|
case 'W018': // confusing use of ! |
|
break; |
|
default: |
|
len++; |
|
str += file + ': line ' + err.line + ', col ' + |
|
err.character + ', ' + err.reason + '\n'; |
|
} |
|
}); |
|
|
|
if (str) { |
|
process.stdout.write(str + '\n' + len + ' error' + |
|
((len === 1) ? '' : 's') + '\n'); |
|
process.exit(2); |
|
} else { |
|
process.stdout.write('files checked, no errors found\n'); |
|
process.exit(0); |
|
} |
|
} |
|
};
|
|
|