From 21bbee4044b792bd835423dbb3db6608ae492d24 Mon Sep 17 00:00:00 2001 From: Wesley Wigham Date: Mon, 18 Sep 2017 13:41:37 -0700 Subject: [PATCH] init progressbar dependencies within host start to avoid execution in a browser context (#18554) --- src/harness/parallel/host.ts | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/src/harness/parallel/host.ts b/src/harness/parallel/host.ts index a3a1ec8082b..92e21b5ada3 100644 --- a/src/harness/parallel/host.ts +++ b/src/harness/parallel/host.ts @@ -28,6 +28,7 @@ namespace Harness.Parallel.Host { } export function start() { + initializeProgressBarsDependencies(); console.log("Discovering tests..."); const discoverStart = +(new Date()); const { statSync }: { statSync(path: string): { size: number }; } = require("fs"); @@ -254,14 +255,26 @@ namespace Harness.Parallel.Host { return; } - const Mocha = require("mocha"); - const Base = Mocha.reporters.Base; - const color = Base.color; - const cursor = Base.cursor; - const readline = require("readline"); - const os = require("os"); - const tty: { isatty(x: number): boolean } = require("tty"); - const isatty = tty.isatty(1) && tty.isatty(2); + let Mocha: any; + let Base: any; + let color: any; + let cursor: any; + let readline: any; + let os: any; + let tty: { isatty(x: number): boolean }; + let isatty: boolean; + + function initializeProgressBarsDependencies() { + Mocha = require("mocha"); + Base = Mocha.reporters.Base; + color = Base.color; + cursor = Base.cursor; + readline = require("readline"); + os = require("os"); + tty = require("tty"); + isatty = tty.isatty(1) && tty.isatty(2); + } + class ProgressBars { public readonly _options: Readonly; private _enabled: boolean;