From e79ac7da9eb9454b9dc5da4eb50daf05c1b0583a Mon Sep 17 00:00:00 2001 From: "[1000i100] Millicent Billette" <git@1000i100.fr> Date: Sun, 28 Mar 2021 03:47:20 +0200 Subject: [PATCH] FIX: real coverage WiP: dead code deletion based on coverage --- CI/coverage-dead-code-deletion.js | 16 +++++++++------- CI/gen-prod-test.js | 4 ++-- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/CI/coverage-dead-code-deletion.js b/CI/coverage-dead-code-deletion.js index c26ce7e..a1a0768 100644 --- a/CI/coverage-dead-code-deletion.js +++ b/CI/coverage-dead-code-deletion.js @@ -2,22 +2,24 @@ const fs = require('fs'); const covData = JSON.parse(fs.readFileSync('generated/cov-dead-code-deletion/coverage-final.json', 'utf8')); const files = Object.keys(covData); -for(const filePath of files){ +for (const filePath of files) { const fullContent = fs.readFileSync(filePath, 'utf8').split('\n'); const keptContent = []; const statementMap = covData[filePath].statementMap; const statementRan = covData[filePath].s; - for(let key of Object.keys(statementMap)){ - if(statementRan[key]>0) for(let line = statementMap[key].start.line; line<=statementMap[key].end.line;line++){ - keptContent[line-1] = fullContent[line-1]; + for (const key of Object.keys(statementMap)) { + if (statementRan[key] > 0) for (let line = statementMap[key].start.line; line <= statementMap[key].end.line; line++) { + keptContent[line - 1] = fullContent[line - 1]; } } + const fnMap = covData[filePath].fnMap; const fnRan = covData[filePath].f; - for(let key of Object.keys(fnMap)){ - if(fnRan[key]>0) for(let line = fnMap[key].decl.start.line; line<=fnMap[key].decl.end.line;line++){ - keptContent[line-1] = fullContent[line-1]; + for (const key of Object.keys(fnMap)) { + if (fnRan[key] > 0) for (let line = fnMap[key].decl.start.line; line <= fnMap[key].decl.end.line; line++) { + keptContent[line - 1] = fullContent[line - 1]; } } + fs.writeFileSync(filePath, keptContent.join('\n')); } diff --git a/CI/gen-prod-test.js b/CI/gen-prod-test.js index ba7f36b..8d50857 100644 --- a/CI/gen-prod-test.js +++ b/CI/gen-prod-test.js @@ -1,7 +1,7 @@ const fs = require('fs'); fs.readdirSync('src/').forEach(fileName => { - const orgContent = fs.readFileSync(`src/${fileName}`, 'utf8'); + const orgContent = fs.readFileSync(`src/${fileName}`, 'utf8').replace(/from '\.\.\//g, 'from \'../../'); fs.writeFileSync(`generated/cov-env/${fileName}`, orgContent); if (!fileName.includes('.test.')) return; fs.writeFileSync(`generated/npm/${fileName}`, orgContent); @@ -11,4 +11,4 @@ fs.readdirSync('src/').forEach(fileName => { fs.writeFileSync(`generated/cov-env/all.${fileName}`, allJsTest); fs.writeFileSync(`generated/npm/all.${fileName}`, allJsTest); }); -fs.writeFileSync(`generated/cov-env/package.json`, fs.readFileSync(`package.json`, 'utf8')); +fs.writeFileSync('generated/cov-env/package.json', fs.readFileSync('package.json', 'utf8')); -- GitLab