api check工具过滤build-tools文件下的工具测试用例

Signed-off-by: fanjiaojiao <fanjiaojiao@huawei.com>
This commit is contained in:
fanjiaojiao 2023-07-21 17:26:29 +08:00
parent a5a558a116
commit 99a88079c4
2 changed files with 20 additions and 3 deletions

View File

@ -26,7 +26,7 @@ const { checkJSDoc } = require('./check_legality');
const { checkNaming } = require('./check_naming'); const { checkNaming } = require('./check_naming');
const { checkEventSubscription } = require('./check_event_subscription'); const { checkEventSubscription } = require('./check_event_subscription');
const { checkAnyInAPI } = require('./check_any'); const { checkAnyInAPI } = require('./check_any');
const { hasAPINote, ApiCheckResult, requireTypescriptModule, commentNodeWhiteList } = require('./utils'); const { hasAPINote, ApiCheckResult, requireTypescriptModule, commentNodeWhiteList, splitPath } = require('./utils');
const ts = requireTypescriptModule(); const ts = requireTypescriptModule();
const result = require('../check_result.json'); const result = require('../check_result.json');
const rules = require('../code_style_rule.json'); const rules = require('../code_style_rule.json');
@ -40,8 +40,16 @@ function checkAPICodeStyle(url) {
} }
function getMdFiles(url) { function getMdFiles(url) {
const mdFiles = [];
const content = fs.readFileSync(url, 'utf-8'); const content = fs.readFileSync(url, 'utf-8');
const mdFiles = content.split(/[(\r\n)\r\n]+/); const filePathArr = content.split(/[(\r\n)\r\n]+/);
filePathArr.forEach(filePath => {
const pathElements = new Set();
splitPath(filePath, pathElements);
if (!pathElements.has('build-tools')) {
mdFiles.push(filePath);
}
})
return mdFiles; return mdFiles;
} }

View File

@ -435,4 +435,13 @@ exports.checkVersionNeedCheck = checkVersionNeedCheck;
const FUNCTION_TYPES = [ts.SyntaxKind.FunctionDeclaration, ts.SyntaxKind.MethodSignature, const FUNCTION_TYPES = [ts.SyntaxKind.FunctionDeclaration, ts.SyntaxKind.MethodSignature,
ts.SyntaxKind.MethodDeclaration, ts.SyntaxKind.CallSignature, ts.SyntaxKind.Constructor]; ts.SyntaxKind.MethodDeclaration, ts.SyntaxKind.CallSignature, ts.SyntaxKind.Constructor];
exports.FUNCTION_TYPES = FUNCTION_TYPES; exports.FUNCTION_TYPES = FUNCTION_TYPES;
function splitPath(filePath, pathElements) {
let spliteResult = path.parse(filePath);
if (spliteResult.base !== '') {
pathElements.add(spliteResult.base);
splitPath(spliteResult.dir, pathElements);
}
}
exports.splitPath = splitPath;