@wp-tester/config 0.1.0 → 0.1.2
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.
- package/dist/config-file.d.ts +6 -0
- package/dist/config-file.d.ts.map +1 -0
- package/dist/config-file.js +44 -0
- package/dist/config-file.js.map +1 -0
- package/dist/config.d.ts +0 -56
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +23 -340
- package/dist/config.js.map +1 -1
- package/dist/environment-resolver.d.ts +26 -0
- package/dist/environment-resolver.d.ts.map +1 -0
- package/dist/environment-resolver.js +131 -0
- package/dist/environment-resolver.js.map +1 -0
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/options/phpunit-detect.d.ts +13 -26
- package/dist/options/phpunit-detect.d.ts.map +1 -1
- package/dist/options/phpunit-detect.js +51 -32
- package/dist/options/phpunit-detect.js.map +1 -1
- package/dist/options/phpunit.d.ts.map +1 -1
- package/dist/options/phpunit.js +7 -11
- package/dist/options/phpunit.js.map +1 -1
- package/dist/options/project-root.js +1 -1
- package/dist/options/project-root.js.map +1 -1
- package/dist/options/project-type.js +1 -1
- package/dist/options/project-type.js.map +1 -1
- package/dist/options/smoke-tests.js +1 -1
- package/dist/options/smoke-tests.js.map +1 -1
- package/dist/path-mappers.d.ts +7 -7
- package/dist/path-mappers.d.ts.map +1 -1
- package/dist/path-mappers.js +10 -10
- package/dist/path-mappers.js.map +1 -1
- package/dist/path-utils.d.ts +62 -0
- package/dist/path-utils.d.ts.map +1 -0
- package/dist/path-utils.js +141 -0
- package/dist/path-utils.js.map +1 -0
- package/dist/resolved-types.d.ts +22 -7
- package/dist/resolved-types.d.ts.map +1 -1
- package/dist/test-resolver.d.ts +18 -0
- package/dist/test-resolver.d.ts.map +1 -0
- package/dist/test-resolver.js +107 -0
- package/dist/test-resolver.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/phpunit.d.ts +0 -12
- package/dist/phpunit.d.ts.map +0 -1
- package/dist/phpunit.js +0 -58
- package/dist/phpunit.js.map +0 -1
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { readFile } from "fs/promises";
|
|
2
|
+
import { resolveAbsolute } from "./path-utils.js";
|
|
3
|
+
/**
|
|
4
|
+
* Normalize a version spec (string or array) to an array of versions.
|
|
5
|
+
* @param spec - Version specification (single string or array)
|
|
6
|
+
* @returns Array of version strings
|
|
7
|
+
*/
|
|
8
|
+
function normalizeVersionSpec(spec) {
|
|
9
|
+
if (!spec) {
|
|
10
|
+
return [];
|
|
11
|
+
}
|
|
12
|
+
return Array.isArray(spec) ? spec : [spec];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Generate a name for an expanded environment based on the original name
|
|
16
|
+
* and the specific PHP/WP versions.
|
|
17
|
+
* @param baseName - Original environment name (if any)
|
|
18
|
+
* @param phpVersion - PHP version for this combination (only if from matrix)
|
|
19
|
+
* @param wpVersion - WordPress version for this combination (only if from matrix)
|
|
20
|
+
* @param phpIsFromMatrix - Whether PHP version is from matrix expansion (not blueprint)
|
|
21
|
+
* @param wpIsFromMatrix - Whether WP version is from matrix expansion (not blueprint)
|
|
22
|
+
* @param isMatrix - Whether this is part of a matrix (multiple combinations)
|
|
23
|
+
* @returns Generated environment name
|
|
24
|
+
*/
|
|
25
|
+
function generateExpandedName(baseName, phpVersion, wpVersion, phpIsFromMatrix, wpIsFromMatrix, isMatrix) {
|
|
26
|
+
// If not a matrix expansion, keep the original name
|
|
27
|
+
if (!isMatrix) {
|
|
28
|
+
return baseName;
|
|
29
|
+
}
|
|
30
|
+
// Build version suffix - only include versions that are from the matrix
|
|
31
|
+
const parts = [];
|
|
32
|
+
if (phpVersion && phpIsFromMatrix) {
|
|
33
|
+
parts.push(`PHP ${phpVersion}`);
|
|
34
|
+
}
|
|
35
|
+
if (wpVersion && wpIsFromMatrix) {
|
|
36
|
+
parts.push(`WP ${wpVersion}`);
|
|
37
|
+
}
|
|
38
|
+
if (parts.length === 0) {
|
|
39
|
+
return baseName;
|
|
40
|
+
}
|
|
41
|
+
const versionSuffix = parts.join(", ");
|
|
42
|
+
return baseName ? `${baseName} (${versionSuffix})` : versionSuffix;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Expand environments with version arrays into multiple environments,
|
|
46
|
+
* one for each combination of PHP and WP versions.
|
|
47
|
+
*
|
|
48
|
+
* Rules:
|
|
49
|
+
* - If blueprint.preferredVersions.php is set, it overrides env.php (no matrix for PHP)
|
|
50
|
+
* - If blueprint.preferredVersions.wp is set, it overrides env.wp (no matrix for WP)
|
|
51
|
+
* - When arrays are provided for both php and wp, creates a full matrix of combinations
|
|
52
|
+
*
|
|
53
|
+
* @param environments - Original environments array
|
|
54
|
+
* @param projectDir - Project directory for resolving blueprint paths
|
|
55
|
+
* @returns Expanded environments array
|
|
56
|
+
*/
|
|
57
|
+
export async function expandEnvironments(environments, projectDir) {
|
|
58
|
+
const expanded = [];
|
|
59
|
+
for (const env of environments) {
|
|
60
|
+
// Load blueprint if it's a string path (needed to check preferredVersions)
|
|
61
|
+
// If no blueprint is provided, use an empty object (defaults will be applied later)
|
|
62
|
+
let blueprint;
|
|
63
|
+
if (!env.blueprint) {
|
|
64
|
+
blueprint = {};
|
|
65
|
+
}
|
|
66
|
+
else if (typeof env.blueprint === "string") {
|
|
67
|
+
const blueprintPath = resolveAbsolute(env.blueprint, projectDir);
|
|
68
|
+
const blueprintContent = await readFile(blueprintPath, "utf-8");
|
|
69
|
+
blueprint = JSON.parse(blueprintContent);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
blueprint = env.blueprint;
|
|
73
|
+
}
|
|
74
|
+
// Determine PHP versions to use
|
|
75
|
+
// Blueprint preferredVersions.php overrides environment-level php
|
|
76
|
+
// However, "latest" is treated as unspecified, allowing matrix expansion
|
|
77
|
+
const blueprintPhp = blueprint.preferredVersions?.php;
|
|
78
|
+
let phpVersions;
|
|
79
|
+
let phpIsFromMatrix;
|
|
80
|
+
if (blueprintPhp && blueprintPhp !== "latest") {
|
|
81
|
+
// Blueprint takes precedence - use only the blueprint version
|
|
82
|
+
phpVersions = [blueprintPhp];
|
|
83
|
+
phpIsFromMatrix = false; // Not from matrix, from blueprint
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
// Use environment-level versions
|
|
87
|
+
phpVersions = normalizeVersionSpec(env.php);
|
|
88
|
+
phpIsFromMatrix = true; // From matrix (env-level config)
|
|
89
|
+
}
|
|
90
|
+
// Determine WP versions to use
|
|
91
|
+
// Blueprint preferredVersions.wp overrides environment-level wp
|
|
92
|
+
// However, "latest" is treated as unspecified, allowing matrix expansion
|
|
93
|
+
const blueprintWp = blueprint.preferredVersions?.wp;
|
|
94
|
+
let wpVersions;
|
|
95
|
+
let wpIsFromMatrix;
|
|
96
|
+
if (blueprintWp && blueprintWp !== "latest") {
|
|
97
|
+
// Blueprint takes precedence - use only the blueprint version
|
|
98
|
+
wpVersions = [blueprintWp];
|
|
99
|
+
wpIsFromMatrix = false; // Not from matrix, from blueprint
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
// Use environment-level versions
|
|
103
|
+
wpVersions = normalizeVersionSpec(env.wp);
|
|
104
|
+
wpIsFromMatrix = true; // From matrix (env-level config)
|
|
105
|
+
}
|
|
106
|
+
// If no versions specified at either level, create a single environment
|
|
107
|
+
if (phpVersions.length === 0 && wpVersions.length === 0) {
|
|
108
|
+
expanded.push({ ...env });
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
// Ensure at least one version for each dimension (use empty string as placeholder for "not specified")
|
|
112
|
+
const phpList = phpVersions.length > 0 ? phpVersions : [""];
|
|
113
|
+
const wpList = wpVersions.length > 0 ? wpVersions : [""];
|
|
114
|
+
// Determine if this is a matrix (multiple combinations)
|
|
115
|
+
const isMatrix = phpList.length > 1 || wpList.length > 1;
|
|
116
|
+
// Create combinations
|
|
117
|
+
for (const phpVersion of phpList) {
|
|
118
|
+
for (const wpVersion of wpList) {
|
|
119
|
+
const expandedEnv = {
|
|
120
|
+
...env,
|
|
121
|
+
name: generateExpandedName(env.name, phpVersion || undefined, wpVersion || undefined, phpIsFromMatrix, wpIsFromMatrix, isMatrix),
|
|
122
|
+
_phpVersion: phpVersion || undefined,
|
|
123
|
+
_wpVersion: wpVersion || undefined,
|
|
124
|
+
};
|
|
125
|
+
expanded.push(expandedEnv);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
return expanded;
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=environment-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment-resolver.js","sourceRoot":"","sources":["../src/environment-resolver.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
export type { WPTesterConfig, EnvironmentVariables, Environment, Tests, PHPUnitConfig, TestType, Reporters, BaseReporterOptions, DefaultReporterOptions, Mount, Blueprint, JsonReporterOptions, WatchConfig, } from "./types.js";
|
|
2
|
-
export type { ResolvedEnvironment, ResolvedWPTesterConfig, ResolvedPHPUnitConfig, ResolvedTests, ResolvedBlueprint, ResolvedReporters, } from './resolved-types.js';
|
|
3
|
-
export {
|
|
2
|
+
export type { ResolvedEnvironment, ResolvedWPTesterConfig, ResolvedPHPUnitConfig, ResolvedTests, ResolvedBlueprint, ResolvedReporters, ResolvedPath, } from './resolved-types.js';
|
|
3
|
+
export { resolveConfig, } from "./config.js";
|
|
4
|
+
export { readConfigFile, writeConfigFile, getDefaultConfig, isConfigWritable, } from "./config-file.js";
|
|
5
|
+
export { configPath, getSchemaPath, getProjectDir, getConfigDir, getConfigPath, normalizeConfigPath, resolveAbsolute, getWorkingDirectory, toResolvedPath, } from "./path-utils.js";
|
|
6
|
+
export { resolvePhpunitArgs, resolveTests, } from "./test-resolver.js";
|
|
7
|
+
export { expandEnvironments, type ExpandedEnvironment, } from "./environment-resolver.js";
|
|
4
8
|
export { getProjectRootMount } from './auto-mount.js';
|
|
5
9
|
export { hostToVfs, vfsToHost } from './path-mappers.js';
|
|
6
10
|
export type { ProjectType } from './options/project-type-detect.js';
|
|
7
11
|
export { optionNames, optionMap, setupOptions, type OptionName, type ConfigOption, type ConfigOptionContext } from './options/index.js';
|
|
8
12
|
export { smokeTestsOption } from './options/smoke-tests.js';
|
|
9
13
|
export { phpunitOption } from './options/phpunit.js';
|
|
10
|
-
export { findPhpUnitConfig, findPhpUnitExecutable,
|
|
14
|
+
export { findPhpUnitConfig, findPhpUnitExecutable, parseBootstrapPath } from './options/phpunit-detect.js';
|
|
11
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,WAAW,EACX,KAAK,EACL,aAAa,EACb,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,sBAAsB,EACtB,KAAK,EACL,SAAS,EACT,mBAAmB,EACnB,WAAW,GACZ,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,WAAW,EACX,KAAK,EACL,aAAa,EACb,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,sBAAsB,EACtB,KAAK,EACL,SAAS,EACT,mBAAmB,EACnB,WAAW,GACZ,MAAM,SAAS,CAAC;AAGjB,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,aAAa,GACd,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,aAAa,EACb,aAAa,EACb,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,kBAAkB,EAClB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,kBAAkB,EAClB,KAAK,mBAAmB,GACzB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAGjE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACrI,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
// Functions
|
|
2
|
-
export {
|
|
2
|
+
export { resolveConfig, } from "./config.js";
|
|
3
|
+
export { readConfigFile, writeConfigFile, getDefaultConfig, isConfigWritable, } from "./config-file.js";
|
|
4
|
+
export { configPath, getSchemaPath, getProjectDir, getConfigDir, getConfigPath, normalizeConfigPath, resolveAbsolute, getWorkingDirectory, toResolvedPath, } from "./path-utils.js";
|
|
5
|
+
export { resolvePhpunitArgs, resolveTests, } from "./test-resolver.js";
|
|
6
|
+
export { expandEnvironments, } from "./environment-resolver.js";
|
|
3
7
|
export { getProjectRootMount } from './auto-mount.js';
|
|
4
8
|
export { hostToVfs, vfsToHost } from './path-mappers.js';
|
|
5
9
|
// Options
|
|
6
10
|
export { optionNames, optionMap, setupOptions } from './options/index.js';
|
|
7
11
|
export { smokeTestsOption } from './options/smoke-tests.js';
|
|
8
12
|
export { phpunitOption } from './options/phpunit.js';
|
|
9
|
-
export { findPhpUnitConfig, findPhpUnitExecutable,
|
|
13
|
+
export { findPhpUnitConfig, findPhpUnitExecutable, parseBootstrapPath } from './options/phpunit-detect.js';
|
|
10
14
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA4BA,YAAY;AACZ,OAAO,EACL,aAAa,GACd,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,aAAa,EACb,aAAa,EACb,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,kBAAkB,EAClB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,kBAAkB,GAEnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGtD,UAAU;AACV,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAgE,MAAM,iBAAiB,CAAC;AACrI,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,30 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Detected PHPUnit configuration
|
|
3
|
-
*/
|
|
4
|
-
export interface DetectedPHPUnitConfig {
|
|
5
|
-
/**
|
|
6
|
-
* Path to PHPUnit executable (relative to project root)
|
|
7
|
-
*/
|
|
8
|
-
phpunitPath: string;
|
|
9
|
-
/**
|
|
10
|
-
* Path to PHPUnit configuration file (relative to project root)
|
|
11
|
-
*/
|
|
12
|
-
configPath: string;
|
|
13
|
-
/**
|
|
14
|
-
* Path to PHPUnit bootstrap file (relative to project root)
|
|
15
|
-
* Optional - if not provided, only the custom wp-tester bootstrap will be used
|
|
16
|
-
*/
|
|
17
|
-
bootstrapPath?: string;
|
|
18
|
-
}
|
|
19
1
|
/**
|
|
20
2
|
* Find the PHPUnit config file (phpunit.xml or phpunit.xml.dist)
|
|
21
3
|
*/
|
|
22
4
|
export declare function findPhpUnitConfig(basePath: string): Promise<string | null>;
|
|
23
|
-
/**
|
|
24
|
-
* Find the PHPUnit bootstrap file
|
|
25
|
-
* @param basePath
|
|
26
|
-
*/
|
|
27
|
-
export declare function findPhpUnitBootstrap(basePath: string): Promise<string | null>;
|
|
28
5
|
/**
|
|
29
6
|
* Find the PHPUnit executable path
|
|
30
7
|
* @param basePath
|
|
@@ -36,8 +13,18 @@ export declare function findPhpUnitExecutable(basePath: string): Promise<string
|
|
|
36
13
|
*/
|
|
37
14
|
export declare function parseBootstrapPath(configPath: string): Promise<string | null>;
|
|
38
15
|
/**
|
|
39
|
-
*
|
|
40
|
-
* Returns
|
|
16
|
+
* Resolve the bootstrap file path for PHPUnit tests
|
|
17
|
+
* Returns the absolute path to the bootstrap file or null if not found
|
|
18
|
+
*
|
|
19
|
+
* Priority order:
|
|
20
|
+
* 1. Explicit bootstrapPath from user config
|
|
21
|
+
* 2. Parse from phpunit.xml config file
|
|
22
|
+
* 3. Fall back to tests/bootstrap.php
|
|
23
|
+
*
|
|
24
|
+
* @param configPath - Absolute path to PHPUnit config file
|
|
25
|
+
* @param projectDir - Absolute path to project directory
|
|
26
|
+
* @param explicitBootstrapPath - Optional explicit bootstrap path from user config (relative or absolute)
|
|
27
|
+
* @returns Absolute path to bootstrap file, or null if not found
|
|
41
28
|
*/
|
|
42
|
-
export declare function
|
|
29
|
+
export declare function resolveBootstrapPath(configPath: string, projectDir: string, explicitBootstrapPath?: string): Promise<string | null>;
|
|
43
30
|
//# sourceMappingURL=phpunit-detect.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phpunit-detect.d.ts","sourceRoot":"","sources":["../../src/options/phpunit-detect.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"phpunit-detect.d.ts","sourceRoot":"","sources":["../../src/options/phpunit-detect.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAchF;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAepF;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBnF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,qBAAqB,CAAC,EAAE,MAAM,GAC7B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuCxB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { access, readFile } from 'fs/promises';
|
|
2
|
-
import { join,
|
|
2
|
+
import { join, resolve, isAbsolute } from 'path';
|
|
3
3
|
/**
|
|
4
4
|
* Find the PHPUnit config file (phpunit.xml or phpunit.xml.dist)
|
|
5
5
|
*/
|
|
@@ -17,24 +17,6 @@ export async function findPhpUnitConfig(basePath) {
|
|
|
17
17
|
}
|
|
18
18
|
return null;
|
|
19
19
|
}
|
|
20
|
-
/**
|
|
21
|
-
* Find the PHPUnit bootstrap file
|
|
22
|
-
* @param basePath
|
|
23
|
-
*/
|
|
24
|
-
export async function findPhpUnitBootstrap(basePath) {
|
|
25
|
-
const bootstrapFiles = ['tests/bootstrap.php'];
|
|
26
|
-
for (const file of bootstrapFiles) {
|
|
27
|
-
const bootstrapPath = join(basePath, file);
|
|
28
|
-
try {
|
|
29
|
-
await access(bootstrapPath);
|
|
30
|
-
return bootstrapPath;
|
|
31
|
-
}
|
|
32
|
-
catch {
|
|
33
|
-
// File doesn't exist, continue checking
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return null;
|
|
37
|
-
}
|
|
38
20
|
/**
|
|
39
21
|
* Find the PHPUnit executable path
|
|
40
22
|
* @param basePath
|
|
@@ -74,21 +56,58 @@ export async function parseBootstrapPath(configPath) {
|
|
|
74
56
|
return null;
|
|
75
57
|
}
|
|
76
58
|
/**
|
|
77
|
-
*
|
|
78
|
-
* Returns
|
|
59
|
+
* Resolve the bootstrap file path for PHPUnit tests
|
|
60
|
+
* Returns the absolute path to the bootstrap file or null if not found
|
|
61
|
+
*
|
|
62
|
+
* Priority order:
|
|
63
|
+
* 1. Explicit bootstrapPath from user config
|
|
64
|
+
* 2. Parse from phpunit.xml config file
|
|
65
|
+
* 3. Fall back to tests/bootstrap.php
|
|
66
|
+
*
|
|
67
|
+
* @param configPath - Absolute path to PHPUnit config file
|
|
68
|
+
* @param projectDir - Absolute path to project directory
|
|
69
|
+
* @param explicitBootstrapPath - Optional explicit bootstrap path from user config (relative or absolute)
|
|
70
|
+
* @returns Absolute path to bootstrap file, or null if not found
|
|
79
71
|
*/
|
|
80
|
-
export async function
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
72
|
+
export async function resolveBootstrapPath(configPath, projectDir, explicitBootstrapPath) {
|
|
73
|
+
// Priority 1: Explicit bootstrapPath from config
|
|
74
|
+
if (explicitBootstrapPath) {
|
|
75
|
+
// Handle both relative and absolute paths
|
|
76
|
+
const absoluteBootstrapPath = isAbsolute(explicitBootstrapPath)
|
|
77
|
+
? explicitBootstrapPath
|
|
78
|
+
: resolve(projectDir, explicitBootstrapPath);
|
|
79
|
+
try {
|
|
80
|
+
await access(absoluteBootstrapPath);
|
|
81
|
+
return absoluteBootstrapPath;
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
// Explicit path doesn't exist, fall through to other priorities
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// Priority 2: Parse from phpunit.xml
|
|
88
|
+
const parsedBootstrap = await parseBootstrapPath(configPath);
|
|
89
|
+
if (parsedBootstrap) {
|
|
90
|
+
// Handle both relative and absolute paths
|
|
91
|
+
const absoluteBootstrapPath = isAbsolute(parsedBootstrap)
|
|
92
|
+
? parsedBootstrap
|
|
93
|
+
: resolve(projectDir, parsedBootstrap);
|
|
94
|
+
try {
|
|
95
|
+
await access(absoluteBootstrapPath);
|
|
96
|
+
return absoluteBootstrapPath;
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
// Parsed path doesn't exist, try fallback
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// Priority 3: Fallback to tests/bootstrap.php
|
|
103
|
+
const fallbackBootstrap = join(projectDir, 'tests/bootstrap.php');
|
|
104
|
+
try {
|
|
105
|
+
await access(fallbackBootstrap);
|
|
106
|
+
return fallbackBootstrap;
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
// No bootstrap found
|
|
85
110
|
return null;
|
|
86
111
|
}
|
|
87
|
-
const bootstrapPath = await findPhpUnitBootstrap(basePath);
|
|
88
|
-
return {
|
|
89
|
-
phpunitPath: relative(basePath, phpunitPath),
|
|
90
|
-
configPath: relative(basePath, configPath),
|
|
91
|
-
...(bootstrapPath && { bootstrapPath: relative(basePath, bootstrapPath) }),
|
|
92
|
-
};
|
|
93
112
|
}
|
|
94
113
|
//# sourceMappingURL=phpunit-detect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phpunit-detect.js","sourceRoot":"","sources":["../../src/options/phpunit-detect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"phpunit-detect.js","sourceRoot":"","sources":["../../src/options/phpunit-detect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phpunit.d.ts","sourceRoot":"","sources":["../../src/options/phpunit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"phpunit.d.ts","sourceRoot":"","sources":["../../src/options/phpunit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,UAAU,CAAC;AA+V9D;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC/D,OAAO,CAAC,cAAc,CAAC,CAsBzB"}
|
package/dist/options/phpunit.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as clack from "@clack/prompts";
|
|
2
|
-
import { getProjectDir } from "../
|
|
3
|
-
import { findPhpUnitConfig, findPhpUnitExecutable,
|
|
2
|
+
import { getProjectDir } from "../path-utils.js";
|
|
3
|
+
import { findPhpUnitConfig, findPhpUnitExecutable, } from "./phpunit-detect.js";
|
|
4
4
|
import { access } from "fs/promises";
|
|
5
5
|
import { join, relative } from "path";
|
|
6
6
|
/**
|
|
@@ -135,15 +135,13 @@ async function collectManualPHPUnitConfig(config, projectHostPath) {
|
|
|
135
135
|
/**
|
|
136
136
|
* Handle full detection (both config and executable found)
|
|
137
137
|
*/
|
|
138
|
-
async function handleFullDetection(config, projectHostPath, configFile, executable
|
|
138
|
+
async function handleFullDetection(config, projectHostPath, configFile, executable) {
|
|
139
139
|
// Convert to relative paths
|
|
140
140
|
const relativeConfig = relative(projectHostPath, configFile);
|
|
141
141
|
const relativeExecutable = relative(projectHostPath, executable);
|
|
142
|
-
const relativeBootstrap = bootstrap ? relative(projectHostPath, bootstrap) : null;
|
|
143
142
|
// Display detected configuration
|
|
144
143
|
const configNote = `PHPUnit executable: ${relativeExecutable}\n` +
|
|
145
|
-
`Config file: ${relativeConfig}
|
|
146
|
-
(relativeBootstrap ? `\nBootstrap file: ${relativeBootstrap}` : "");
|
|
144
|
+
`Config file: ${relativeConfig}`;
|
|
147
145
|
clack.note(configNote, "Detected PHPUnit Configuration");
|
|
148
146
|
// Ask user to confirm or customize
|
|
149
147
|
const action = await clack.select({
|
|
@@ -178,11 +176,11 @@ async function handleFullDetection(config, projectHostPath, configFile, executab
|
|
|
178
176
|
clack.cancel("Setup cancelled.");
|
|
179
177
|
process.exit(0);
|
|
180
178
|
}
|
|
179
|
+
// Bootstrap path will be detected and resolved later by resolveTests
|
|
181
180
|
finalConfig = {
|
|
182
181
|
phpunitPath: relativeExecutable,
|
|
183
182
|
configPath: relativeConfig,
|
|
184
183
|
testMode: testMode,
|
|
185
|
-
...(relativeBootstrap && { bootstrapPath: relativeBootstrap }),
|
|
186
184
|
};
|
|
187
185
|
}
|
|
188
186
|
return {
|
|
@@ -236,8 +234,7 @@ async function handlePartialDetection(config, projectHostPath, configFile) {
|
|
|
236
234
|
const executable = await findPhpUnitExecutable(projectHostPath);
|
|
237
235
|
if (executable) {
|
|
238
236
|
// Success! Now we have both config and executable
|
|
239
|
-
|
|
240
|
-
return handleFullDetection(config, projectHostPath, configFile, executable, bootstrap);
|
|
237
|
+
return handleFullDetection(config, projectHostPath, configFile, executable);
|
|
241
238
|
}
|
|
242
239
|
// Still not found, loop will continue
|
|
243
240
|
clack.log.error("PHPUnit executable still not found. Please install PHPUnit or specify a custom path.");
|
|
@@ -292,8 +289,7 @@ export async function phpunitOption(config, context) {
|
|
|
292
289
|
// Handle different detection states
|
|
293
290
|
if (configFile && executable) {
|
|
294
291
|
// Full detection - both found
|
|
295
|
-
|
|
296
|
-
return handleFullDetection(config, projectHostPath, configFile, executable, bootstrap);
|
|
292
|
+
return handleFullDetection(config, projectHostPath, configFile, executable);
|
|
297
293
|
}
|
|
298
294
|
else if (configFile && !executable) {
|
|
299
295
|
// Partial detection - config found but executable missing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phpunit.js","sourceRoot":"","sources":["../../src/options/phpunit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"phpunit.js","sourceRoot":"","sources":["../../src/options/phpunit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as clack from '@clack/prompts';
|
|
2
2
|
import * as path from 'path';
|
|
3
3
|
import * as fs from 'fs';
|
|
4
|
-
import { getWorkingDirectory } from '../
|
|
4
|
+
import { getWorkingDirectory } from '../path-utils.js';
|
|
5
5
|
export function validatePath(value) {
|
|
6
6
|
// Allow empty value - will be replaced with cwd
|
|
7
7
|
if (!value || value.trim().length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-root.js","sourceRoot":"","sources":["../../src/options/project-root.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"project-root.js","sourceRoot":"","sources":["../../src/options/project-root.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,UAAU,YAAY,CAAC,KAAyB;IACpD,gDAAgD;IAChD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QACzC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,KAAK,CAAC,CAAC;IAE/C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAsB;IAEtB,MAAM,GAAG,GAAG,mBAAmB,EAAE,CAAC;IAElC,4EAA4E;IAC5E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;QAChC,OAAO,EAAE,uEAAuE;QAChF,WAAW,EAAE,GAAG;QAChB,YAAY,EAAE,EAAE;QAChB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,wEAAwE;IACxE,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEvE,mDAAmD;IACnD,OAAO;QACL,GAAG,MAAM;QACT,eAAe,EAAE,SAAS;KAC3B,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-type.js","sourceRoot":"","sources":["../../src/options/project-type.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"project-type.js","sourceRoot":"","sources":["../../src/options/project-type.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAoB,MAAM,uBAAuB,CAAC;AAE5E;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAsB;IAEtB,yDAAyD;IACzD,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAE9C,sBAAsB;IACtB,MAAM,YAAY,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAExD,8DAA8D;IAC9D,MAAM,OAAO,GAAG,YAAY,KAAK,OAAO;QACtC,CAAC,CAAC,mEAAmE;QACrE,CAAC,CAAC,qBAAqB,YAAY,GAAG,CAAC;IAEzC,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;QACpC,OAAO;QACP,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,gBAAgB;IAChB,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,SAAS,GAAgB,YAAY,CAAC;IAE1C,sCAAsC;IACtC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YACtC,OAAO,EAAE,sBAAsB;YAC/B,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACpC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;gBAClC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;aACnC;SACF,CAAC,CAAC;QAEH,gBAAgB;QAChB,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,SAAS,GAAG,YAA2B,CAAC;IAC1C,CAAC;IAED,kDAAkD;IAClD,IAAI,cAAc,GAAuB,MAAM,CAAC,cAAc,CAAC;IAC/D,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;YAC/B,OAAO,EAAE,iDAAiD;YAC1D,WAAW,EAAE,YAAY;YACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBAClB,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBAClC,OAAO,iDAAiD,CAAC;gBAC3D,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC3B,OAAO,mGAAmG,CAAC;gBAC7G,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;SACF,CAAC,CAAC;QAEH,gBAAgB;QAChB,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,cAAc,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,+CAA+C;IAC/C,OAAO;QACL,GAAG,MAAM;QACT,WAAW,EAAE,SAAS;QACtB,GAAG,CAAC,cAAc,IAAI,EAAE,cAAc,EAAE,CAAC;KAC1C,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smoke-tests.js","sourceRoot":"","sources":["../../src/options/smoke-tests.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"smoke-tests.js","sourceRoot":"","sources":["../../src/options/smoke-tests.ts"],"names":[],"mappings":"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"}
|
package/dist/path-mappers.d.ts
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ResolvedPath } from "./resolved-types.js";
|
|
2
2
|
/**
|
|
3
3
|
* Maps a host filesystem path to its corresponding VFS path in the playground
|
|
4
4
|
*
|
|
5
5
|
* @param hostPath - Absolute path on the host filesystem
|
|
6
|
-
* @param
|
|
6
|
+
* @param projectPath - Resolved path with host and VFS mappings
|
|
7
7
|
* @returns Corresponding VFS path in the playground
|
|
8
8
|
*
|
|
9
9
|
* @example
|
|
10
|
-
* hostToVfs('/project/tests/bootstrap.php',
|
|
10
|
+
* hostToVfs('/project/tests/bootstrap.php', resolvedPath)
|
|
11
11
|
* // Returns: '/wordpress/wp-content/plugins/my-plugin/tests/bootstrap.php'
|
|
12
12
|
*/
|
|
13
|
-
export declare function hostToVfs(hostPath: string,
|
|
13
|
+
export declare function hostToVfs(hostPath: string, projectPath: ResolvedPath): string;
|
|
14
14
|
/**
|
|
15
15
|
* Maps a VFS path in the playground to its corresponding host filesystem path
|
|
16
16
|
*
|
|
17
17
|
* @param vfsPath - Path in the playground VFS
|
|
18
|
-
* @param
|
|
18
|
+
* @param projectPath - Resolved path with host and VFS mappings
|
|
19
19
|
* @returns Corresponding absolute path on the host filesystem
|
|
20
20
|
*
|
|
21
21
|
* @example
|
|
22
|
-
* vfsToHost('/wordpress/wp-content/plugins/my-plugin/tests/bootstrap.php',
|
|
22
|
+
* vfsToHost('/wordpress/wp-content/plugins/my-plugin/tests/bootstrap.php', resolvedPath)
|
|
23
23
|
* // Returns: '/project/tests/bootstrap.php'
|
|
24
24
|
*/
|
|
25
|
-
export declare function vfsToHost(vfsPath: string,
|
|
25
|
+
export declare function vfsToHost(vfsPath: string, projectPath: ResolvedPath): string;
|
|
26
26
|
//# sourceMappingURL=path-mappers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-mappers.d.ts","sourceRoot":"","sources":["../src/path-mappers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"path-mappers.d.ts","sourceRoot":"","sources":["../src/path-mappers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,GAAG,MAAM,CAG7E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,GAAG,MAAM,CAG5E"}
|