From d3189164160b308f01ff2d133b641c0b91c35838 Mon Sep 17 00:00:00 2001 From: Henry Zhu Date: Thu, 8 Dec 2016 11:50:07 -0500 Subject: [PATCH] do not count against if core-js does not implement --- .../babel-preset-env/scripts/build-data.js | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/experimental/babel-preset-env/scripts/build-data.js b/experimental/babel-preset-env/scripts/build-data.js index fbf8badc2f..4f680e1765 100644 --- a/experimental/babel-preset-env/scripts/build-data.js +++ b/experimental/babel-preset-env/scripts/build-data.js @@ -73,20 +73,31 @@ const getLowestImplementedVersion = ({ features }, env) => { features.length === 1 && test.name.indexOf(features[0]) === 0; }) .map((test) => { + const isBuiltIn = test.category === "built-ins" || test.category === "built-in extensions"; + return test.subtests ? test.subtests.map((subtest) => ({ name: `${test.name}/${subtest.name}`, - res: subtest.res + res: subtest.res, + isBuiltIn })) : { name: test.name, - res: test.res + res: test.res, + isBuiltIn }; }) ); let envTests = tests - .map(({ res: test, name }, i) => { + .map(({ res: test, name, isBuiltIn }, i) => { + // Babel itself doesn't implement the feature correctly, + // don't count against it + // only doing this for built-ins atm + if (!test.babel && isBuiltIn) { + console.log(name); + return "-1"; + } // `equals` in compat-table Object.keys(test).forEach((t) => {