blob: 475f1f2f4a381ced068f097d3756890e20d76b57 [file] [log] [blame] [edit]
// Copyright 2017 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import prettier from "prettier/standalone";
import babelParser from "prettier/parser-babel";
import estree from "prettier/plugins/estree";
const payloads = [
{
name: "preact-8.2.5.js",
options: { semi: false, useTabs: false, parser: "babel" },
},
{
name: "lodash.core-4.17.21.js",
options: { semi: true, useTabs: true, parser: "babel" },
},
{
name: "todomvc/react/app.jsx",
options: { semi: false, useTabs: true, parser: "babel" },
},
{
name: "todomvc/react/footer.jsx",
options: {
jsxBracketSameLine: true,
semi: true,
useTabs: true,
parser: "babel",
},
},
{
name: "todomvc/react/todoItem.jsx",
options: { semi: false, singleQuote: true, useTabs: true, parser: "babel" },
},
];
export async function runTest(fileData) {
const testData = payloads.map(({ name, options }) => ({
payload: fileData[name],
options,
}));
return Promise.all(
testData.map(({ payload, options }) =>
prettier.format(payload, { ...options, plugins: [babelParser, estree] })
)
);
}