-
Notifications
You must be signed in to change notification settings - Fork 439
Expand file tree
/
Copy pathoptions.js
More file actions
77 lines (59 loc) · 2.73 KB
/
options.js
File metadata and controls
77 lines (59 loc) · 2.73 KB
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
// IMPORTANT: This file is used in both the node/setup environment and the browser/test environment
import { HIGHEST_API_VERSION } from '@lwc/shared';
// FIXME: Add jsdoc comments to each export explaining what it's used for
// --- Boolean test flags --- //
export const LEGACY_BROWSERS = Boolean(process.env.LEGACY_BROWSERS);
export const FORCE_NATIVE_SHADOW_MODE_FOR_TEST = Boolean(
process.env.FORCE_NATIVE_SHADOW_MODE_FOR_TEST
);
export const ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL = Boolean(
process.env.ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL
);
export const DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER = Boolean(
process.env.DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER
);
export const DISABLE_STATIC_CONTENT_OPTIMIZATION = Boolean(
process.env.DISABLE_STATIC_CONTENT_OPTIMIZATION
);
export const DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE = Boolean(
process.env.DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE
);
export const DISABLE_DETACHED_REHYDRATION = Boolean(process.env.DISABLE_DETACHED_REHYDRATION);
export const ENGINE_SERVER = Boolean(process.env.ENGINE_SERVER);
// --- Test config --- //
/**
* Integration tests default to synthetic shadow mode, while hydration tests default to native.
* This should be set to "native" or "synthetic" to override the default mode.
* @type {'native'|'synthetic'|undefined}
*/
// NOTE: NATIVE_SHADOW is not defined here because integration/hydration have different defaults
export const SHADOW_MODE_OVERRIDE = process.env.SHADOW_MODE_OVERRIDE;
export const API_VERSION = process.env.API_VERSION
? parseInt(process.env.API_VERSION, 10)
: HIGHEST_API_VERSION;
export const NODE_ENV_FOR_TEST = process.env.NODE_ENV_FOR_TEST || 'development';
/** Unique directory name that encodes the flags that the tests were executed with. */
export const COVERAGE_DIR_FOR_OPTIONS =
Object.entries({
API_VERSION,
DISABLE_STATIC_CONTENT_OPTIMIZATION,
SHADOW_MODE_OVERRIDE,
DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER,
ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL,
FORCE_NATIVE_SHADOW_MODE_FOR_TEST,
LEGACY_BROWSERS,
NODE_ENV_FOR_TEST,
DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE,
ENGINE_SERVER,
DISABLE_DETACHED_REHYDRATION,
})
.filter(([, val]) => val)
.map(([key, val]) => `${key}=${val}`)
.join('/') || 'no-options';
// --- CI config --- //
export const COVERAGE = Boolean(process.env.COVERAGE);
export const SAUCE_USERNAME = process.env.SAUCE_USERNAME;
export const SAUCE_ACCESS_KEY = process.env.SAUCE_ACCESS_KEY || process.env.SAUCE_KEY;
export const SAUCE_TUNNEL_ID = process.env.SAUCE_TUNNEL_ID;
export const IS_CI = Boolean(process.env.IS_CI);
export const GITHUB_RUN_ID = process.env.GITHUB_RUN_ID;