UNPKG

850 BJavaScriptView Raw
1"use strict"
2
3const fs = require("fs")
4const path = require("path")
5const run = require("test262-parser-runner")
6const acorn = require("acorn")
7const Parser = acorn.Parser.extend(require("."))
8
9const unsupportedFeatures = [
10 "class-fields-public"
11]
12
13const implementedFeatures = [
14 "class-static-fields-public",
15 "class-static-fields-private",
16 "class-static-methods-private"
17]
18
19run(
20 (content, options) => Parser.parse(content, {sourceType: options.sourceType, ecmaVersion: 10}),
21 {
22 testsDirectory: path.dirname(require.resolve("test262/package.json")),
23 skip: test => (!test.attrs.features || !implementedFeatures.some(f => test.attrs.features.includes(f)) || unsupportedFeatures.some(f => test.attrs.features.includes(f))),
24 whitelist: fs.readFileSync("./test262.whitelist", "utf8").split("\n").filter(v => v && v[0] !== "#")
25 }
26)