@xarc/app-dev 12.0.0 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ module.exports = {
2
+ require: ["@xarc/app-dev/config/mocha/setup.js", "@babel/register"],
3
+ reporter: "spec",
4
+ spec: "@(__test__|__tests__|test|tests)/**/*.@(js|jsx|ts|tsx)",
5
+ recursive: true,
6
+ ui: "bdd",
7
+ };
@@ -4,10 +4,18 @@ const optional_require_1 = require("optional-require");
4
4
  const optionalRequire = (0, optional_require_1.makeOptionalRequire)(require);
5
5
  const Enzyme = optionalRequire("enzyme");
6
6
  const Adapter = optionalRequire("enzyme-adapter-react-16");
7
+ const jsDomGlobal = optionalRequire("jsdom-global");
8
+ const tsNode = optionalRequire("ts-node");
7
9
  if (Enzyme && Adapter) {
8
10
  Enzyme.configure({ adapter: new Adapter() });
9
11
  }
10
- const chai = optionalRequire("chai");
12
+ if (jsDomGlobal) {
13
+ require("jsdom-global/register");
14
+ }
15
+ if (tsNode) {
16
+ require("ts-node/register");
17
+ }
18
+ const chai = optionalRequire("chai").default;
11
19
  /**
12
20
  * @param addons
13
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/config/mocha/setup.ts"],"names":[],"mappings":";;AAAA,uDAAuD;AACvD,MAAM,eAAe,GAAG,IAAA,sCAAmB,EAAC,OAAO,CAAC,CAAC;AAErD,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;AACzC,MAAM,OAAO,GAAG,eAAe,CAAC,yBAAyB,CAAC,CAAC;AAE3D,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;IACtB,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;AAErC;;GAEG;AACH,SAAS,OAAO,CAAC,MAAM;IACrB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,MAAM,QAAQ,GAAG,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,IAAI,EAAE,CAAC;IACT,OAAO,CAAC,CAAC,kBAAkB,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE9D,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;IAE/B,MAAc,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/config/mocha/setup.ts"],"names":[],"mappings":";;AAAA,uDAAuD;AACvD,MAAM,eAAe,GAAG,IAAA,sCAAmB,EAAC,OAAO,CAAC,CAAC;AACrD,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;AACzC,MAAM,OAAO,GAAG,eAAe,CAAC,yBAAyB,CAAC,CAAC;AAE3D,MAAM,WAAW,GAAG,eAAe,CAAC,cAAc,CAAC,CAAC;AACpD,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;AAE1C,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;IACtB,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AACD,IAAI,WAAW,EAAE,CAAC;IAChB,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACnC,CAAC;AAED,IAAI,MAAM,EAAE,CAAC;IACX,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC9B,CAAC;AACD,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;AAE7C;;GAEG;AACH,SAAS,OAAO,CAAC,MAAM;IACrB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,MAAM,QAAQ,GAAG,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,IAAI,EAAE,CAAC;IACT,OAAO,CAAC,CAAC,kBAAkB,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE9D,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;IAE/B,MAAc,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AACvC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { XarcOptions } from "../config/opt2/xarc-options";
2
+ import type { TaskRunner } from "@xarc/run";
2
3
  import xrun from "@xarc/run";
3
4
  export {
4
5
  /** The task runner @xarc/run */
@@ -40,4 +41,4 @@ export declare const getDevTaskRunner: (cwd?: string) => any;
40
41
  *
41
42
  * @returns The `@xarc/run` task runner instance that was used.
42
43
  */
43
- export declare function loadXarcDevTasks(userXrun?: any, userOptions?: XarcOptions): any;
44
+ export declare function loadXarcDevTasks(userXrun?: TaskRunner, userOptions?: XarcOptions): TaskRunner;
package/lib/dev-tasks.js CHANGED
@@ -28,7 +28,7 @@ const utils_2 = require("./utils");
28
28
  const constants_1 = require("./tasks/constants");
29
29
  const eslint_1 = require("./tasks/eslint");
30
30
  const package_json_1 = require("./tasks/package-json");
31
- const { getWebpackStartConfig, setWebpackProfile } = require("@xarc/webpack/lib/util/custom-check");
31
+ const { getWebpackStartConfig, setWebpackProfile, } = require("@xarc/webpack/lib/util/custom-check");
32
32
  const optionalRequire = (0, optional_require_1.makeOptionalRequire)(require);
33
33
  let xarcCwd;
34
34
  /**
@@ -132,8 +132,16 @@ function loadXarcDevTasks(userXrun, userOptions = {}) {
132
132
  const flattenMessagesL10n = require(`../scripts/l10n/flatten-messages.js`);
133
133
  const mapIsomorphicCdn = require(`../scripts/map-isomorphic-cdn.js`);
134
134
  const config = xarcOptions.config;
135
- const karmaConfig = (file) => path_1.default.join(config.karma, file);
136
- const mochaConfig = (file) => path_1.default.join(config.mocha, file);
135
+ const karmaConfig = (filePath) => path_1.default.join(config.karma, filePath);
136
+ const makeConfigResolver = (configDir) => (filePath) => {
137
+ const rootConfig = path_1.default.join(xarcCwd, filePath);
138
+ if (fs_1.default.existsSync(rootConfig)) {
139
+ return rootConfig;
140
+ }
141
+ return path_1.default.join(configDir, filePath);
142
+ };
143
+ const mochaConfig = makeConfigResolver(config.mocha);
144
+ const jestConfig = makeConfigResolver(config.jest);
137
145
  const shell = xsh_1.default.$;
138
146
  const exec = xsh_1.default.exec;
139
147
  const mkCmd = xsh_1.default.mkCmd;
@@ -172,7 +180,9 @@ function loadXarcDevTasks(userXrun, userOptions = {}) {
172
180
  else if (child.kill && child.pid) {
173
181
  const ch = child;
174
182
  child = "restart";
175
- (await (0, ps_get_1.psChildren)(ch.pid)).reverse().forEach((c) => process.kill(c.pid));
183
+ (await (0, ps_get_1.psChildren)(ch.pid))
184
+ .reverse()
185
+ .forEach((c) => process.kill(c.pid));
176
186
  ch.kill();
177
187
  }
178
188
  }, 500);
@@ -359,8 +369,15 @@ module.exports = {
359
369
  `);
360
370
  };
361
371
  const AppMode = xarcOptions.AppMode;
362
- const babelCliIgnore = quote([...constants_1.jestTestDirectories.map((dir) => `**/${dir}`), `**/*.spec.js`, `**/*.spec.jsx`]
363
- .concat(xarcOptions.babel.enableTypeScript && [`**/*.test.ts`, `**/*.test.tsx`])
372
+ const babelCliIgnore = quote([
373
+ ...constants_1.jestTestDirectories.map((dir) => `**/${dir}`),
374
+ `**/*.spec.js`,
375
+ `**/*.spec.jsx`,
376
+ ]
377
+ .concat(xarcOptions.babel.enableTypeScript && [
378
+ `**/*.test.ts`,
379
+ `**/*.test.tsx`,
380
+ ])
364
381
  .concat(`**/.__dev_hmr`)
365
382
  .filter((x) => x)
366
383
  .join(","));
@@ -393,7 +410,12 @@ module.exports = {
393
410
  build: {
394
411
  dep: [".remove-log-files", ".production-env"],
395
412
  desc: `Build your app's ${AppMode.src.dir} directory into ${AppMode.lib.dir} for production`,
