# Conflicts: # src/language-css/parser-postcss.js # tests/integration/__tests__/arg-parsing.js # tests/integration/__tests__/check.js # tests/integration/__tests__/config-invalid.js # tests/integration/__tests__/config-resolution.js # tests/integration/__tests__/cursor-offset.js # tests/integration/__tests__/debug-check.js # tests/integration/__tests__/debug-print-ast.js # tests/integration/__tests__/debug-print-comments.js # tests/integration/__tests__/debug-print-doc.js # tests/integration/__tests__/early-exit.js # tests/integration/__tests__/error-on-unmatched-pattern.js # tests/integration/__tests__/file-info.js # tests/integration/__tests__/help-options.js # tests/integration/__tests__/ignore-absolute-path.js # tests/integration/__tests__/ignore-emoji.js # tests/integration/__tests__/ignore-in-subdirectories.js # tests/integration/__tests__/ignore-path.js # tests/integration/__tests__/ignore-relative-path.js # tests/integration/__tests__/ignore-unknown.js # tests/integration/__tests__/ignore-vcs-files.js # tests/integration/__tests__/infer-parser.js # tests/integration/__tests__/invalid-ignore.js # tests/integration/__tests__/line-suffix-boundary.js # tests/integration/__tests__/list-different.js # tests/integration/__tests__/loglevel.js # tests/integration/__tests__/parser-api.js # tests/integration/__tests__/patterns-dirs.js # tests/integration/__tests__/patterns-glob.js # tests/integration/__tests__/patterns.js # tests/integration/__tests__/piped-output.js # tests/integration/__tests__/plugin-default-options.js # tests/integration/__tests__/plugin-extensions.js # tests/integration/__tests__/plugin-flush-line-suffix.js # tests/integration/__tests__/plugin-options-string.js # tests/integration/__tests__/plugin-options.js # tests/integration/__tests__/plugin-precedence.js # tests/integration/__tests__/plugin-preprocess.js # tests/integration/__tests__/plugin-resolution.js # tests/integration/__tests__/plugin-virtual-directory.js # tests/integration/__tests__/skip-folders.js # tests/integration/__tests__/stdin-filepath.js # tests/integration/__tests__/support-info.js # tests/integration/__tests__/syntax-error.js # tests/integration/__tests__/with-config-precedence.js # tests/integration/__tests__/with-node-modules.js # tests/integration/__tests__/with-parser-inference.js # tests/integration/__tests__/with-shebang.js # tests/integration/__tests__/write.js
66 lines
1.5 KiB
JavaScript
66 lines
1.5 KiB
JavaScript
import snapshotDiff from "snapshot-diff";
|
|
import runPrettier from "../run-prettier.js";
|
|
|
|
test("show external options with `--help`", async () => {
|
|
const originalStdout = await runPrettier("plugins/options", ["--help"])
|
|
.stdout;
|
|
const pluggedStdout = await runPrettier("plugins/options", [
|
|
"--help",
|
|
"--plugin=./plugin.cjs",
|
|
]).stdout;
|
|
|
|
expect(snapshotDiff(originalStdout, pluggedStdout)).toMatchSnapshot();
|
|
});
|
|
|
|
describe("show detailed external option with `--help foo-option`", () => {
|
|
runPrettier("plugins/options", [
|
|
"--plugin=./plugin.cjs",
|
|
"--help",
|
|
"foo-option",
|
|
]).test({
|
|
status: 0,
|
|
});
|
|
});
|
|
|
|
describe("include plugin's parsers to the values of the `parser` option`", () => {
|
|
runPrettier("plugins/options", [
|
|
"--plugin=./plugin.cjs",
|
|
"--help",
|
|
"parser",
|
|
]).test({
|
|
status: 0,
|
|
});
|
|
});
|
|
|
|
describe("external options from CLI should work", () => {
|
|
runPrettier(
|
|
"plugins/options",
|
|
[
|
|
"--plugin=./plugin.cjs",
|
|
"--stdin-filepath",
|
|
"example.foo",
|
|
"--foo-option",
|
|
"baz",
|
|
],
|
|
{ input: "hello-world" }
|
|
).test({
|
|
stdout: "foo:baz",
|
|
stderr: "",
|
|
status: 0,
|
|
write: [],
|
|
});
|
|
});
|
|
|
|
describe("external options from config file should work", () => {
|
|
runPrettier(
|
|
"plugins/options",
|
|
["--config=./config.json", "--stdin-filepath", "example.foo"],
|
|
{ input: "hello-world" }
|
|
).test({
|
|
stdout: "foo:baz",
|
|
stderr: "",
|
|
status: 0,
|
|
write: [],
|
|
});
|
|
});
|