forked from fuse-box/fuse-box
-
Notifications
You must be signed in to change notification settings - Fork 0
/
test.js
38 lines (32 loc) · 1 KB
/
test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
const { join } = require("path");
const { argv, env } = require("process");
const { FuseBox } = require("fuse-box");
const defaultTestFileMask = "*.test.ts";
const projectRoot = __dirname;
/*
* Definition of environment variables required to run tests in the node
* environment.
*/
env.DYNAMIC_IMPORTS_DISABLED = true;
env.FUSE_TEST_TIMEOUT = 5000;
env.FUSEBOX_DIST_ROOT = projectRoot;
env.FUSEBOX_VERSION = "2.4.0";
env.LOGGING = false;
env.PROJECT_NODE_MODULES = join(projectRoot, "node_modules");
env.SPARKY_LOG = false;
/*
* A --file flag can be used to override a default test mask.
*/
const maybeFileFlag = argv[2];
const fileFlag =
typeof maybeFileFlag === "string" && maybeFileFlag.match(/^--file=(.*)/);
const testFileMask = fileFlag === false ? defaultTestFileMask : fileFlag[1];
const fuse = FuseBox.init({
homeDir: "src",
target: "server@esnext",
log: false,
dynamicImportsEnabled: false,
output: ".fusebox/$name.js",
cache: false,
});
fuse.bundle("fusebox").test(`[**/${testFileMask}]`);