tsds-web-test-runner
Version:
Development stack for TypeScript libraries
1 lines • 4.35 kB
Source Map (JSON)
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-dev-stack/packages/tsds-web-test-runner/src/command.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport spawn from 'cross-spawn-cb';\nimport getopts from 'getopts-compat';\nimport { installSync, removeSync } from 'install-optional';\nimport { link, unlink } from 'link-unlink';\nimport Queue from 'queue-cb';\nimport resolveBin from 'resolve-bin-sync';\nimport { installPath, wrapWorker } from 'tsds-lib';\n\nconst major = +process.versions.node.split('.')[0];\nconst version = major > 14 ? 'local' : 'stable';\nconst __dirname = path.dirname(typeof __filename === 'undefined' ? url.fileURLToPath(import.meta.url) : __filename);\nconst dist = path.join(__dirname, '..');\nconst workerWrapper = wrapWorker(path.join(dist, 'cjs', 'command.cjs'));\nconst config = path.join(dist, 'esm', 'wtr.config.mjs');\n\nfunction worker(args, options, callback) {\n const cwd = options.cwd || process.cwd();\n\n link(cwd, installPath(options), (err, restore) => {\n if (err) return callback(err);\n\n try {\n installSync('rollup', `${process.platform}-${process.arch}`, { cwd });\n removeSync('esbuild', '@esbuild/', { cwd });\n installSync('esbuild', `${process.platform}-${process.arch}`, { cwd });\n\n const wtr = resolveBin('@web/test-runner', 'wtr');\n const { _, ...opts } = getopts(args, { stopEarly: true, alias: { config: 'c' } });\n const spawnArgs = [];\n if (!opts.config) Array.prototype.push.apply(spawnArgs, ['--config', config]);\n Array.prototype.push.apply(spawnArgs, args);\n if (_.length === 0) Array.prototype.push.apply(spawnArgs, ['test/**/*.test.{ts,tsx,jsx,mjs}']);\n\n const queue = new Queue(1);\n queue.defer(spawn.bind(null, wtr, spawnArgs, options));\n queue.await((err) => unlink(restore, callback.bind(null, err)));\n } catch (err) {\n callback(err);\n }\n });\n}\n\nexport default function testBrowser(args, options, cb) {\n version !== 'local' ? workerWrapper('stable', args, options, cb) : worker(args, options, cb);\n}\n"],"names":["path","url","spawn","getopts","installSync","removeSync","link","unlink","Queue","resolveBin","installPath","wrapWorker","major","process","versions","node","split","version","__dirname","dirname","__filename","fileURLToPath","dist","join","workerWrapper","config","worker","args","options","callback","cwd","err","restore","platform","arch","wtr","_","opts","stopEarly","alias","spawnArgs","Array","prototype","push","apply","length","queue","defer","bind","await","testBrowser","cb"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,OAAOC,WAAW,iBAAiB;AACnC,OAAOC,aAAa,iBAAiB;AACrC,SAASC,WAAW,EAAEC,UAAU,QAAQ,mBAAmB;AAC3D,SAASC,IAAI,EAAEC,MAAM,QAAQ,cAAc;AAC3C,OAAOC,WAAW,WAAW;AAC7B,OAAOC,gBAAgB,mBAAmB;AAC1C,SAASC,WAAW,EAAEC,UAAU,QAAQ,WAAW;AAEnD,MAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,MAAMC,UAAUL,QAAQ,KAAK,UAAU;AACvC,MAAMM,YAAYlB,KAAKmB,OAAO,CAAC,OAAOC,eAAe,cAAcnB,IAAIoB,aAAa,CAAC,YAAYpB,GAAG,IAAImB;AACxG,MAAME,OAAOtB,KAAKuB,IAAI,CAACL,WAAW;AAClC,MAAMM,gBAAgBb,WAAWX,KAAKuB,IAAI,CAACD,MAAM,OAAO;AACxD,MAAMG,SAASzB,KAAKuB,IAAI,CAACD,MAAM,OAAO;AAEtC,SAASI,OAAOC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACrC,MAAMC,MAAMF,QAAQE,GAAG,IAAIjB,QAAQiB,GAAG;IAEtCxB,KAAKwB,KAAKpB,YAAYkB,UAAU,CAACG,KAAKC;QACpC,IAAID,KAAK,OAAOF,SAASE;QAEzB,IAAI;YACF3B,YAAY,UAAU,GAAGS,QAAQoB,QAAQ,CAAC,CAAC,EAAEpB,QAAQqB,IAAI,EAAE,EAAE;gBAAEJ;YAAI;YACnEzB,WAAW,WAAW,aAAa;gBAAEyB;YAAI;YACzC1B,YAAY,WAAW,GAAGS,QAAQoB,QAAQ,CAAC,CAAC,EAAEpB,QAAQqB,IAAI,EAAE,EAAE;gBAAEJ;YAAI;YAEpE,MAAMK,MAAM1B,WAAW,oBAAoB;YAC3C,MAAM,EAAE2B,CAAC,EAAE,GAAGC,MAAM,GAAGlC,QAAQwB,MAAM;gBAAEW,WAAW;gBAAMC,OAAO;oBAAEd,QAAQ;gBAAI;YAAE;YAC/E,MAAMe,YAAY,EAAE;YACpB,IAAI,CAACH,KAAKZ,MAAM,EAAEgB,MAAMC,SAAS,CAACC,IAAI,CAACC,KAAK,CAACJ,WAAW;gBAAC;gBAAYf;aAAO;YAC5EgB,MAAMC,SAAS,CAACC,IAAI,CAACC,KAAK,CAACJ,WAAWb;YACtC,IAAIS,EAAES,MAAM,KAAK,GAAGJ,MAAMC,SAAS,CAACC,IAAI,CAACC,KAAK,CAACJ,WAAW;gBAAC;aAAkC;YAE7F,MAAMM,QAAQ,IAAItC,MAAM;YACxBsC,MAAMC,KAAK,CAAC7C,MAAM8C,IAAI,CAAC,MAAMb,KAAKK,WAAWZ;YAC7CkB,MAAMG,KAAK,CAAC,CAAClB,MAAQxB,OAAOyB,SAASH,SAASmB,IAAI,CAAC,MAAMjB;QAC3D,EAAE,OAAOA,KAAK;YACZF,SAASE;QACX;IACF;AACF;AAEA,eAAe,SAASmB,YAAYvB,IAAI,EAAEC,OAAO,EAAEuB,EAAE;IACnDlC,YAAY,UAAUO,cAAc,UAAUG,MAAMC,SAASuB,MAAMzB,OAAOC,MAAMC,SAASuB;AAC3F"}