From b0ff26985f08f397d45c79e9087120f3570533c7 Mon Sep 17 00:00:00 2001 From: Artem Yavorsky Date: Thu, 20 Apr 2017 15:31:13 +0300 Subject: [PATCH] Add test for stderr. --- .../babel-preset-env/test/debug-fixtures.js | 41 +++++++++++-------- 1 file changed, 25 insertions(+), 16 deletions(-) diff --git a/experimental/babel-preset-env/test/debug-fixtures.js b/experimental/babel-preset-env/test/debug-fixtures.js index 4f499022da..ce8794e253 100644 --- a/experimental/babel-preset-env/test/debug-fixtures.js +++ b/experimental/babel-preset-env/test/debug-fixtures.js @@ -21,23 +21,31 @@ const saveInFiles = files => { }); }; -const assertTest = (stdout, stderr, opts) => { - stderr = stderr.trim(); +const testOutputType = (type, stdTarg, opts) => { + stdTarg = stdTarg.trim(); + stdTarg = stdTarg.replace(/\\/g, "/"); + const optsTarg = opts[type]; - if (stderr) { - throw new Error("stderr:\n" + stderr); - } - - stdout = stdout.trim(); - stdout = stdout.replace(/\\/g, "/"); - - if (opts.stdout) { - const expectStdout = opts.stdout.trim(); - chai.expect(stdout).to.equal(expectStdout, "stdout didn't match"); + if (optsTarg) { + const expectStdout = optsTarg.trim(); + chai.expect(stdTarg).to.equal(expectStdout, "stdout didn't match"); } else { - const file = path.join(opts.testLoc, "stdout.txt"); + const file = path.join(opts.testLoc, `${type}.txt`); console.log(`New test file created: ${file}`); - fs.outputFileSync(file, stdout); + fs.outputFileSync(file, stdTarg); + } +}; + +const assertTest = (stdout, stderr, opts) => { + // stderr = stderr.trim(); + + // if (stderr) { + // throw new Error("stderr:\n" + stderr); + // } + + testOutputType("stdout", stdout, opts); + if (stderr) { + testOutputType("stderr", stderr, opts); } }; @@ -56,8 +64,8 @@ const buildTest = opts => { let stdout = ""; let stderr = ""; - spawn.stdout.on("data", chunk => stdout += chunk); - spawn.stderr.on("data", chunk => stderr += chunk); + spawn.stdout.on("data", chunk => (stdout += chunk)); + spawn.stderr.on("data", chunk => (stderr += chunk)); spawn.on("close", () => { let err; @@ -77,6 +85,7 @@ describe("debug output", () => { fs.readdirSync(fixtureLoc).forEach(testName => { if (testName.slice(0, 1) === ".") return; const testLoc = path.join(fixtureLoc, testName); + if (testName.slice(0, 1) === ".") return; const opts = { args: ["src", "--out-dir", "lib"],