summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorShobhit Chittora <chittorashobhit@gmail.com>2017-12-17 16:11:34 +0530
committerWeijia Wang <381152119@qq.com>2017-12-26 13:51:53 +0800
commit639770c8d61572576d8b431802b904ff52b037ed (patch)
treeef3b5ca00f1f4961515b45212c724ceb189058a7 /tools
parent8331f571edb27491161589f30e88962dfe436c2c (diff)
downloadandroid-node-v8-639770c8d61572576d8b431802b904ff52b037ed.tar.gz
android-node-v8-639770c8d61572576d8b431802b904ff52b037ed.tar.bz2
android-node-v8-639770c8d61572576d8b431802b904ff52b037ed.zip
tools: autofixer for lowercase-name-for-primitive
PR-URL: https://github.com/nodejs/node/pull/17715 Refs: https://github.com/nodejs/node/issues/16636 Reviewed-By: Anatoli Papirovski <apapirovski@mac.com> Reviewed-By: Weijia Wang <starkwang@126.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/eslint-rules/lowercase-name-for-primitive.js21
1 files changed, 16 insertions, 5 deletions
diff --git a/tools/eslint-rules/lowercase-name-for-primitive.js b/tools/eslint-rules/lowercase-name-for-primitive.js
index cb603b62c0..d3a5243c37 100644
--- a/tools/eslint-rules/lowercase-name-for-primitive.js
+++ b/tools/eslint-rules/lowercase-name-for-primitive.js
@@ -22,22 +22,33 @@ module.exports = function(context) {
switch (names.type) {
case 'Literal':
- checkName(node, names.value);
+ checkName(names);
break;
case 'ArrayExpression':
names.elements.forEach((name) => {
- checkName(node, name.value);
+ checkName(name);
});
break;
}
}
- function checkName(node, name) {
+ function checkName(node) {
+ const name = node.value;
const lowercaseName = name.toLowerCase();
- if (primitives.includes(lowercaseName) && !primitives.includes(name)) {
+ if (name !== lowercaseName && primitives.includes(lowercaseName)) {
const msg = `primitive should use lowercase: ${name}`;
- context.report(node, msg);
+ context.report({
+ node,
+ message: msg,
+ fix: (fixer) => {
+ return fixer.replaceText(
+ node,
+ `'${lowercaseName}'`
+ );
+ }
+ });
}
+
}
return {