Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
fs.readdirSync(fixtureLoc).forEach((testName) => {
if (testName.slice(0, 1) === ".") return;
const testLoc = path.join(fixtureLoc, testName);
const opts = {
args: ["src", "--out-dir", "lib"],
testLoc: testLoc,
};
const stdoutLoc = path.join(testLoc, "stdout.txt");
if (fs.existsSync(stdoutLoc)) {
opts.stdout = helper.readFile(stdoutLoc);
}
const optionsLoc = path.join(testLoc, "options.json");
if (!fs.existsSync(optionsLoc)) {
throw new Error(`Debug test '${testName}' is missing an options.json file`);
}
opts.inFiles = {
"src/in.js": "",
".babelrc": helper.readFile(optionsLoc),
};
it(testName, buildTest(opts));
});
});
const stdoutLoc = path.join(testLoc, "stdout.txt");
if (fs.existsSync(stdoutLoc)) {
opts.stdout = helper.readFile(stdoutLoc);
}
const optionsLoc = path.join(testLoc, "options.json");
if (!fs.existsSync(optionsLoc)) {
throw new Error(`Debug test '${testName}' is missing an options.json file`);
}
opts.inFiles = {
"src/in.js": "",
".babelrc": helper.readFile(optionsLoc),
};
it(testName, buildTest(opts));
});
});
export function runThrowTestsWithEstree(fixturesPath, parseFunction) {
const fixtures = getFixtures(fixturesPath);
Object.keys(fixtures).forEach(function(name) {
fixtures[name].forEach(function(testSuite) {
testSuite.tests.forEach(function(task) {
if (!task.options.throws) return;
task.options.plugins = task.options.plugins || [];
task.options.plugins.push("estree");
const testFn = task.disabled
? test.skip
: task.options.only ? test.only : test;
testFn(name + "/" + testSuite.title + "/" + task.title, function(t) {
try {
runTest(task, parseFunction);
export function runFixtureTests(fixturesPath, parseFunction) {
const fixtures = getFixtures(fixturesPath);
Object.keys(fixtures).forEach(function(name) {
fixtures[name].forEach(function(testSuite) {
testSuite.tests.forEach(function(task) {
const testFn = task.disabled
? test.skip
: task.options.only ? test.only : test;
testFn(name + "/" + testSuite.title + "/" + task.title, function(t) {
try {
runTest(task, parseFunction);
t.pass();
} catch (err) {
const message =
name + "/" + task.actual.filename + ": " + err.message;
t.fail(message);