as-test 1.0.14 → 1.0.16
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/CHANGELOG.md +8 -0
- package/bin/commands/fuzz-core.js +1 -1
- package/bin/util.js +71 -15
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -23,7 +23,7 @@ export async function fuzz(configPath = DEFAULT_CONFIG_PATH, selectors = [], mod
|
|
|
23
23
|
const results = [];
|
|
24
24
|
for (const file of inputFiles) {
|
|
25
25
|
const buildStartedAt = Date.now();
|
|
26
|
-
await build(configPath, [file], modeName, { coverage: false }, { target: "bindings", args: ["--use", "AS_TEST_FUZZ=1"], kind: "fuzz" },
|
|
26
|
+
await build(configPath, [file], modeName, { coverage: false }, { target: "bindings", args: ["--use", "AS_TEST_FUZZ=1"], kind: "fuzz" }, loadedConfig);
|
|
27
27
|
const buildFinishedAt = Date.now();
|
|
28
28
|
const buildTime = buildFinishedAt - buildStartedAt;
|
|
29
29
|
results.push(await runFuzzTarget(file, activeConfig.outDir, duplicateBasenames, config, fuzzerSelectors, buildStartedAt, buildFinishedAt, buildTime, modeName));
|
package/bin/util.js
CHANGED
|
@@ -977,6 +977,70 @@ function outputOverridesField(raw, field) {
|
|
|
977
977
|
}
|
|
978
978
|
return typeof output.snapshots == "string" && output.snapshots.length > 0;
|
|
979
979
|
}
|
|
980
|
+
function mergeCoverageIgnoreOptions(base, override, raw) {
|
|
981
|
+
const merged = Object.assign(new CoverageIgnoreOptions(), base);
|
|
982
|
+
merged.labels = [...base.labels];
|
|
983
|
+
merged.names = [...base.names];
|
|
984
|
+
merged.locations = [...base.locations];
|
|
985
|
+
merged.snippets = [...base.snippets];
|
|
986
|
+
if ("labels" in raw)
|
|
987
|
+
merged.labels = [...override.labels];
|
|
988
|
+
if ("names" in raw)
|
|
989
|
+
merged.names = [...override.names];
|
|
990
|
+
if ("locations" in raw)
|
|
991
|
+
merged.locations = [...override.locations];
|
|
992
|
+
if ("snippets" in raw)
|
|
993
|
+
merged.snippets = [...override.snippets];
|
|
994
|
+
return merged;
|
|
995
|
+
}
|
|
996
|
+
function mergeCoverageConfig(base, override, raw) {
|
|
997
|
+
if (typeof raw == "boolean")
|
|
998
|
+
return override;
|
|
999
|
+
if (!raw || typeof raw != "object" || Array.isArray(raw))
|
|
1000
|
+
return cloneCoverageOptions(base);
|
|
1001
|
+
const mergedBase = typeof base == "boolean"
|
|
1002
|
+
? Object.assign(new CoverageOptions(), { enabled: base })
|
|
1003
|
+
: cloneCoverageOptions(base);
|
|
1004
|
+
const overrideOptions = typeof override == "boolean"
|
|
1005
|
+
? Object.assign(new CoverageOptions(), { enabled: override })
|
|
1006
|
+
: cloneCoverageOptions(override);
|
|
1007
|
+
const rawObject = raw;
|
|
1008
|
+
if ("enabled" in rawObject)
|
|
1009
|
+
mergedBase.enabled = overrideOptions.enabled;
|
|
1010
|
+
if ("includeSpecs" in rawObject)
|
|
1011
|
+
mergedBase.includeSpecs = overrideOptions.includeSpecs;
|
|
1012
|
+
if ("include" in rawObject)
|
|
1013
|
+
mergedBase.include = [...overrideOptions.include];
|
|
1014
|
+
if ("exclude" in rawObject)
|
|
1015
|
+
mergedBase.exclude = [...overrideOptions.exclude];
|
|
1016
|
+
if (rawObject.ignore && typeof rawObject.ignore == "object" && !Array.isArray(rawObject.ignore)) {
|
|
1017
|
+
mergedBase.ignore = mergeCoverageIgnoreOptions(mergedBase.ignore, overrideOptions.ignore, rawObject.ignore);
|
|
1018
|
+
}
|
|
1019
|
+
return mergedBase;
|
|
1020
|
+
}
|
|
1021
|
+
function mergeReporterConfigByRaw(base, override, raw) {
|
|
1022
|
+
if (typeof raw == "string")
|
|
1023
|
+
return override;
|
|
1024
|
+
if (!raw || typeof raw != "object" || Array.isArray(raw)) {
|
|
1025
|
+
return cloneReporterConfig(base);
|
|
1026
|
+
}
|
|
1027
|
+
const mergedBase = typeof base == "string"
|
|
1028
|
+
? new ReporterConfig()
|
|
1029
|
+
: cloneReporterConfig(base);
|
|
1030
|
+
const overrideConfig = typeof override == "string"
|
|
1031
|
+
? new ReporterConfig()
|
|
1032
|
+
: cloneReporterConfig(override);
|
|
1033
|
+
const rawObject = raw;
|
|
1034
|
+
if ("name" in rawObject)
|
|
1035
|
+
mergedBase.name = overrideConfig.name;
|
|
1036
|
+
if ("options" in rawObject)
|
|
1037
|
+
mergedBase.options = [...overrideConfig.options];
|
|
1038
|
+
if ("outDir" in rawObject)
|
|
1039
|
+
mergedBase.outDir = overrideConfig.outDir;
|
|
1040
|
+
if ("outFile" in rawObject)
|
|
1041
|
+
mergedBase.outFile = overrideConfig.outFile;
|
|
1042
|
+
return mergedBase;
|
|
1043
|
+
}
|
|
980
1044
|
function mergeBuildOptions(base, override, raw) {
|
|
981
1045
|
const merged = cloneBuildOptions(base);
|
|
982
1046
|
if ("cmd" in raw)
|
|
@@ -986,10 +1050,7 @@ function mergeBuildOptions(base, override, raw) {
|
|
|
986
1050
|
if ("target" in raw)
|
|
987
1051
|
merged.target = override.target;
|
|
988
1052
|
if ("env" in raw) {
|
|
989
|
-
merged.env = {
|
|
990
|
-
...merged.env,
|
|
991
|
-
...override.env,
|
|
992
|
-
};
|
|
1053
|
+
merged.env = { ...override.env };
|
|
993
1054
|
}
|
|
994
1055
|
return merged;
|
|
995
1056
|
}
|
|
@@ -1005,13 +1066,10 @@ function mergeRunOptions(base, override, raw) {
|
|
|
1005
1066
|
}
|
|
1006
1067
|
}
|
|
1007
1068
|
if ("reporter" in raw) {
|
|
1008
|
-
merged.reporter =
|
|
1069
|
+
merged.reporter = mergeReporterConfigByRaw(merged.reporter, override.reporter, raw.reporter);
|
|
1009
1070
|
}
|
|
1010
1071
|
if ("env" in raw) {
|
|
1011
|
-
merged.env = {
|
|
1012
|
-
...merged.env,
|
|
1013
|
-
...override.env,
|
|
1014
|
-
};
|
|
1072
|
+
merged.env = { ...override.env };
|
|
1015
1073
|
}
|
|
1016
1074
|
return merged;
|
|
1017
1075
|
}
|
|
@@ -1052,13 +1110,11 @@ function mergeRootConfig(base, override) {
|
|
|
1052
1110
|
}
|
|
1053
1111
|
if ("config" in raw)
|
|
1054
1112
|
merged.config = override.config;
|
|
1055
|
-
if ("coverage" in raw)
|
|
1056
|
-
merged.coverage =
|
|
1113
|
+
if ("coverage" in raw) {
|
|
1114
|
+
merged.coverage = mergeCoverageConfig(merged.coverage, override.coverage, raw.coverage);
|
|
1115
|
+
}
|
|
1057
1116
|
if ("env" in raw) {
|
|
1058
|
-
merged.env = {
|
|
1059
|
-
...merged.env,
|
|
1060
|
-
...override.env,
|
|
1061
|
-
};
|
|
1117
|
+
merged.env = { ...override.env };
|
|
1062
1118
|
}
|
|
1063
1119
|
if (raw.buildOptions && typeof raw.buildOptions == "object" && !Array.isArray(raw.buildOptions)) {
|
|
1064
1120
|
merged.buildOptions = mergeBuildOptions(merged.buildOptions, override.buildOptions, raw.buildOptions);
|