UNPKG

1.51 kBJavaScriptView Raw
1/**
2 * @fileoverview Compact reporter
3 * @author Nicholas C. Zakas
4 */
5"use strict";
6
7//------------------------------------------------------------------------------
8// Helper Functions
9//------------------------------------------------------------------------------
10
11/**
12 * Returns the severity of warning or error
13 * @param {Object} message message object to examine
14 * @returns {string} severity level
15 * @private
16 */
17function getMessageType(message) {
18 if (message.fatal || message.severity === 2) {
19 return "Error";
20 } else {
21 return "Warning";
22 }
23}
24
25
26//------------------------------------------------------------------------------
27// Public Interface
28//------------------------------------------------------------------------------
29
30module.exports = function(results) {
31
32 let output = "",
33 total = 0;
34
35 results.forEach(function(result) {
36
37 const messages = result.messages;
38
39 total += messages.length;
40
41 messages.forEach(function(message) {
42
43 output += result.filePath + ": ";
44 output += "line " + (message.line || 0);
45 output += ", col " + (message.column || 0);
46 output += ", " + getMessageType(message);
47 output += " - " + message.message;
48 output += message.ruleId ? " (" + message.ruleId + ")" : "";
49 output += "\n";
50
51 });
52
53 });
54
55 if (total > 0) {
56 output += "\n" + total + " problem" + (total !== 1 ? "s" : "");
57 }
58
59 return output;
60};