Skip to content

Commit ce4eb4e

Browse files
committed
Breaking: Update report-message-format to also apply to suggestion messages
1 parent d85c446 commit ce4eb4e

File tree

2 files changed

+32
-3
lines changed

2 files changed

+32
-3
lines changed

lib/rules/report-message-format.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,19 @@ module.exports = {
8383
) {
8484
const reportInfo = utils.getReportInfo(node.arguments, context);
8585
const message = reportInfo && reportInfo.message;
86+
const suggest = reportInfo && reportInfo.suggest;
8687

87-
if (!message) {
88-
return;
88+
if (message) {
89+
processMessageNode(message);
8990
}
9091

91-
processMessageNode(message);
92+
if (suggest) {
93+
suggest.elements
94+
.flatMap(obj => obj.properties)
95+
.filter(prop => prop.type === 'Property' && prop.key.type === 'Identifier' && prop.key.name === 'message')
96+
.map(prop => prop.value)
97+
.forEach(processMessageNode);
98+
}
9299
}
93100
},
94101
};

tests/lib/rules/report-message-format.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,17 @@ ruleTester.run('report-message-format', rule, {
109109
`,
110110
options: ['^foo$'],
111111
},
112+
{
113+
// Suggestion message
114+
code: `
115+
module.exports = {
116+
create(context) {
117+
context.report({node, suggest: [{message: 'foo'}]});
118+
}
119+
};
120+
`,
121+
options: ['^foo$'],
122+
},
112123
{
113124
code: `
114125
module.exports = {
@@ -250,6 +261,17 @@ ruleTester.run('report-message-format', rule, {
250261
`,
251262
options: ['foo'],
252263
},
264+
{
265+
// Suggestion message
266+
code: `
267+
module.exports = {
268+
create(context) {
269+
context.report({node, suggest: [{message: 'FOO'}]});
270+
}
271+
};
272+
`,
273+
options: ['foo'],
274+
},
253275
{
254276
code: `
255277
module.exports = {

0 commit comments

Comments
 (0)