-
Notifications
You must be signed in to change notification settings - Fork 439
Expand file tree
/
Copy pathoptions.js
More file actions
78 lines (69 loc) · 2.58 KB
/
options.js
File metadata and controls
78 lines (69 loc) · 2.58 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
78
/*
* Copyright (c) 2024, Salesforce, Inc.
* All rights reserved.
* SPDX-License-Identifier: MIT
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
*/
'use strict';
const { HIGHEST_API_VERSION } = require('@lwc/shared');
// Helpful error. Remove after a few months.
if (process.env.NATIVE_SHADOW) {
throw new Error('NATIVE_SHADOW is deprecated. Use DISABLE_SYNTHETIC instead!');
}
const LEGACY_BROWSERS = Boolean(process.env.LEGACY_BROWSERS);
const DISABLE_SYNTHETIC = Boolean(process.env.DISABLE_SYNTHETIC);
const FORCE_NATIVE_SHADOW_MODE_FOR_TEST = Boolean(process.env.FORCE_NATIVE_SHADOW_MODE_FOR_TEST);
const ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL = Boolean(
process.env.ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL
);
const DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER = Boolean(
process.env.DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER
);
const DISABLE_STATIC_CONTENT_OPTIMIZATION = Boolean(
process.env.DISABLE_STATIC_CONTENT_OPTIMIZATION
);
const ENABLE_SYNTHETIC_SHADOW_IN_HYDRATION = Boolean(
process.env.ENABLE_SYNTHETIC_SHADOW_IN_HYDRATION
);
const NODE_ENV_FOR_TEST = process.env.NODE_ENV_FOR_TEST;
const API_VERSION = process.env.API_VERSION
? parseInt(process.env.API_VERSION, 10)
: HIGHEST_API_VERSION;
const DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE = Boolean(
process.env.DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE
);
const ENGINE_SERVER = Boolean(process.env.ENGINE_SERVER);
const baseOptions = {
API_VERSION,
DISABLE_STATIC_CONTENT_OPTIMIZATION,
DISABLE_SYNTHETIC,
DISABLE_SYNTHETIC_SHADOW_SUPPORT_IN_COMPILER,
ENABLE_ARIA_REFLECTION_GLOBAL_POLYFILL,
ENABLE_SYNTHETIC_SHADOW_IN_HYDRATION,
FORCE_NATIVE_SHADOW_MODE_FOR_TEST,
LEGACY_BROWSERS,
NODE_ENV_FOR_TEST,
DISABLE_NATIVE_CUSTOM_ELEMENT_LIFECYCLE,
ENGINE_SERVER,
};
/** Unique directory name that encodes the flags that the tests were executed with. */
const COVERAGE_DIR_FOR_OPTIONS =
Object.entries(baseOptions)
.filter(([, val]) => val)
.map(([key, val]) => `${key}=${val}`)
.join('/') || 'no-options';
module.exports = {
// Test configuration
...baseOptions,
GREP: process.env.GREP,
COVERAGE: Boolean(process.env.COVERAGE),
COVERAGE_DIR_FOR_OPTIONS,
// Sauce labs
SAUCE_REGION: process.env.SAUCE_REGION || 'us',
SAUCE_USERNAME: process.env.SAUCE_USERNAME,
SAUCE_ACCESS_KEY: process.env.SAUCE_ACCESS_KEY || process.env.SAUCE_KEY,
SAUCE_TUNNEL_ID: process.env.SAUCE_TUNNEL_ID,
// CI
IS_CI: Boolean(process.env.CI),
GITHUB_RUN_ID: process.env.GITHUB_RUN_ID,
};