diff --git a/src/multiparser.js b/src/multiparser.js index 70a770cb..7476186a 100644 --- a/src/multiparser.js +++ b/src/multiparser.js @@ -26,12 +26,11 @@ function printSubtree(path, print, options) { function parseAndPrint(text, partialNextOptions, parentOptions) { const nextOptions = Object.assign({}, parentOptions, partialNextOptions, { parentParser: parentOptions.parser, - trailingComma: - partialNextOptions.parser === "json" - ? "none" - : partialNextOptions.trailingComma, originalText: text }); + if (nextOptions.parser === "json") { + nextOptions.trailingComma = "none"; + } const ast = require("./parser").parse(text, nextOptions); const astComments = ast.comments; delete ast.comments; diff --git a/tests/multiparser_markdown_js/__snapshots__/jsfmt.spec.js.snap b/tests/multiparser_markdown_js/__snapshots__/jsfmt.spec.js.snap new file mode 100644 index 00000000..4c94e48e --- /dev/null +++ b/tests/multiparser_markdown_js/__snapshots__/jsfmt.spec.js.snap @@ -0,0 +1,30 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`trailing-comma.md 1`] = ` +### Some heading + +\`\`\`js +someFunctionCall( + foo, + bar, + foobar, + sometehingReallyLongAndHairy, + somethingElse, + breakNow, +); +\`\`\` +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +### Some heading + +\`\`\`js +someFunctionCall( + foo, + bar, + foobar, + sometehingReallyLongAndHairy, + somethingElse, + breakNow, +); +\`\`\` + +`; diff --git a/tests/multiparser_markdown_js/jsfmt.spec.js b/tests/multiparser_markdown_js/jsfmt.spec.js new file mode 100644 index 00000000..6fafe58e --- /dev/null +++ b/tests/multiparser_markdown_js/jsfmt.spec.js @@ -0,0 +1 @@ +run_spec(__dirname, ["markdown"], { trailingComma: "all" }); diff --git a/tests/multiparser_markdown_js/trailing-comma.md b/tests/multiparser_markdown_js/trailing-comma.md new file mode 100644 index 00000000..8ea8ca7a --- /dev/null +++ b/tests/multiparser_markdown_js/trailing-comma.md @@ -0,0 +1,12 @@ +### Some heading + +```js +someFunctionCall( + foo, + bar, + foobar, + sometehingReallyLongAndHairy, + somethingElse, + breakNow, +); +```