396
- task: [".build-lib", "build-dist", ".check.top.level.babelrc", "mv-to-dist"],
413
+ task: [
414
+ ".build-lib",
415
+ "build-dist",
416
+ ".check.top.level.babelrc",
417
+ "mv-to-dist",
418
+ ],
397
419
  },
398
420
  //
399
421
  // browser coverage
@@ -429,7 +451,11 @@ module.exports = {
429
451
  "build-dist:clean-tmp",
430
452
  ],
431
453
  ".copy-xarc-options-to-dist": () => shell.cp(path_1.default.join(eTmpDir, "xarc-options.json"), "dist"),
432
- "mv-to-dist": ["mv-to-dist:clean", "mv-to-dist:mv-dirs", "mv-to-dist:keep-targets"],
454
+ "mv-to-dist": [
455
+ "mv-to-dist:clean",
456
+ "mv-to-dist:mv-dirs",
457
+ "mv-to-dist:keep-targets",
458
+ ],
433
459
  "build-dist-dev-static": {
434
460
  desc: false,
435
461
  task: function () {
@@ -526,9 +552,9 @@ module.exports = {
526
552
  const { envTargets } = xarcOptions.babel;
527
553
  assetsJson.targets = envTargets[dir.split("-")[1]];
528
554
  // eslint-disable-next-line no-shadow
529
- fs_1.default.writeFile(isomorphicPath, JSON.stringify(assetsJson, null, 2), (err) => {
530
- if (err)
531
- throw err;
555
+ fs_1.default.writeFile(isomorphicPath, JSON.stringify(assetsJson, null, 2), (error) => {
556
+ if (error)
557
+ throw error;
532
558
  });
533
559
  });
534
560
  }
@@ -568,7 +594,9 @@ module.exports = {
568
594
  includeDir: true,
569
595
  grouping: true,
570
596
  filterDir: (x) => (x === `.__dev_hmr` && "dirs") || "otherDirs",
571
- filter: (x, p) => x.indexOf(".spec.") > 0 || x.indexOf(".test.") > 0 || p === `.__dev_hmr`,
597
+ filter: (x, p) => x.indexOf(".spec.") > 0 ||
598
+ x.indexOf(".test.") > 0 ||
599
+ p === `.__dev_hmr`,
572
600
  });
573
601
  scanned.files.forEach((f) => {
574
602
  try {
@@ -648,7 +676,13 @@ module.exports = {
648
676
  "check-ci": ["lint", "test-ci"],
649
677
  "check-cov": ["lint", "test-cov"],
650
678
  "check-dev": ["lint", "test-dev"],
651
- clean: [".clean.dist", ".clean.lib", ".clean.prod", ".clean.etmp", ".clean.dll"],
679
+ clean: [
680
+ ".clean.dist",
681
+ ".clean.lib",
682
+ ".clean.prod",
683
+ ".clean.etmp",
684
+ ".clean.dll",
685
+ ],
652
686
  ".clean.dist": () => shell.rm("-rf", "dist", ...buildDistDirs),
653
687
  ".clean.lib": () => undefined, // to be updated below for src mode
654
688
  ".clean.prod": () => shell.rm("-rf", xarcOptions.prodDir),
@@ -670,7 +704,7 @@ module.exports = {
670
704
  task(context) {
671
705
  userXrun.updateEnv({ NODE_ENV: "production" }, { override: false });
672
706
  if (process.env.APP_SERVER_PORT === "0") {
673
- console.log("mock-cloud need to explicitly set APP_SERVER_PORT, changing 0 to 3100");
707
+ process.stdout.write("mock-cloud need to explicitly set APP_SERVER_PORT, changing 0 to 3100\n");
674
708
  process.env.APP_SERVER_PORT = "3100";
675
709
  }
676
710
  const mockTask = xrun2.concurrent([
@@ -679,9 +713,9 @@ module.exports = {
679
713
  ]);
680
714
  if (!fs_1.default.existsSync("dist")) {
681
715
  console.log("dist does not exist, running build task first.");
682
- return xrun2.serial("build", () => console.log("build completed, starting mock prod mode with proxy"), mockTask);
716
+ return xrun2.serial("build", () => process.stdout.write("build completed, starting mock prod mode with proxy\n"), mockTask);
683
717
  }
684
- return xrun2.serial(() => console.log("dist exist, skipping build task"), mockTask);
718
+ return xrun2.serial(() => process.stdout.write("dist exist, skipping build task\n"), mockTask);
685
719
  },
686
720
  },
687
721
  "setup-dev": {
@@ -698,7 +732,10 @@ You only need to run this if you are doing something not through the xarc tasks.
698
732
  dep: [".remove-log-files", ".development-env", ".build.babelrc"],
699
733
  task() {
700
734
  const args = this.args.join(" ");
701
- return [".webpack-dev", [`server-admin ${args}`, "generate-service-worker"]];
735
+ return [
736
+ ".webpack-dev",
737
+ [`server-admin ${args}`, "generate-service-worker"],
738
+ ];
702
739
  },
703
740
  },
704
741
  hot: {
@@ -754,10 +791,14 @@ You only need to run this if you are doing something not through the xarc tasks.
754
791
  const exec = quote(path_1.default.join(xarcOptions.devDir, "lib/babel-run"));
755
792
  const isNodeArgs = (x) => x.startsWith("--inspect");
756
793
  const nodeArgs = context.args.filter(isNodeArgs).join(" ");
757
- const otherArgs = context.args.filter((x) => !isNodeArgs(x)).join(" ");
794
+ const otherArgs = context.args
795
+ .filter((x) => !isNodeArgs(x))
796
+ .join(" ");
758
797
  // get user specified port for admin
759
798
  const userPort = (0, utils_1.getDevAdminPortFromEnv)(xarcOptions.adminPort);
760
- const portArg = !otherArgs.includes("--port") && userPort ? `--port ${userPort}` : "";
799
+ const portArg = !otherArgs.includes("--port") && userPort
800
+ ? `--port ${userPort}`
801
+ : "";
761
802
  return mkCmd(`~(tty)$node`, nodeArgs, quote(path_1.default.join(xarcOptions.devDir, "lib/dev-admin")), otherArgs, portArg, `--exec ${exec} --ext js,jsx,json,yaml,log,ts,tsx`, `--watch config ${AppMode.src.server}`, `-- ${AppMode.src.server}`);
762
803
  },
763
804
  },
@@ -789,7 +830,8 @@ You only need to run this if you are doing something not through the xarc tasks.
789
830
  "test-cov": [
790
831
  "?.karma.test-frontend-cov",
791
832
  "?.jest.test-frontend-cov",
792
- "test-server-cov",
833
+ "?.mocha.test-frontend-cov",
834
+ "?.test-server-cov",
793
835
  ].filter((x) => x),
794
836
  "test-dev": ["test-frontend-dev", "test-server-dev"],
795
837
  "test-watch": ["test-watch-all"],
@@ -909,7 +951,7 @@ You only need to run this if you are doing something not through the xarc tasks.
909
951
  dir: path_1.default.resolve(xarcCwd, AppMode.src.dir),
910
952
  grouping: true,
911
953
  includeDir: true,
912
- filterDir: (d) => (constants_1.jestTestDirectories.indexOf(d) >= 0 ? "dirs" : "otherDirs"),
954
+ filterDir: (d) => constants_1.jestTestDirectories.indexOf(d) >= 0 ? "dirs" : "otherDirs",
913
955
  filterExt: [".js", ".jsx", ".ts", ".tsx"],
914
956
  filter: (x) => x.indexOf(".spec.") > 0 || x.indexOf(".test.") > 0,
915
957
  });
@@ -923,8 +965,10 @@ You only need to run this if you are doing something not through the xarc tasks.
923
965
  const jestBinJs = require.resolve("jest/bin/jest");
924
966
  logger_1.logger.info("Running jest unit tests");
925
967
  const brk = this.argv.indexOf("--inspect-brk") >= 0 ? "--inspect-brk" : "";
926
- const jestOpts = this.argv.slice(1).filter((x) => x !== "--inspect-brk");
927
- return mkCmd(`~(tty)$node`, brk, jestBinJs, jestOpts.join(" "), `--config ${xarcOptions.config.jest}/jest.config.js`);
968
+ const jestOpts = this.argv
969
+ .slice(1)
970
+ .filter((x) => x !== "--inspect-brk");
971
+ return mkCmd(`~(tty)$node`, brk, jestBinJs, jestOpts.join(" "), `--config ${quote(jestConfig("jest.config.js"))}`);
928
972
  }
929
973
  else {
930
974
  return undefined;
@@ -942,17 +986,30 @@ You only need to run this if you are doing something not through the xarc tasks.
942
986
  }
943
987
  if (xarcOptions.options.mocha) {
944
988
  Object.assign(tasks, {
989
+ mocha: {
990
+ desc: "Run mocha tests (--inspect-brk to start debugger)",
991
+ task() {
992
+ return `.mocha.test-frontend-cov ${this.argv.slice(1).join(" ")}`;
993
+ },
994
+ },
995
+ ".mocha.test-frontend-cov"() {
996
+ const brk = this.argv.indexOf("--inspect-brk") >= 0 ? "--inspect-brk" : "";
997
+ const mochaOpts = this.argv
998
+ .slice(1)
999
+ .filter((x) => x !== "--inspect-brk");
1000
+ return mkCmd(`~$nyc --all`, `--reporter=text --reporter=lcov node_modules/mocha/bin/_mocha --config`, quote(mochaConfig(".mocharc.js")), brk, mochaOpts.join(" "));
1001
+ },
945
1002
  "test-server-cov": () => {
946
1003
  if (shell.test("-d", "test/server")) {
947
1004
  AppMode.setEnv(AppMode.src.dir);
948
- return mkCmd(`~$nyc --all --cwd src/server`, `--reporter=text --reporter=lcov node_modules/mocha/bin/_mocha --opts`, quote(mochaConfig("mocha.opts")), `test/server`);
1005
+ return mkCmd(`~$nyc --all --cwd src/server`, `--reporter=text --reporter=lcov node_modules/mocha/bin/_mocha --config`, quote(mochaConfig(".mocharc.js")), `test/server`);
949
1006
  }
950
1007
  return undefined;
951
1008
  },
952
1009
  "test-server-dev": () => {
953
1010
  if (shell.test("-d", "test/server")) {
954
1011
  AppMode.setEnv(AppMode.src.dir);
955
- return mkCmd(`~$mocha -c --opts`, quote(mochaConfig("mocha.opts")), `test/server`);
1012
+ return mkCmd(`~$mocha -c --config`, quote(mochaConfig(".mocharc.js")), `test/server`);
956
1013
  }
957
1014
  return undefined;
958
1015
  },
@@ -1 +1 @@
1
- {"version":3,"file":"dev-tasks.js","sourceRoot":"","sources":["../src/lib/dev-tasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev-tasks.js","sourceRoot":"","sources":["../src/lib/dev-tasks.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xarc/app-dev",
3
- "version": "12.0.0",
3
+ "version": "12.1.0",
4
4
  "description": "Electrode X application development support",
5
5
  "main": "lib/index.js",
6
6
  "homepage": "http://www.electrode.io",
@@ -28,7 +28,7 @@
28
28
  "Joel Chen <xchen@walmartlabs.com>"
29
29
  ],
30
30
  "peerDependencies": {
31
- "@xarc/app": "^12.0.0"
31
+ "@xarc/app": "^12.1.0"
32
32
  },
33
33
  "dependencies": {
34
34
  "@babel/cli": "^7.17.10",
@@ -103,7 +103,7 @@
103
103
  "@types/webpack": "5.28.0",
104
104
  "@typescript-eslint/eslint-plugin": "^5.0.0",
105
105
  "@typescript-eslint/parser": "^5.0.0",
106
- "@xarc/app": "^12.0.0",
106
+ "@xarc/app": "^12.1.0",
107
107
  "@xarc/module-dev": "^4.1.0",
108
108
  "@xarc/run": "^1.1.1",
109
109
  "chai": "^4.3.6",
@@ -0,0 +1,7 @@
1
+ module.exports = {
2
+ require: ["@xarc/app-dev/config/mocha/setup.js", "@babel/register"],
3
+ reporter: "spec",
4
+ spec: "@(__test__|__tests__|test|tests)/**/*.@(js|jsx|ts|tsx)",
5
+ recursive: true,
6
+ ui: "bdd",
7
+ };
@@ -1,14 +1,22 @@
1
1
  import { makeOptionalRequire } from "optional-require";
2
2
  const optionalRequire = makeOptionalRequire(require);
3
-
4
3
  const Enzyme = optionalRequire("enzyme");
5
4
  const Adapter = optionalRequire("enzyme-adapter-react-16");
6
5
 
6
+ const jsDomGlobal = optionalRequire("jsdom-global");
7
+ const tsNode = optionalRequire("ts-node");
8
+
7
9
  if (Enzyme && Adapter) {
8
10
  Enzyme.configure({ adapter: new Adapter() });
9
11
  }
12
+ if (jsDomGlobal) {
13
+ require("jsdom-global/register");
14
+ }
10
15
 
11
- const chai = optionalRequire("chai");
16
+ if (tsNode) {
17
+ require("ts-node/register");
18
+ }
19
+ const chai = optionalRequire("chai").default;
12
20
 
13
21
  /**
14
22
  * @param addons
@@ -10,6 +10,7 @@ import Path from "path";
10
10
  import assert from "assert";
11
11
  import requireAt from "require-at";
12
12
  import { makeOptionalRequire } from "optional-require";
13
+ import type { TaskRunner } from "@xarc/run";
13
14
  import xrun from "@xarc/run";
14
15
  import { getDevOptions } from "../config/archetype";
15
16
  import ck from "chalker";
@@ -18,7 +19,6 @@ import { psChildren } from "ps-get";
18
19
  import chokidar from "chokidar";
19
20
  import { spawn } from "child_process";
20
21
  import scanDir from "filter-scan-dir";
21
- import _ from "lodash";
22
22
  import xsh from "xsh";
23
23
  import { logger } from "./logger";
24
24
  import { createGitIgnoreDir } from "./utils";
@@ -26,7 +26,10 @@ import { jestTestDirectories } from "./tasks/constants";
26
26
  import { eslintTasks } from "./tasks/eslint";
27
27
  import { updateAppDep } from "./tasks/package-json";
28
28
 
29
- const { getWebpackStartConfig, setWebpackProfile } = require("@xarc/webpack/lib/util/custom-check");
29
+ const {
30
+ getWebpackStartConfig,
31
+ setWebpackProfile,
32
+ } = require("@xarc/webpack/lib/util/custom-check");
30
33
 
31
34
  const optionalRequire = makeOptionalRequire(require);
32
35
 
@@ -133,7 +136,10 @@ export const getDevTaskRunner = (cwd: string = process.cwd()) => {
133
136
  *
134
137
  * @returns The `@xarc/run` task runner instance that was used.
135
138
  */
136
- export function loadXarcDevTasks(userXrun?: any, userOptions: XarcOptions = {}) {
139
+ export function loadXarcDevTasks(
140
+ userXrun?: TaskRunner,
141
+ userOptions: XarcOptions = {}
142
+ ) {
137
143
  let xarcOptions = getDevOptions(userOptions);
138
144
  xarcCwd = xarcOptions.cwd;
139
145
 
@@ -153,8 +159,20 @@ export function loadXarcDevTasks(userXrun?: any, userOptions: XarcOptions = {})
153
159
  const mapIsomorphicCdn = require(`../scripts/map-isomorphic-cdn.js`);
154
160
 
155
161
  const config = xarcOptions.config;
156
- const karmaConfig = (file) => Path.join(config.karma, file);
157
- const mochaConfig = (file) => Path.join(config.mocha, file);
162
+ const karmaConfig = (filePath: string): string =>
163
+ Path.join(config.karma, filePath);
164
+ const makeConfigResolver =
165
+ (configDir: string) =>
166
+ (filePath: string): string => {
167
+ const rootConfig = Path.join(xarcCwd, filePath);
168
+ if (Fs.existsSync(rootConfig)) {
169
+ return rootConfig;
170
+ }
171
+ return Path.join(configDir, filePath);
172
+ };
173
+
174
+ const mochaConfig = makeConfigResolver(config.mocha);
175
+ const jestConfig = makeConfigResolver(config.jest);
158
176
 
159
177
  const shell = xsh.$;
160
178
  const exec = xsh.exec;
@@ -195,7 +213,9 @@ export function loadXarcDevTasks(userXrun?: any, userOptions: XarcOptions = {})
195
213
  } else if (child.kill && child.pid) {
196
214
  const ch = child;
197
215
  child = "restart";
198
- (await psChildren(ch.pid)).reverse().forEach((c) => process.kill(c.pid));
216
+ (await psChildren(ch.pid))
217
+ .reverse()
218
+ .forEach((c) => process.kill(c.pid));
199
219
  ch.kill();
200
220
  }
201
221
  }, 500);
@@ -210,7 +230,10 @@ export function loadXarcDevTasks(userXrun?: any, userOptions: XarcOptions = {})
210
230
  // and the app from APP_SERVER_PORT.
211
231
  // If the APP_SERVER_PORT is set to the empty string however,
212
232
  // leave it empty and therefore disable the dev proxy server.
213
- xrun.updateEnv({ APP_SERVER_PORT: "0", WEBPACK_DEV_PORT: "0" }, { override: false });
233
+ xrun.updateEnv(
234
+ { APP_SERVER_PORT: "0", WEBPACK_DEV_PORT: "0" },
235
+ { override: false }
236
+ );
214
237
 
215
238
  const eTmpDir = xarcOptions.eTmpDir;
216
239
 
@@ -238,7 +261,9 @@ export function loadXarcDevTasks(userXrun?: any, userOptions: XarcOptions = {})
238
261
  function generateServiceWorker() {
239
262
  const NODE_ENV = process.env.NODE_ENV;
240
263
  const serviceWorkerExists = Fs.existsSync("./service-worker.js");
241
- const serviceWorkerConfigExists = Fs.existsSync("config/sw-precache-config.json");
264
+ const serviceWorkerConfigExists = Fs.existsSync(
265
+ "config/sw-precache-config.json"
266
+ );
242
267
 
243
268
  /**
244
269
  * Determines whether the fetch event handler is included in the generated service worker code,
@@ -247,7 +272,8 @@ export function loadXarcDevTasks(userXrun?: any, userOptions: XarcOptions = {})
247
272
  * https://github.com/GoogleChrome/sw-precache#handlefetch-boolean
248
273
  *
249
274
  */
250
- const cacheRequestFetch = NODE_ENV !== "production" ? "--no-handle-fetch" : "";
275
+ const cacheRequestFetch =
276
+ NODE_ENV !== "production" ? "--no-handle-fetch" : "";
251
277
 
252
278
  if (serviceWorkerConfigExists) {
253
279
  // generate-service-worker
@@ -317,7 +343,11 @@ export function loadXarcDevTasks(userXrun?: any, userOptions: XarcOptions = {})
317
343
  logger.info(`Starting app server${x}`);
318
344
  logger.info("To terminate press Ctrl+C.");
319
345
  xarcOptions.AppMode.setEnv(xarcOptions.AppMode.lib.dir);
320
- return exec(`node`, argFlags, Path.join(xarcOptions.AppMode.lib.server, "index.js"));
346
+ return exec(
347
+ `node`,
348
+ argFlags,
349
+ Path.join(xarcOptions.AppMode.lib.server, "index.js")
350
+ );
321
351
  }
322
352
 
323
353
  /**
@@ -395,7 +425,11 @@ ie >= 11
395
425
  });
396
426
  };
397
427
 
398
- const makeBabelConfig = (destDir, _rcFile, resultFile = "babel.config.js") => {
428
+ const makeBabelConfig = (
429
+ destDir: string,
430
+ _rcFile: string,
431
+ resultFile: string = "babel.config.js"
432
+ ): void => {
399
433
  destDir = Path.resolve(xarcCwd, destDir);
400
434
 
401
435
  const files = [".babelrc.js", resultFile];
@@ -409,7 +443,9 @@ ie >= 11
409
443
 
410
444
  const newName = Path.join(destDir, resultFile);
411
445
 
412
- console.log(ck`<orange>Generating <cyan>${newName}</> for you - please commit it.</>`);
446
+ console.log(
447
+ ck`<orange>Generating <cyan>${newName}</> for you - please commit it.</>`
448
+ );
413
449
  Fs.writeFileSync(
414
450
  newName,
415
451
  // NOTE: do not change module.exports below, this is .js file for app
@@ -425,8 +461,17 @@ module.exports = {
425
461
  const AppMode = xarcOptions.AppMode;
426
462
 
427
463
  const babelCliIgnore = quote(
428
- [...jestTestDirectories.map((dir) => `**/${dir}`), `**/*.spec.js`, `**/*.spec.jsx`]
429
- .concat(xarcOptions.babel.enableTypeScript && [`**/*.test.ts`, `**/*.test.tsx`])
464
+ [
465
+ ...jestTestDirectories.map((dir) => `**/${dir}`),
466
+ `**/*.spec.js`,
467
+ `**/*.spec.jsx`,
468
+ ]
469
+ .concat(
470
+ xarcOptions.babel.enableTypeScript && [
471
+ `**/*.test.ts`,
472
+ `**/*.test.tsx`,
473
+ ]
474
+ )
430
475
  .concat(`**/.__dev_hmr`)
431
476
  .filter((x) => x)
432
477
  .join(",")
@@ -449,9 +494,14 @@ module.exports = {
449
494
 
450
495
  let tasks = {
451
496
  ".mk-prod-dir": () =>
452
- createGitIgnoreDir(Path.resolve(xarcCwd, xarcOptions.prodDir), "Electrode production dir"),
453
- ".mk-dist-dir": () => createGitIgnoreDir(Path.resolve(xarcCwd, "dist"), "Electrode dist dir"),
454
- ".mk-dll-dir": () => createGitIgnoreDir(Path.resolve(xarcCwd, "dll"), "Electrode dll dir"),
497
+ createGitIgnoreDir(
498
+ Path.resolve(xarcCwd, xarcOptions.prodDir),
499
+ "Electrode production dir"
500
+ ),
501
+ ".mk-dist-dir": () =>
502
+ createGitIgnoreDir(Path.resolve(xarcCwd, "dist"), "Electrode dist dir"),
503
+ ".mk-dll-dir": () =>
504
+ createGitIgnoreDir(Path.resolve(xarcCwd, "dll"), "Electrode dll dir"),
455
505
  ".production-env": () => {
456
506
  setProductionEnv();
457
507
  xarcOptions = getDevOptions(userOptions); // re-evaluate options
@@ -469,7 +519,12 @@ module.exports = {
469
519
  build: {
470
520
  dep: [".remove-log-files", ".production-env"],
471
521
  desc: `Build your app's ${AppMode.src.dir} directory into ${AppMode.lib.dir} for production`,
472
- task: [".build-lib", "build-dist", ".check.top.level.babelrc", "mv-to-dist"],
522
+ task: [
523
+ ".build-lib",
524
+ "build-dist",
525
+ ".check.top.level.babelrc",
526
+ "mv-to-dist",
527
+ ],
473
528
  },
474
529
 
475
530
  //
@@ -513,9 +568,14 @@ module.exports = {
513
568
  "build-dist:clean-tmp",
514
569
  ],
515
570
 
516
- ".copy-xarc-options-to-dist": () => shell.cp(Path.join(eTmpDir, "xarc-options.json"), "dist"),
571
+ ".copy-xarc-options-to-dist": () =>
572
+ shell.cp(Path.join(eTmpDir, "xarc-options.json"), "dist"),
517
573
 
518
- "mv-to-dist": ["mv-to-dist:clean", "mv-to-dist:mv-dirs", "mv-to-dist:keep-targets"],
574
+ "mv-to-dist": [
575
+ "mv-to-dist:clean",
576
+ "mv-to-dist:mv-dirs",
577
+ "mv-to-dist:keep-targets",
578
+ ],
519
579
  "build-dist-dev-static": {
520
580
  desc: false,
521
581
  task: function () {
@@ -607,7 +667,11 @@ module.exports = {
607
667
  } else if (file.endsWith(".map")) {
608
668
  shell.cp("-r", file, "dist/map");
609
669
  } else {
610
- shell.cp("-r", file, `dist/server/${dir.split("-")[1]}-${Path.basename(file)}`);
670
+ shell.cp(
671
+ "-r",
672
+ file,
673
+ `dist/server/${dir.split("-")[1]}-${Path.basename(file)}`
674
+ );
611
675
  }
612
676
  });
613
677
  });
@@ -620,7 +684,11 @@ module.exports = {
620
684
  task: () => {
621
685
  buildDistDirs.forEach((dir) => {
622
686
  // add `targets` field to `dist-X/isomorphic-assets.json`
623
- const isomorphicPath = Path.resolve(xarcCwd, dir, "isomorphic-assets.json");
687
+ const isomorphicPath = Path.resolve(
688
+ xarcCwd,
689
+ dir,
690
+ "isomorphic-assets.json"
691
+ );
624
692
  if (Fs.existsSync(isomorphicPath)) {
625
693
  Fs.readFile(
626
694
  isomorphicPath,
@@ -633,9 +701,13 @@ module.exports = {
633
701
  const { envTargets } = xarcOptions.babel;
634
702
  assetsJson.targets = envTargets[dir.split("-")[1]];
635
703
  // eslint-disable-next-line no-shadow
636
- Fs.writeFile(isomorphicPath, JSON.stringify(assetsJson, null, 2), (err) => {
637
- if (err) throw err;
638
- });
704
+ Fs.writeFile(
705
+ isomorphicPath,
706
+ JSON.stringify(assetsJson, null, 2),
707
+ (error) => {
708
+ if (error) throw error;
709
+ }
710
+ );
639
711
  }
640
712
  );
641
713
  }
@@ -686,7 +758,9 @@ module.exports = {
686
758
  grouping: true,
687
759
  filterDir: (x) => (x === `.__dev_hmr` && "dirs") || "otherDirs",
688
760
  filter: (x, p) =>
689
- x.indexOf(".spec.") > 0 || x.indexOf(".test.") > 0 || p === `.__dev_hmr`,
761
+ x.indexOf(".spec.") > 0 ||
762
+ x.indexOf(".test.") > 0 ||
763
+ p === `.__dev_hmr`,
690
764
  });
691
765
  scanned.files.forEach((f) => {
692
766
  try {
@@ -791,7 +865,13 @@ module.exports = {
791
865
  "check-cov": ["lint", "test-cov"],
792
866
  "check-dev": ["lint", "test-dev"],
793
867
 
794
- clean: [".clean.dist", ".clean.lib", ".clean.prod", ".clean.etmp", ".clean.dll"],
868
+ clean: [
869
+ ".clean.dist",
870
+ ".clean.lib",
871
+ ".clean.prod",
872
+ ".clean.etmp",
873
+ ".clean.dll",
874
+ ],
795
875
  ".clean.dist": () => shell.rm("-rf", "dist", ...buildDistDirs),
796
876
  ".clean.lib": () => undefined, // to be updated below for src mode
797
877
  ".clean.prod": () => shell.rm("-rf", xarcOptions.prodDir),
@@ -815,7 +895,9 @@ module.exports = {
815
895
  task(context) {
816
896
  userXrun.updateEnv({ NODE_ENV: "production" }, { override: false });
817
897
  if (process.env.APP_SERVER_PORT === "0") {
818
- console.log("mock-cloud need to explicitly set APP_SERVER_PORT, changing 0 to 3100");
898
+ process.stdout.write(
899
+ "mock-cloud need to explicitly set APP_SERVER_PORT, changing 0 to 3100\n"
900
+ );
819
901
  process.env.APP_SERVER_PORT = "3100";
820
902
  }
821
903
 
@@ -835,12 +917,18 @@ module.exports = {
835
917
  console.log("dist does not exist, running build task first.");
836
918
  return xrun2.serial(
837
919
  "build",
838
- () => console.log("build completed, starting mock prod mode with proxy"),
920
+ () =>
921
+ process.stdout.write(
922
+ "build completed, starting mock prod mode with proxy\n"
923
+ ),
839
924
  mockTask
840
925
  );
841
926
  }
842
927
 
843
- return xrun2.serial(() => console.log("dist exist, skipping build task"), mockTask);
928
+ return xrun2.serial(
929
+ () => process.stdout.write("dist exist, skipping build task\n"),
930
+ mockTask
931
+ );
844
932
  },
845
933
  },
846
934
 
@@ -859,7 +947,10 @@ You only need to run this if you are doing something not through the xarc tasks.
859
947
  dep: [".remove-log-files", ".development-env", ".build.babelrc"],
860
948
  task() {
861
949
  const args = this.args.join(" ");
862
- return [".webpack-dev", [`server-admin ${args}`, "generate-service-worker"]];
950
+ return [
951
+ ".webpack-dev",
952
+ [`server-admin ${args}`, "generate-service-worker"],
953
+ ];
863
954
  },
864
955
  },
865
956
 
@@ -913,13 +1004,15 @@ You only need to run this if you are doing something not through the xarc tasks.
913
1004
 
914
1005
  "server-prod": {
915
1006
  dep: [".production-env", ".static-files-env"],
916
- desc:
917
- "Start server in production mode with static files routes. Must run 'clap build' first.",
1007
+ desc: "Start server in production mode with static files routes. Must run 'clap build' first.",
918
1008
  task: () => startAppServer(),
919
1009
  },
920
1010
 
921
1011
  ".init-bundle.valid.log": () =>
922
- Fs.writeFileSync(Path.resolve(xarcCwd, eTmpDir, "bundle.valid.log"), `${Date.now()}`),
1012
+ Fs.writeFileSync(
1013
+ Path.resolve(xarcCwd, eTmpDir, "bundle.valid.log"),
1014
+ `${Date.now()}`
1015
+ ),
923
1016
 
924
1017
  "server-admin": {
925
1018
  desc: "Start development with admin server",
@@ -930,11 +1023,16 @@ You only need to run this if you are doing something not through the xarc tasks.
930
1023
  const exec = quote(Path.join(xarcOptions.devDir, "lib/babel-run"));
931
1024
  const isNodeArgs = (x) => x.startsWith("--inspect");
932
1025
  const nodeArgs = context.args.filter(isNodeArgs).join(" ");
933
- const otherArgs = context.args.filter((x) => !isNodeArgs(x)).join(" ");
1026
+ const otherArgs = context.args
1027
+ .filter((x) => !isNodeArgs(x))
1028
+ .join(" ");
934
1029
 
935
1030
  // get user specified port for admin
936
1031
  const userPort = getDevAdminPortFromEnv(xarcOptions.adminPort);
937
- const portArg = !otherArgs.includes("--port") && userPort ? `--port ${userPort}` : "";
1032
+ const portArg =
1033
+ !otherArgs.includes("--port") && userPort
1034
+ ? `--port ${userPort}`
1035
+ : "";
938
1036
 
939
1037
  return mkCmd(
940
1038
  `~(tty)$node`,
@@ -976,19 +1074,28 @@ You only need to run this if you are doing something not through the xarc tasks.
976
1074
  options: --debug --mock-cdn`,
977
1075
  task(context) {
978
1076
  const debug = context.argOpts.debug ? "--inspect-brk " : "";
979
- const proxySpawn = require.resolve("@xarc/app-dev/lib/dev-admin/redbird-spawn");
1077
+ const proxySpawn = require.resolve(
1078
+ "@xarc/app-dev/lib/dev-admin/redbird-spawn"
1079
+ );
980
1080
  return `~(tty)$node ${debug}${proxySpawn} ${context.args.join(" ")}`;
981
1081
  },
982
1082
  },
983
1083
 
984
- "test-server": xrun2.concurrent(["lint-server", "lint-server-test"], "test-server-cov"),
985
- "test-watch-all": xrun2.concurrent("server-admin.test", "test-frontend-dev-watch"),
1084
+ "test-server": xrun2.concurrent(
1085
+ ["lint-server", "lint-server-test"],
1086
+ "test-server-cov"
1087
+ ),
1088
+ "test-watch-all": xrun2.concurrent(
1089
+ "server-admin.test",
1090
+ "test-frontend-dev-watch"
1091
+ ),
986
1092
 
987
1093
  "test-ci": ["test-frontend-ci"],
988
1094
  "test-cov": [
989
1095
  "?.karma.test-frontend-cov",
990
1096
  "?.jest.test-frontend-cov",
991
- "test-server-cov",
1097
+ "?.mocha.test-frontend-cov",
1098
+ "?.test-server-cov",
992
1099
  ].filter((x) => x),
993
1100
  "test-dev": ["test-frontend-dev", "test-server-dev"],
994
1101
 
@@ -1019,21 +1126,24 @@ You only need to run this if you are doing something not through the xarc tasks.
1019
1126
  task: () => generateServiceWorker(),
1020
1127
  },
1021
1128
  pwa: {
1022
- desc:
1023
- "PWA must have dist by running `clap build` first and then start the app server only.",
1129
+ desc: "PWA must have dist by running `clap build` first and then start the app server only.",
1024
1130
  task: ["build", "server"],
1025
1131
  },
1026
1132
 
1027
1133
  "generate-browsers-listrc": {
1028
- desc:
1029
- "Generate .browserlistrc config file, it's used by Browserlist for AutoPrefixer/PostCSS",
1134
+ desc: "Generate .browserlistrc config file, it's used by Browserlist for AutoPrefixer/PostCSS",
1030
1135
  task: () => generateBrowsersListRc(),
1031
1136
  },
1032
1137
  };
1033
1138
 
1034
1139
  tasks = Object.assign(tasks, {
1035
1140
  ".clean.lib": () =>
1036
- shell.rm("-rf", AppMode.lib.client, AppMode.lib.server, AppMode.savedFile),
1141
+ shell.rm(
1142
+ "-rf",
1143
+ AppMode.lib.client,
1144
+ AppMode.lib.server,
1145
+ AppMode.savedFile
1146
+ ),
1037
1147
  ".build-lib:app-mode": () =>
1038
1148
  Fs.writeFileSync(
1039
1149
  Path.resolve(xarcCwd, AppMode.savedFile),
@@ -1046,7 +1156,9 @@ You only need to run this if you are doing something not through the xarc tasks.
1046
1156
  },
1047
1157
  });
1048
1158
 
1049
- if (Fs.existsSync(Path.resolve(xarcCwd, AppMode.src.client, "dll.config.js"))) {
1159
+ if (
1160
+ Fs.existsSync(Path.resolve(xarcCwd, AppMode.src.client, "dll.config.js"))
1161
+ ) {
1050
1162
  Object.assign(tasks, {
1051
1163
  "build-dist-dll": {
1052
1164
  dep: [".mk-dll-dir", ".production-env"],
@@ -1066,7 +1178,8 @@ You only need to run this if you are doing something not through the xarc tasks.
1066
1178
  Object.assign(tasks, eslintTasks(xarcOptions, xrun2));
1067
1179
 
1068
1180
  if (xarcOptions.options.karma) {
1069
- const noSingleRun = process.argv.indexOf("--no-single-run") >= 0 ? "--no-single-run" : "";
1181
+ const noSingleRun =
1182
+ process.argv.indexOf("--no-single-run") >= 0 ? "--no-single-run" : "";
1070
1183
 
1071
1184
  Object.assign(tasks, {
1072
1185
  ".karma.test-frontend": {
@@ -1154,7 +1267,8 @@ You only need to run this if you are doing something not through the xarc tasks.
1154
1267
  dir: Path.resolve(xarcCwd, AppMode.src.dir),
1155
1268
  grouping: true,
1156
1269
  includeDir: true,
1157
- filterDir: (d) => (jestTestDirectories.indexOf(d) >= 0 ? "dirs" : "otherDirs"),
1270
+ filterDir: (d) =>
1271
+ jestTestDirectories.indexOf(d) >= 0 ? "dirs" : "otherDirs",
1158
1272
  filterExt: [".js", ".jsx", ".ts", ".tsx"],
1159
1273
  filter: (x) => x.indexOf(".spec.") > 0 || x.indexOf(".test.") > 0,
1160
1274
  });
@@ -1171,15 +1285,18 @@ You only need to run this if you are doing something not through the xarc tasks.
1171
1285
  const jestBinJs = require.resolve("jest/bin/jest");
1172
1286
  logger.info("Running jest unit tests");
1173
1287
 
1174
- const brk = this.argv.indexOf("--inspect-brk") >= 0 ? "--inspect-brk" : "";
1175
- const jestOpts = this.argv.slice(1).filter((x) => x !== "--inspect-brk");
1288
+ const brk =
1289
+ this.argv.indexOf("--inspect-brk") >= 0 ? "--inspect-brk" : "";
1290
+ const jestOpts = this.argv
1291
+ .slice(1)
1292
+ .filter((x) => x !== "--inspect-brk");
1176
1293
 
1177
1294
  return mkCmd(
1178
1295
  `~(tty)$node`,
1179
1296
  brk,
1180
1297
  jestBinJs,
1181
1298
  jestOpts.join(" "),
1182
- `--config ${xarcOptions.config.jest}/jest.config.js`
1299
+ `--config ${quote(jestConfig("jest.config.js"))}`
1183
1300
  );
1184
1301
  } else {
1185
1302
  return undefined;
@@ -1197,13 +1314,33 @@ You only need to run this if you are doing something not through the xarc tasks.
1197
1314
 
1198
1315
  if (xarcOptions.options.mocha) {
1199
1316
  Object.assign(tasks, {
1317
+ mocha: {
1318
+ desc: "Run mocha tests (--inspect-brk to start debugger)",
1319
+ task() {
1320
+ return `.mocha.test-frontend-cov ${this.argv.slice(1).join(" ")}`;
1321
+ },
1322
+ },
1323
+ ".mocha.test-frontend-cov"() {
1324
+ const brk =
1325
+ this.argv.indexOf("--inspect-brk") >= 0 ? "--inspect-brk" : "";
1326
+ const mochaOpts = this.argv
1327
+ .slice(1)
1328
+ .filter((x) => x !== "--inspect-brk");
1329
+ return mkCmd(
1330
+ `~$nyc --all`,
1331
+ `--reporter=text --reporter=lcov node_modules/mocha/bin/_mocha --config`,
1332
+ quote(mochaConfig(".mocharc.js")),
1333
+ brk,
1334
+ mochaOpts.join(" ")
1335
+ );
1336
+ },
1200
1337
  "test-server-cov": () => {
1201
1338
  if (shell.test("-d", "test/server")) {
1202
1339
  AppMode.setEnv(AppMode.src.dir);
1203
1340
  return mkCmd(
1204
1341
  `~$nyc --all --cwd src/server`,
1205
- `--reporter=text --reporter=lcov node_modules/mocha/bin/_mocha --opts`,
1206
- quote(mochaConfig("mocha.opts")),
1342
+ `--reporter=text --reporter=lcov node_modules/mocha/bin/_mocha --config`,
1343
+ quote(mochaConfig(".mocharc.js")),
1207
1344
  `test/server`
1208
1345
  );
1209
1346
  }
@@ -1213,7 +1350,11 @@ You only need to run this if you are doing something not through the xarc tasks.
1213
1350
  "test-server-dev": () => {
1214
1351
  if (shell.test("-d", "test/server")) {
1215
1352
  AppMode.setEnv(AppMode.src.dir);
1216
- return mkCmd(`~$mocha -c --opts`, quote(mochaConfig("mocha.opts")), `test/server`);
1353
+ return mkCmd(
1354
+ `~$mocha -c --config`,
1355
+ quote(mochaConfig(".mocharc.js")),
1356
+ `test/server`
1357
+ );
1217
1358
  }
1218
1359
  return undefined;
1219
1360
  },
@@ -1,5 +0,0 @@
1
- --require @xarc/app-dev/config/mocha/setup.js
2
- --reporter spec
3
- --recursive
4
- --ui bdd
5
- --require @babel/register
@@ -1,5 +0,0 @@
1
- --require @xarc/app-dev/config/mocha/setup.js
2
- --reporter spec
3
- --recursive
4
- --ui bdd
5
- --require @babel/register